@forklaunch/core 0.2.6 → 0.2.7
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/lib/jest.config.d.ts.map +1 -1
- package/lib/jest.config.js +0 -2
- package/lib/src/http/guards/isForklaunchRouter.d.ts +4 -0
- package/lib/src/http/guards/isForklaunchRouter.d.ts.map +1 -0
- package/lib/src/http/guards/isForklaunchRouter.js +7 -0
- package/lib/src/http/guards/isTypedHandler.d.ts +1 -1
- package/lib/src/http/guards/isTypedHandler.d.ts.map +1 -1
- package/lib/src/http/handlers/typedAuthHandler.d.ts +5 -0
- package/lib/src/http/handlers/typedAuthHandler.d.ts.map +1 -0
- package/lib/src/http/handlers/typedAuthHandler.js +3 -0
- package/lib/src/http/handlers/typedHandler.d.ts +0 -6
- package/lib/src/http/handlers/typedHandler.d.ts.map +1 -1
- package/lib/src/http/index.d.ts +2 -0
- package/lib/src/http/index.d.ts.map +1 -1
- package/lib/src/http/index.js +2 -0
- package/lib/src/http/middleware/request/auth.middleware.d.ts +3 -18
- package/lib/src/http/middleware/request/auth.middleware.d.ts.map +1 -1
- package/lib/src/http/middleware/request/auth.middleware.js +104 -69
- package/lib/src/http/openApiV3Generator/openApiV3Generator.js +1 -1
- package/lib/src/http/router/expressLikeRouter.d.ts.map +1 -1
- package/lib/src/http/router/expressLikeRouter.js +4 -23
- package/lib/src/http/types/apiDefinition.types.d.ts +36 -13
- package/lib/src/http/types/apiDefinition.types.d.ts.map +1 -1
- package/lib/src/http/types/contractDetails.types.d.ts +53 -11
- package/lib/src/http/types/contractDetails.types.d.ts.map +1 -1
- package/lib/src/http/types/expressLikeRouter.types.d.ts +1 -1
- package/lib/src/http/types/expressLikeRouter.types.d.ts.map +1 -1
- package/lib/src/http/types/typedHandler.types.d.ts +10 -0
- package/lib/src/http/types/typedHandler.types.d.ts.map +1 -0
- package/lib/tests/expressLikeRouterInstantiation.test.js +47 -2
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +15 -15
- package/LICENSE +0 -21
- package/lib/dist/cache/index.d.ts +0 -4
- package/lib/dist/cache/index.d.ts.map +0 -1
- package/lib/dist/cache/index.js +0 -3
- package/lib/dist/cache/interfaces/ttlCache.interface.d.ts +0 -2
- package/lib/dist/cache/interfaces/ttlCache.interface.d.ts.map +0 -1
- package/lib/dist/cache/redisTtlCache.d.ts +0 -353
- package/lib/dist/cache/redisTtlCache.d.ts.map +0 -1
- package/lib/dist/cache/redisTtlCache.js +0 -98
- package/lib/dist/cache/types/ttlCacheRecord.types.d.ts +0 -2
- package/lib/dist/cache/types/ttlCacheRecord.types.d.ts.map +0 -1
- package/lib/dist/cache/types/ttlCacheRecord.types.js +0 -1
- package/lib/dist/controllers/index.d.ts +0 -2
- package/lib/dist/controllers/index.d.ts.map +0 -1
- package/lib/dist/controllers/index.js +0 -1
- package/lib/dist/controllers/interfaces/controller.interface.d.ts +0 -2
- package/lib/dist/controllers/interfaces/controller.interface.d.ts.map +0 -1
- package/lib/dist/controllers/interfaces/controller.interface.js +0 -1
- package/lib/dist/database/index.d.ts +0 -2
- package/lib/dist/database/index.d.ts.map +0 -1
- package/lib/dist/database/index.js +0 -1
- package/lib/dist/database/mikro/models/entities/base.entity.d.ts +0 -26
- package/lib/dist/database/mikro/models/entities/base.entity.d.ts.map +0 -1
- package/lib/dist/database/mikro/models/entities/base.entity.js +0 -46
- package/lib/dist/entityMapper/index.d.ts +0 -3
- package/lib/dist/entityMapper/index.d.ts.map +0 -1
- package/lib/dist/entityMapper/index.js +0 -2
- package/lib/dist/entityMapper/interfaces/entityMapper.interface.d.ts +0 -2
- package/lib/dist/entityMapper/interfaces/entityMapper.interface.d.ts.map +0 -1
- package/lib/dist/entityMapper/interfaces/entityMapper.interface.js +0 -1
- package/lib/dist/entityMapper/models/baseEntityMapper.model.d.ts +0 -63
- package/lib/dist/entityMapper/models/baseEntityMapper.model.d.ts.map +0 -1
- package/lib/dist/entityMapper/models/baseEntityMapper.model.js +0 -75
- package/lib/dist/entityMapper/models/requestEntityMapper.model.d.ts +0 -58
- package/lib/dist/entityMapper/models/requestEntityMapper.model.d.ts.map +0 -1
- package/lib/dist/entityMapper/models/requestEntityMapper.model.js +0 -70
- package/lib/dist/entityMapper/models/responseEntityMapper.model.d.ts +0 -56
- package/lib/dist/entityMapper/models/responseEntityMapper.model.d.ts.map +0 -1
- package/lib/dist/entityMapper/models/responseEntityMapper.model.js +0 -65
- package/lib/dist/entityMapper/types/entityMapper.types.d.ts +0 -2
- package/lib/dist/entityMapper/types/entityMapper.types.d.ts.map +0 -1
- package/lib/dist/entityMapper/types/entityMapper.types.js +0 -1
- package/lib/dist/http/guards/isHttpContractDetails.d.ts +0 -5
- package/lib/dist/http/guards/isHttpContractDetails.d.ts.map +0 -1
- package/lib/dist/http/guards/isHttpContractDetails.js +0 -6
- package/lib/dist/http/guards/isResponseShape.d.ts +0 -2
- package/lib/dist/http/guards/isResponseShape.d.ts.map +0 -1
- package/lib/dist/http/guards/isResponseShape.js +0 -7
- package/lib/dist/http/index.d.ts +0 -6
- package/lib/dist/http/index.d.ts.map +0 -1
- package/lib/dist/http/index.js +0 -5
- package/lib/dist/http/interfaces/expressLikeApplication.interface.d.ts +0 -12
- package/lib/dist/http/interfaces/expressLikeApplication.interface.d.ts.map +0 -1
- package/lib/dist/http/interfaces/expressLikeApplication.interface.js +0 -14
- package/lib/dist/http/interfaces/expressLikeRouter.interface.d.ts +0 -103
- package/lib/dist/http/interfaces/expressLikeRouter.interface.d.ts.map +0 -1
- package/lib/dist/http/interfaces/expressLikeRouter.interface.js +0 -336
- package/lib/dist/http/interfaces/index.d.ts +0 -3
- package/lib/dist/http/interfaces/index.d.ts.map +0 -1
- package/lib/dist/http/interfaces/index.js +0 -2
- package/lib/dist/http/middleware/index.d.ts +0 -3
- package/lib/dist/http/middleware/index.d.ts.map +0 -1
- package/lib/dist/http/middleware/index.js +0 -2
- package/lib/dist/http/middleware/request.middleware.d.ts +0 -69
- package/lib/dist/http/middleware/request.middleware.d.ts.map +0 -1
- package/lib/dist/http/middleware/request.middleware.js +0 -210
- package/lib/dist/http/middleware/response.middleware.d.ts +0 -27
- package/lib/dist/http/middleware/response.middleware.d.ts.map +0 -1
- package/lib/dist/http/middleware/response.middleware.js +0 -52
- package/lib/dist/http/openApiV3Generator/index.d.ts +0 -2
- package/lib/dist/http/openApiV3Generator/index.d.ts.map +0 -1
- package/lib/dist/http/openApiV3Generator/index.js +0 -1
- package/lib/dist/http/openApiV3Generator/openApiV3Generator.d.ts +0 -11
- package/lib/dist/http/openApiV3Generator/openApiV3Generator.d.ts.map +0 -1
- package/lib/dist/http/openApiV3Generator/openApiV3Generator.js +0 -167
- package/lib/dist/http/types/apiDefinition.types.d.ts +0 -2
- package/lib/dist/http/types/apiDefinition.types.d.ts.map +0 -1
- package/lib/dist/http/types/apiDefinition.types.js +0 -1
- package/lib/dist/http/types/contractDetails.types.d.ts +0 -2
- package/lib/dist/http/types/contractDetails.types.d.ts.map +0 -1
- package/lib/dist/http/types/contractDetails.types.js +0 -1
- package/lib/dist/http/types/index.d.ts +0 -4
- package/lib/dist/http/types/index.d.ts.map +0 -1
- package/lib/dist/http/types/index.js +0 -3
- package/lib/dist/http/types/router.types.d.ts +0 -2
- package/lib/dist/http/types/router.types.d.ts.map +0 -1
- package/lib/dist/http/types/router.types.js +0 -1
- package/lib/dist/http/utils/enrichExpressLikeSend.d.ts +0 -28
- package/lib/dist/http/utils/enrichExpressLikeSend.d.ts.map +0 -1
- package/lib/dist/http/utils/enrichExpressLikeSend.js +0 -50
- package/lib/dist/http/utils/httpStatusCodes.d.ts +0 -986
- package/lib/dist/http/utils/httpStatusCodes.d.ts.map +0 -1
- package/lib/dist/http/utils/httpStatusCodes.js +0 -1039
- package/lib/dist/http/utils/index.d.ts +0 -3
- package/lib/dist/http/utils/index.d.ts.map +0 -1
- package/lib/dist/http/utils/index.js +0 -2
- package/lib/dist/index.d.ts +0 -7
- package/lib/dist/index.d.ts.map +0 -1
- package/lib/dist/index.js +0 -6
- package/lib/dist/jest.config.d.ts +0 -15
- package/lib/dist/jest.config.d.ts.map +0 -1
- package/lib/dist/jest.config.js +0 -21
- package/lib/dist/lib/index.d.ts +0 -7
- package/lib/dist/lib/index.d.ts.map +0 -1
- package/lib/dist/lib/index.js +0 -6
- package/lib/dist/lib/jest.config.d.ts +0 -15
- package/lib/dist/lib/jest.config.d.ts.map +0 -1
- package/lib/dist/lib/jest.config.js +0 -21
- package/lib/dist/lib/src/cache/index.d.ts +0 -4
- package/lib/dist/lib/src/cache/index.d.ts.map +0 -1
- package/lib/dist/lib/src/cache/index.js +0 -3
- package/lib/dist/lib/src/cache/interfaces/ttlCache.interface.d.ts +0 -2
- package/lib/dist/lib/src/cache/interfaces/ttlCache.interface.d.ts.map +0 -1
- package/lib/dist/lib/src/cache/interfaces/ttlCache.interface.js +0 -1
- package/lib/dist/lib/src/cache/redisTtlCache.d.ts +0 -353
- package/lib/dist/lib/src/cache/redisTtlCache.d.ts.map +0 -1
- package/lib/dist/lib/src/cache/redisTtlCache.js +0 -98
- package/lib/dist/lib/src/cache/types/ttlCacheRecord.types.d.ts +0 -2
- package/lib/dist/lib/src/cache/types/ttlCacheRecord.types.d.ts.map +0 -1
- package/lib/dist/lib/src/cache/types/ttlCacheRecord.types.js +0 -1
- package/lib/dist/lib/src/controllers/index.d.ts +0 -2
- package/lib/dist/lib/src/controllers/index.d.ts.map +0 -1
- package/lib/dist/lib/src/controllers/index.js +0 -1
- package/lib/dist/lib/src/controllers/interfaces/controller.interface.d.ts +0 -2
- package/lib/dist/lib/src/controllers/interfaces/controller.interface.d.ts.map +0 -1
- package/lib/dist/lib/src/controllers/interfaces/controller.interface.js +0 -1
- package/lib/dist/lib/src/database/index.d.ts +0 -2
- package/lib/dist/lib/src/database/index.d.ts.map +0 -1
- package/lib/dist/lib/src/database/index.js +0 -1
- package/lib/dist/lib/src/database/mikro/models/entities/base.entity.d.ts +0 -26
- package/lib/dist/lib/src/database/mikro/models/entities/base.entity.d.ts.map +0 -1
- package/lib/dist/lib/src/database/mikro/models/entities/base.entity.js +0 -46
- package/lib/dist/lib/src/domainMapper/index.d.ts +0 -3
- package/lib/dist/lib/src/domainMapper/index.d.ts.map +0 -1
- package/lib/dist/lib/src/domainMapper/index.js +0 -2
- package/lib/dist/lib/src/domainMapper/interfaces/dtoMapper.interface.d.ts +0 -2
- package/lib/dist/lib/src/domainMapper/interfaces/dtoMapper.interface.d.ts.map +0 -1
- package/lib/dist/lib/src/domainMapper/interfaces/dtoMapper.interface.js +0 -1
- package/lib/dist/lib/src/domainMapper/models/baseDtoMapper.model.d.ts +0 -63
- package/lib/dist/lib/src/domainMapper/models/baseDtoMapper.model.d.ts.map +0 -1
- package/lib/dist/lib/src/domainMapper/models/baseDtoMapper.model.js +0 -75
- package/lib/dist/lib/src/domainMapper/models/requestDtoMapper.model.d.ts +0 -58
- package/lib/dist/lib/src/domainMapper/models/requestDtoMapper.model.d.ts.map +0 -1
- package/lib/dist/lib/src/domainMapper/models/requestDtoMapper.model.js +0 -70
- package/lib/dist/lib/src/domainMapper/models/responseDtoMapper.model.d.ts +0 -56
- package/lib/dist/lib/src/domainMapper/models/responseDtoMapper.model.d.ts.map +0 -1
- package/lib/dist/lib/src/domainMapper/models/responseDtoMapper.model.js +0 -65
- package/lib/dist/lib/src/domainMapper/types/dtoMapper.types.d.ts +0 -2
- package/lib/dist/lib/src/domainMapper/types/dtoMapper.types.d.ts.map +0 -1
- package/lib/dist/lib/src/domainMapper/types/dtoMapper.types.js +0 -1
- package/lib/dist/lib/src/dtoMapper/index.d.ts +0 -3
- package/lib/dist/lib/src/dtoMapper/index.d.ts.map +0 -1
- package/lib/dist/lib/src/dtoMapper/index.js +0 -2
- package/lib/dist/lib/src/dtoMapper/interfaces/dtoMapper.interface.d.ts +0 -2
- package/lib/dist/lib/src/dtoMapper/interfaces/dtoMapper.interface.d.ts.map +0 -1
- package/lib/dist/lib/src/dtoMapper/interfaces/dtoMapper.interface.js +0 -1
- package/lib/dist/lib/src/dtoMapper/models/baseDtoMapper.model.d.ts +0 -63
- package/lib/dist/lib/src/dtoMapper/models/baseDtoMapper.model.d.ts.map +0 -1
- package/lib/dist/lib/src/dtoMapper/models/baseDtoMapper.model.js +0 -75
- package/lib/dist/lib/src/dtoMapper/models/requestDtoMapper.model.d.ts +0 -58
- package/lib/dist/lib/src/dtoMapper/models/requestDtoMapper.model.d.ts.map +0 -1
- package/lib/dist/lib/src/dtoMapper/models/requestDtoMapper.model.js +0 -70
- package/lib/dist/lib/src/dtoMapper/models/responseDtoMapper.model.d.ts +0 -56
- package/lib/dist/lib/src/dtoMapper/models/responseDtoMapper.model.d.ts.map +0 -1
- package/lib/dist/lib/src/dtoMapper/models/responseDtoMapper.model.js +0 -65
- package/lib/dist/lib/src/dtoMapper/types/dtoMapper.types.d.ts +0 -2
- package/lib/dist/lib/src/dtoMapper/types/dtoMapper.types.d.ts.map +0 -1
- package/lib/dist/lib/src/dtoMapper/types/dtoMapper.types.js +0 -1
- package/lib/dist/lib/src/http/application/expressLikeApplication.d.ts +0 -18
- package/lib/dist/lib/src/http/application/expressLikeApplication.d.ts.map +0 -1
- package/lib/dist/lib/src/http/application/expressLikeApplication.js +0 -20
- package/lib/dist/lib/src/http/guards/isHttpContractDetails.d.ts +0 -5
- package/lib/dist/lib/src/http/guards/isHttpContractDetails.d.ts.map +0 -1
- package/lib/dist/lib/src/http/guards/isHttpContractDetails.js +0 -6
- package/lib/dist/lib/src/http/guards/isResponseShape.d.ts +0 -2
- package/lib/dist/lib/src/http/guards/isResponseShape.d.ts.map +0 -1
- package/lib/dist/lib/src/http/guards/isResponseShape.js +0 -7
- package/lib/dist/lib/src/http/handler/typedHandler.d.ts +0 -21
- package/lib/dist/lib/src/http/handler/typedHandler.d.ts.map +0 -1
- package/lib/dist/lib/src/http/handler/typedHandler.js +0 -25
- package/lib/dist/lib/src/http/index.d.ts +0 -11
- package/lib/dist/lib/src/http/index.d.ts.map +0 -1
- package/lib/dist/lib/src/http/index.js +0 -10
- package/lib/dist/lib/src/http/interfaces/expressLikeApplication.interface.d.ts +0 -12
- package/lib/dist/lib/src/http/interfaces/expressLikeApplication.interface.d.ts.map +0 -1
- package/lib/dist/lib/src/http/interfaces/expressLikeApplication.interface.js +0 -14
- package/lib/dist/lib/src/http/interfaces/expressLikeRouter.interface.d.ts +0 -2
- package/lib/dist/lib/src/http/interfaces/expressLikeRouter.interface.d.ts.map +0 -1
- package/lib/dist/lib/src/http/interfaces/expressLikeRouter.interface.js +0 -1
- package/lib/dist/lib/src/http/interfaces/index.d.ts +0 -3
- package/lib/dist/lib/src/http/interfaces/index.d.ts.map +0 -1
- package/lib/dist/lib/src/http/interfaces/index.js +0 -2
- package/lib/dist/lib/src/http/middleware/index.d.ts +0 -3
- package/lib/dist/lib/src/http/middleware/index.d.ts.map +0 -1
- package/lib/dist/lib/src/http/middleware/index.js +0 -2
- package/lib/dist/lib/src/http/middleware/request/auth.middleware.d.ts +0 -27
- package/lib/dist/lib/src/http/middleware/request/auth.middleware.d.ts.map +0 -1
- package/lib/dist/lib/src/http/middleware/request/auth.middleware.js +0 -107
- package/lib/dist/lib/src/http/middleware/request/cors.middleware.d.ts +0 -9
- package/lib/dist/lib/src/http/middleware/request/cors.middleware.d.ts.map +0 -1
- package/lib/dist/lib/src/http/middleware/request/cors.middleware.js +0 -15
- package/lib/dist/lib/src/http/middleware/request/createContext.middleware.d.ts +0 -12
- package/lib/dist/lib/src/http/middleware/request/createContext.middleware.d.ts.map +0 -1
- package/lib/dist/lib/src/http/middleware/request/createContext.middleware.js +0 -26
- package/lib/dist/lib/src/http/middleware/request/enrichDetails.middleware.d.ts +0 -12
- package/lib/dist/lib/src/http/middleware/request/enrichDetails.middleware.d.ts.map +0 -1
- package/lib/dist/lib/src/http/middleware/request/enrichDetails.middleware.js +0 -19
- package/lib/dist/lib/src/http/middleware/request/parse.middleware.d.ts +0 -13
- package/lib/dist/lib/src/http/middleware/request/parse.middleware.d.ts.map +0 -1
- package/lib/dist/lib/src/http/middleware/request/parse.middleware.js +0 -43
- package/lib/dist/lib/src/http/middleware/request.middleware.d.ts +0 -69
- package/lib/dist/lib/src/http/middleware/request.middleware.d.ts.map +0 -1
- package/lib/dist/lib/src/http/middleware/request.middleware.js +0 -210
- package/lib/dist/lib/src/http/middleware/response/parse.middleware.d.ts +0 -27
- package/lib/dist/lib/src/http/middleware/response/parse.middleware.d.ts.map +0 -1
- package/lib/dist/lib/src/http/middleware/response/parse.middleware.js +0 -52
- package/lib/dist/lib/src/http/middleware/response.middleware.d.ts +0 -27
- package/lib/dist/lib/src/http/middleware/response.middleware.d.ts.map +0 -1
- package/lib/dist/lib/src/http/middleware/response.middleware.js +0 -52
- package/lib/dist/lib/src/http/openApiV3Generator/index.d.ts +0 -2
- package/lib/dist/lib/src/http/openApiV3Generator/index.d.ts.map +0 -1
- package/lib/dist/lib/src/http/openApiV3Generator/index.js +0 -1
- package/lib/dist/lib/src/http/openApiV3Generator/openApiV3Generator.d.ts +0 -11
- package/lib/dist/lib/src/http/openApiV3Generator/openApiV3Generator.d.ts.map +0 -1
- package/lib/dist/lib/src/http/openApiV3Generator/openApiV3Generator.js +0 -167
- package/lib/dist/lib/src/http/router/expressLikeRouter.d.ts +0 -89
- package/lib/dist/lib/src/http/router/expressLikeRouter.d.ts.map +0 -1
- package/lib/dist/lib/src/http/router/expressLikeRouter.js +0 -322
- package/lib/dist/lib/src/http/types/apiDefinition.types.d.ts +0 -2
- package/lib/dist/lib/src/http/types/apiDefinition.types.d.ts.map +0 -1
- package/lib/dist/lib/src/http/types/apiDefinition.types.js +0 -1
- package/lib/dist/lib/src/http/types/contractDetails.types.d.ts +0 -2
- package/lib/dist/lib/src/http/types/contractDetails.types.d.ts.map +0 -1
- package/lib/dist/lib/src/http/types/contractDetails.types.js +0 -1
- package/lib/dist/lib/src/http/types/index.d.ts +0 -4
- package/lib/dist/lib/src/http/types/index.d.ts.map +0 -1
- package/lib/dist/lib/src/http/types/index.js +0 -3
- package/lib/dist/lib/src/http/types/router.types.d.ts +0 -2
- package/lib/dist/lib/src/http/types/router.types.d.ts.map +0 -1
- package/lib/dist/lib/src/http/types/router.types.js +0 -1
- package/lib/dist/lib/src/http/utils/enrichExpressLikeSend.d.ts +0 -28
- package/lib/dist/lib/src/http/utils/enrichExpressLikeSend.d.ts.map +0 -1
- package/lib/dist/lib/src/http/utils/enrichExpressLikeSend.js +0 -50
- package/lib/dist/lib/src/http/utils/httpStatusCodes.d.ts +0 -986
- package/lib/dist/lib/src/http/utils/httpStatusCodes.d.ts.map +0 -1
- package/lib/dist/lib/src/http/utils/httpStatusCodes.js +0 -1039
- package/lib/dist/lib/src/http/utils/index.d.ts +0 -3
- package/lib/dist/lib/src/http/utils/index.d.ts.map +0 -1
- package/lib/dist/lib/src/http/utils/index.js +0 -2
- package/lib/dist/lib/src/services/index.d.ts +0 -2
- package/lib/dist/lib/src/services/index.d.ts.map +0 -1
- package/lib/dist/lib/src/services/index.js +0 -1
- package/lib/dist/lib/src/services/interfaces/baseService.d.ts +0 -2
- package/lib/dist/lib/src/services/interfaces/baseService.d.ts.map +0 -1
- package/lib/dist/lib/src/services/interfaces/baseService.js +0 -1
- package/lib/dist/lib/tests/dtoMapper.test.d.ts +0 -2
- package/lib/dist/lib/tests/dtoMapper.test.d.ts.map +0 -1
- package/lib/dist/lib/tests/dtoMapper.test.js +0 -172
- package/lib/dist/lib/tests/entityMapper.test.d.ts +0 -2
- package/lib/dist/lib/tests/entityMapper.test.d.ts.map +0 -1
- package/lib/dist/lib/tests/entityMapper.test.js +0 -172
- package/lib/dist/lib/tests/expressLikeRouter.test.d.ts +0 -2
- package/lib/dist/lib/tests/expressLikeRouter.test.d.ts.map +0 -1
- package/lib/dist/lib/tests/expressLikeRouter.test.js +0 -3
- package/lib/dist/lib/tests/http.middleware.test.d.ts +0 -2
- package/lib/dist/lib/tests/http.middleware.test.d.ts.map +0 -1
- package/lib/dist/lib/tests/http.middleware.test.js +0 -95
- package/lib/dist/lib/tests/openApiV3Generator.test.d.ts +0 -2
- package/lib/dist/lib/tests/openApiV3Generator.test.d.ts.map +0 -1
- package/lib/dist/lib/tests/openApiV3Generator.test.js +0 -66
- package/lib/dist/lib/tests/redisTtlCache.test.d.ts +0 -2
- package/lib/dist/lib/tests/redisTtlCache.test.d.ts.map +0 -1
- package/lib/dist/lib/tests/redisTtlCache.test.js +0 -49
- package/lib/dist/lib/tests/typedHandler.test.d.ts +0 -2
- package/lib/dist/lib/tests/typedHandler.test.d.ts.map +0 -1
- package/lib/dist/lib/tests/typedHandler.test.js +0 -3
- package/lib/dist/lib/vitest.config.d.ts +0 -3
- package/lib/dist/lib/vitest.config.d.ts.map +0 -1
- package/lib/dist/lib/vitest.config.js +0 -7
- package/lib/dist/services/index.d.ts +0 -2
- package/lib/dist/services/index.d.ts.map +0 -1
- package/lib/dist/services/index.js +0 -1
- package/lib/dist/services/interfaces/baseService.d.ts +0 -2
- package/lib/dist/services/interfaces/baseService.d.ts.map +0 -1
- package/lib/dist/services/interfaces/baseService.js +0 -1
- package/lib/dist/tests/entityMapper.test.d.ts +0 -2
- package/lib/dist/tests/entityMapper.test.d.ts.map +0 -1
- package/lib/dist/tests/entityMapper.test.js +0 -171
- package/lib/dist/tests/http.middleware.test.d.ts +0 -2
- package/lib/dist/tests/http.middleware.test.d.ts.map +0 -1
- package/lib/dist/tests/http.middleware.test.js +0 -93
- package/lib/dist/tests/openApiV3Generator.test.d.ts +0 -2
- package/lib/dist/tests/openApiV3Generator.test.d.ts.map +0 -1
- package/lib/dist/tests/openApiV3Generator.test.js +0 -66
- package/lib/dist/tests/redisTtlCache.test.d.ts +0 -2
- package/lib/dist/tests/redisTtlCache.test.d.ts.map +0 -1
- package/lib/dist/tests/redisTtlCache.test.js +0 -49
- package/lib/index.d.ts +0 -7
- package/lib/index.d.ts.map +0 -1
- package/lib/index.js +0 -7
- package/lib/src/domainMapper/index.d.ts +0 -3
- package/lib/src/domainMapper/index.d.ts.map +0 -1
- package/lib/src/domainMapper/index.js +0 -2
- package/lib/src/domainMapper/interfaces/dtoMapper.interface.d.ts +0 -18
- package/lib/src/domainMapper/interfaces/dtoMapper.interface.d.ts.map +0 -1
- package/lib/src/domainMapper/interfaces/dtoMapper.interface.js +0 -1
- package/lib/src/domainMapper/models/baseDtoMapper.model.d.ts +0 -72
- package/lib/src/domainMapper/models/baseDtoMapper.model.d.ts.map +0 -1
- package/lib/src/domainMapper/models/baseDtoMapper.model.js +0 -75
- package/lib/src/domainMapper/models/requestDtoMapper.model.d.ts +0 -68
- package/lib/src/domainMapper/models/requestDtoMapper.model.d.ts.map +0 -1
- package/lib/src/domainMapper/models/requestDtoMapper.model.js +0 -70
- package/lib/src/domainMapper/models/responseDtoMapper.model.d.ts +0 -67
- package/lib/src/domainMapper/models/responseDtoMapper.model.d.ts.map +0 -1
- package/lib/src/domainMapper/models/responseDtoMapper.model.js +0 -65
- package/lib/src/domainMapper/types/dtoMapper.types.d.ts +0 -9
- package/lib/src/domainMapper/types/dtoMapper.types.d.ts.map +0 -1
- package/lib/src/domainMapper/types/dtoMapper.types.js +0 -1
- package/lib/src/http/handler/typedHandler.d.ts +0 -24
- package/lib/src/http/handler/typedHandler.d.ts.map +0 -1
- package/lib/src/http/handler/typedHandler.js +0 -25
- package/lib/src/http/interfaces/expressLikeApplication.interface.d.ts +0 -16
- package/lib/src/http/interfaces/expressLikeApplication.interface.d.ts.map +0 -1
- package/lib/src/http/interfaces/expressLikeApplication.interface.js +0 -14
- package/lib/src/http/interfaces/index.d.ts +0 -3
- package/lib/src/http/interfaces/index.d.ts.map +0 -1
- package/lib/src/http/interfaces/index.js +0 -2
- package/lib/src/http/middleware/index.d.ts +0 -3
- package/lib/src/http/middleware/index.d.ts.map +0 -1
- package/lib/src/http/middleware/index.js +0 -2
- package/lib/src/http/middleware/request.middleware.d.ts +0 -73
- package/lib/src/http/middleware/request.middleware.d.ts.map +0 -1
- package/lib/src/http/middleware/request.middleware.js +0 -210
- package/lib/src/http/middleware/response.middleware.d.ts +0 -31
- package/lib/src/http/middleware/response.middleware.d.ts.map +0 -1
- package/lib/src/http/middleware/response.middleware.js +0 -52
- package/lib/src/http/openApiV3Generator/index.d.ts +0 -2
- package/lib/src/http/openApiV3Generator/index.d.ts.map +0 -1
- package/lib/src/http/openApiV3Generator/index.js +0 -1
- package/lib/src/http/types/index.d.ts +0 -4
- package/lib/src/http/types/index.d.ts.map +0 -1
- package/lib/src/http/types/index.js +0 -3
- package/lib/src/http/utils/index.d.ts +0 -3
- package/lib/src/http/utils/index.d.ts.map +0 -1
- package/lib/src/http/utils/index.js +0 -2
- package/lib/tests/entityMapper.test.d.ts +0 -2
- package/lib/tests/entityMapper.test.d.ts.map +0 -1
- package/lib/tests/entityMapper.test.js +0 -168
- package/lib/tests/expressLikeRouter.test.d.ts +0 -2
- package/lib/tests/expressLikeRouter.test.d.ts.map +0 -1
- package/lib/tests/expressLikeRouter.test.js +0 -3
- /package/lib/{dist/cache/interfaces/ttlCache.interface.js → src/http/types/typedHandler.types.js} +0 -0
|
@@ -1,4 +1,7 @@
|
|
|
1
|
+
import { Prettify } from '@forklaunch/common';
|
|
1
2
|
import { AnySchemaValidator, IdiomaticSchema, Schema, UnboxedObjectSchema } from '@forklaunch/validator';
|
|
3
|
+
import { ParsedQs } from 'qs';
|
|
4
|
+
import { ExpressLikeAuthMapper, ExpressLikeSchemaAuthMapper } from './apiDefinition.types';
|
|
2
5
|
/**
|
|
3
6
|
* Dictionary type for URL parameters.
|
|
4
7
|
*/
|
|
@@ -55,13 +58,53 @@ export type ResponsesObject<SV extends AnySchemaValidator> = {
|
|
|
55
58
|
* @template SV - A type that extends AnySchemaValidator.
|
|
56
59
|
*/
|
|
57
60
|
export type Body<SV extends AnySchemaValidator> = BodyObject<SV> | SV['_ValidSchemaObject'] | SV['_SchemaCatchall'];
|
|
61
|
+
export type AuthMethodsBase = ({
|
|
62
|
+
readonly method: 'jwt';
|
|
63
|
+
} | {
|
|
64
|
+
readonly method: 'basic';
|
|
65
|
+
readonly login: (username: string, password: string) => boolean;
|
|
66
|
+
} | {
|
|
67
|
+
readonly method: 'other';
|
|
68
|
+
readonly tokenPrefix: string;
|
|
69
|
+
readonly headerName?: string;
|
|
70
|
+
readonly decodeResource: (token: string) => string;
|
|
71
|
+
}) & ({
|
|
72
|
+
readonly allowedPermissions: Set<string>;
|
|
73
|
+
readonly forbiddenPermissions?: Set<string>;
|
|
74
|
+
readonly allowedRoles?: Set<string>;
|
|
75
|
+
readonly forbiddenRoles?: Set<string>;
|
|
76
|
+
} | {
|
|
77
|
+
readonly allowedPermissions?: Set<string>;
|
|
78
|
+
readonly forbiddenPermissions: Set<string>;
|
|
79
|
+
readonly allowedRoles?: Set<string>;
|
|
80
|
+
readonly forbiddenRoles?: Set<string>;
|
|
81
|
+
} | {
|
|
82
|
+
readonly allowedPermissions?: Set<string>;
|
|
83
|
+
readonly forbiddenPermissions?: Set<string>;
|
|
84
|
+
readonly allowedRoles: Set<string>;
|
|
85
|
+
readonly forbiddenRoles?: Set<string>;
|
|
86
|
+
} | {
|
|
87
|
+
readonly allowedPermissions?: Set<string>;
|
|
88
|
+
readonly forbiddenPermissions?: Set<string>;
|
|
89
|
+
readonly allowedRoles?: Set<string>;
|
|
90
|
+
readonly forbiddenRoles: Set<string>;
|
|
91
|
+
});
|
|
58
92
|
/**
|
|
59
|
-
* Type representing the authentication
|
|
93
|
+
* Type representing the authentication methods.
|
|
60
94
|
*/
|
|
61
|
-
export type
|
|
95
|
+
export type SchemaAuthMethods<SV extends AnySchemaValidator, ParamsSchema extends ParamsObject<SV>, ReqBody extends Body<SV>, QuerySchema extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>> = Prettify<AuthMethodsBase & {
|
|
96
|
+
readonly mapPermissions?: ExpressLikeSchemaAuthMapper<SV, ParamsSchema, ReqBody, QuerySchema, ReqHeaders>;
|
|
97
|
+
readonly mapRoles?: ExpressLikeSchemaAuthMapper<SV, ParamsSchema, ReqBody, QuerySchema, ReqHeaders>;
|
|
98
|
+
}>;
|
|
99
|
+
export type AuthMethods<SV extends AnySchemaValidator, P extends ParamsDictionary, ReqBody extends Record<string, unknown>, ReqQuery extends ParsedQs, ReqHeaders extends Record<string, string>> = AuthMethodsBase & {
|
|
100
|
+
readonly mapPermissions?: ExpressLikeAuthMapper<SV, P, ReqBody, ReqQuery, ReqHeaders>;
|
|
101
|
+
readonly mapRoles?: ExpressLikeAuthMapper<SV, P, ReqBody, ReqQuery, ReqHeaders>;
|
|
102
|
+
};
|
|
62
103
|
/**
|
|
63
104
|
* Type representing a mapped schema.
|
|
64
|
-
*
|
|
105
|
+
*s ParamsDictionary,
|
|
106
|
+
// ReqBody extends Record<string, unknown>,
|
|
107
|
+
//
|
|
65
108
|
* @template SV - A type that extends AnySchemaValidator.
|
|
66
109
|
* @template T - A type that extends IdiomaticSchema or a valid schema object.
|
|
67
110
|
*/
|
|
@@ -115,13 +158,9 @@ export type PathParamHttpContractDetails<SV extends AnySchemaValidator, Path ext
|
|
|
115
158
|
/** Optional query schemas for the contract */
|
|
116
159
|
readonly query?: QuerySchema;
|
|
117
160
|
/** Optional authentication details for the contract */
|
|
118
|
-
readonly auth?: {
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
readonly forbiddenSlugs?: Set<string>;
|
|
122
|
-
readonly allowedRoles?: Set<string>;
|
|
123
|
-
readonly forbiddenRoles?: Set<string>;
|
|
124
|
-
};
|
|
161
|
+
readonly auth?: SchemaAuthMethods<SV, string | number | symbol extends ExtractedParamsObject<Path> ? {
|
|
162
|
+
[K in keyof ExtractedParamsObject<Path>]: ParamsSchema[K];
|
|
163
|
+
} : ParamsSchema, never, QuerySchema, ReqHeaders> & {};
|
|
125
164
|
readonly options?: {
|
|
126
165
|
readonly requestValidation: 'error' | 'warning' | 'none';
|
|
127
166
|
readonly responseValidation: 'error' | 'warning' | 'none';
|
|
@@ -149,6 +188,9 @@ export type HttpContractDetails<SV extends AnySchemaValidator, Path extends `/${
|
|
|
149
188
|
readonly body: BodySchema;
|
|
150
189
|
/** Optional content type for the contract */
|
|
151
190
|
readonly contentType?: 'application/json' | 'multipart/form-data' | 'application/x-www-form-urlencoded';
|
|
191
|
+
readonly auth?: SchemaAuthMethods<SV, string | number | symbol extends ExtractedParamsObject<Path> ? {
|
|
192
|
+
[K in keyof ExtractedParamsObject<Path>]: ParamsSchema[K];
|
|
193
|
+
} : ParamsSchema, BodySchema, QuerySchema, ReqHeaders> & {};
|
|
152
194
|
};
|
|
153
195
|
/**
|
|
154
196
|
* Interface representing HTTP contract details for middleware.
|
|
@@ -164,6 +206,6 @@ export type MiddlewareContractDetails<SV extends AnySchemaValidator, Path extend
|
|
|
164
206
|
/**
|
|
165
207
|
* Utility for different Contract Detail types
|
|
166
208
|
*/
|
|
167
|
-
export type ContractDetails<SV extends AnySchemaValidator, ContractMethod extends Method, Path extends `/${string}`, ParamsSchema extends ParamsObject<SV>, ResponseSchemas extends ResponsesObject<SV>, BodySchema extends Body<SV>, QuerySchema extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>> = ContractMethod extends PathParamMethod ? PathParamHttpContractDetails<SV, Path, ParamsSchema, ResponseSchemas, QuerySchema, ReqHeaders, ResHeaders> : ContractMethod extends HttpMethod ? HttpContractDetails<SV, Path, ParamsSchema, ResponseSchemas, BodySchema, QuerySchema, ReqHeaders, ResHeaders> : ContractMethod extends 'middleware' ? MiddlewareContractDetails<SV, Path, ParamsSchema, ResponseSchemas, QuerySchema, ReqHeaders, ResHeaders> : never;
|
|
209
|
+
export type ContractDetails<SV extends AnySchemaValidator, ContractMethod extends Method, Path extends `/${string}`, ParamsSchema extends ParamsObject<SV>, ResponseSchemas extends ResponsesObject<SV>, BodySchema extends Body<SV>, QuerySchema extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>> = ContractMethod extends PathParamMethod ? PathParamHttpContractDetails<SV, Path, ParamsSchema, ResponseSchemas, QuerySchema, ReqHeaders, ResHeaders> : ContractMethod extends HttpMethod ? HttpContractDetails<SV, Path, ParamsSchema, ResponseSchemas, BodySchema, QuerySchema, ReqHeaders, ResHeaders> : ContractMethod extends 'middleware' ? MiddlewareContractDetails<SV, Path, ParamsSchema, ResponseSchemas, BodySchema, QuerySchema, ReqHeaders, ResHeaders> : never;
|
|
168
210
|
export {};
|
|
169
211
|
//# sourceMappingURL=contractDetails.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contractDetails.types.d.ts","sourceRoot":"","sources":["../../../../src/http/types/contractDetails.types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,MAAM,EACN,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAEzD;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,CAAC,EAAE,SAAS,kBAAkB,IAAI,IAAI,CAChE,mBAAmB,CAAC,EAAE,CAAC,EACvB,MAAM,GAAG,MAAM,CAChB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,CAAC,EAAE,SAAS,kBAAkB,IAAI,IAAI,CAChE,mBAAmB,CAAC,EAAE,CAAC,EACvB,MAAM,GAAG,MAAM,CAChB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,UAAU,CAAC,EAAE,SAAS,kBAAkB,IAAI,gBAAgB,CAAC,EAAE,CAAC,GAC1E,OAAO,CAAC;AAEV;;;;GAIG;AACH,MAAM,MAAM,YAAY,CAAC,EAAE,SAAS,kBAAkB,IAAI,gBAAgB,CAAC,EAAE,CAAC,GAC5E,OAAO,CAAC;AAEV;;;;GAIG;AACH,MAAM,MAAM,WAAW,CAAC,EAAE,SAAS,kBAAkB,IAAI,gBAAgB,CAAC,EAAE,CAAC,GAC3E,OAAO,CAAC;AAEV;;;;GAIG;AACH,MAAM,MAAM,aAAa,CAAC,EAAE,SAAS,kBAAkB,IACrD,gBAAgB,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC;AAEjC;;;;GAIG;AACH,MAAM,MAAM,eAAe,CAAC,EAAE,SAAS,kBAAkB,IAAI;IAC3D,CAAC,GAAG,EAAE,MAAM,GACR,EAAE,CAAC,oBAAoB,CAAC,GACxB,mBAAmB,CAAC,EAAE,CAAC,GACvB,MAAM,GACN,EAAE,CAAC,QAAQ,CAAC,CAAC;CAClB,GAAG,OAAO,CAAC;AAEZ;;;;GAIG;AACH,MAAM,MAAM,IAAI,CAAC,EAAE,SAAS,kBAAkB,IAC1C,UAAU,CAAC,EAAE,CAAC,GACd,EAAE,CAAC,oBAAoB,CAAC,GACxB,EAAE,CAAC,iBAAiB,CAAC,CAAC;AAE1B;;GAEG;AACH,MAAM,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"contractDetails.types.d.ts","sourceRoot":"","sources":["../../../../src/http/types/contractDetails.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,MAAM,EACN,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAC9B,OAAO,EACL,qBAAqB,EACrB,2BAA2B,EAC5B,MAAM,uBAAuB,CAAC;AAE/B;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAEzD;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,CAAC,EAAE,SAAS,kBAAkB,IAAI,IAAI,CAChE,mBAAmB,CAAC,EAAE,CAAC,EACvB,MAAM,GAAG,MAAM,CAChB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,CAAC,EAAE,SAAS,kBAAkB,IAAI,IAAI,CAChE,mBAAmB,CAAC,EAAE,CAAC,EACvB,MAAM,GAAG,MAAM,CAChB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,UAAU,CAAC,EAAE,SAAS,kBAAkB,IAAI,gBAAgB,CAAC,EAAE,CAAC,GAC1E,OAAO,CAAC;AAEV;;;;GAIG;AACH,MAAM,MAAM,YAAY,CAAC,EAAE,SAAS,kBAAkB,IAAI,gBAAgB,CAAC,EAAE,CAAC,GAC5E,OAAO,CAAC;AAEV;;;;GAIG;AACH,MAAM,MAAM,WAAW,CAAC,EAAE,SAAS,kBAAkB,IAAI,gBAAgB,CAAC,EAAE,CAAC,GAC3E,OAAO,CAAC;AAEV;;;;GAIG;AACH,MAAM,MAAM,aAAa,CAAC,EAAE,SAAS,kBAAkB,IACrD,gBAAgB,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC;AAEjC;;;;GAIG;AACH,MAAM,MAAM,eAAe,CAAC,EAAE,SAAS,kBAAkB,IAAI;IAC3D,CAAC,GAAG,EAAE,MAAM,GACR,EAAE,CAAC,oBAAoB,CAAC,GACxB,mBAAmB,CAAC,EAAE,CAAC,GACvB,MAAM,GACN,EAAE,CAAC,QAAQ,CAAC,CAAC;CAClB,GAAG,OAAO,CAAC;AAEZ;;;;GAIG;AACH,MAAM,MAAM,IAAI,CAAC,EAAE,SAAS,kBAAkB,IAC1C,UAAU,CAAC,EAAE,CAAC,GACd,EAAE,CAAC,oBAAoB,CAAC,GACxB,EAAE,CAAC,iBAAiB,CAAC,CAAC;AAE1B,MAAM,MAAM,eAAe,GAAG,CAC1B;IACE,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC;CACxB,GACD;IACE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;CACjE,GACD;IACE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACpD,CACJ,GACC,CACI;IACE,QAAQ,CAAC,kBAAkB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5C,QAAQ,CAAC,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,CAAC,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACvC,GACD;IACE,QAAQ,CAAC,kBAAkB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1C,QAAQ,CAAC,oBAAoB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3C,QAAQ,CAAC,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,CAAC,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACvC,GACD;IACE,QAAQ,CAAC,kBAAkB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1C,QAAQ,CAAC,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5C,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACnC,QAAQ,CAAC,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACvC,GACD;IACE,QAAQ,CAAC,kBAAkB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1C,QAAQ,CAAC,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5C,QAAQ,CAAC,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,CAAC,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACtC,CACJ,CAAC;AAEJ;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAC3B,EAAE,SAAS,kBAAkB,EAC7B,YAAY,SAAS,YAAY,CAAC,EAAE,CAAC,EACrC,OAAO,SAAS,IAAI,CAAC,EAAE,CAAC,EACxB,WAAW,SAAS,WAAW,CAAC,EAAE,CAAC,EACnC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,IAClC,QAAQ,CACV,eAAe,GAAG;IAChB,QAAQ,CAAC,cAAc,CAAC,EAAE,2BAA2B,CACnD,EAAE,EACF,YAAY,EACZ,OAAO,EACP,WAAW,EACX,UAAU,CACX,CAAC;IACF,QAAQ,CAAC,QAAQ,CAAC,EAAE,2BAA2B,CAC7C,EAAE,EACF,YAAY,EACZ,OAAO,EACP,WAAW,EACX,UAAU,CACX,CAAC;CACH,CACF,CAAC;AAEF,MAAM,MAAM,WAAW,CACrB,EAAE,SAAS,kBAAkB,EAC7B,CAAC,SAAS,gBAAgB,EAC1B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvC,QAAQ,SAAS,QAAQ,EACzB,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IACvC,eAAe,GAAG;IACpB,QAAQ,CAAC,cAAc,CAAC,EAAE,qBAAqB,CAC7C,EAAE,EACF,CAAC,EACD,OAAO,EACP,QAAQ,EACR,UAAU,CACX,CAAC;IACF,QAAQ,CAAC,QAAQ,CAAC,EAAE,qBAAqB,CACvC,EAAE,EACF,CAAC,EACD,OAAO,EACP,QAAQ,EACR,UAAU,CACX,CAAC;CACH,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,SAAS,CACnB,EAAE,SAAS,kBAAkB,EAC7B,CAAC,SAAS,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC,IACtD,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;AAExE;;GAEG;AACH,KAAK,aAAa,CAAC,IAAI,SAAS,IAAI,MAAM,EAAE,IAC1C,IAAI,SAAS,GAAG,MAAM,KAAK,MAAM,KAAK,IAAI,MAAM,IAAI,EAAE,GAClD,KAAK,GAAG,aAAa,CAAC,IAAI,IAAI,EAAE,CAAC,GACjC,IAAI,SAAS,GAAG,MAAM,KAAK,MAAM,KAAK,EAAE,GACtC,KAAK,GACL,KAAK,CAAC;AAEd;;GAEG;AACH,MAAM,MAAM,qBAAqB,CAAC,IAAI,SAAS,IAAI,MAAM,EAAE,IAAI,MAAM,CACnE,aAAa,CAAC,IAAI,CAAC,EACnB,OAAO,CACR,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;AAE9E;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AAElD;;GAEG;AACH,MAAM,MAAM,MAAM,GAAG,eAAe,GAAG,UAAU,GAAG,YAAY,CAAC;AAEjE;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,4BAA4B,CACtC,EAAE,SAAS,kBAAkB,EAC7B,IAAI,SAAS,IAAI,MAAM,EAAE,GAAG,IAAI,MAAM,EAAE,EACxC,YAAY,SAAS,YAAY,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,EAAE,CAAC,EACxD,eAAe,SAAS,eAAe,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,EAAE,CAAC,EACjE,WAAW,SAAS,WAAW,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,EACrD,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,EAAE,CAAC,EACxD,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,EAAE,CAAC,IACtD;IACF,2BAA2B;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,8BAA8B;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,wCAAwC;IACxC,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;IACpC,gDAAgD;IAChD,QAAQ,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC;IACrC,iDAAiD;IACjD,QAAQ,CAAC,eAAe,CAAC,EAAE,UAAU,CAAC;IACtC,8CAA8C;IAC9C,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC;IAC7B,uDAAuD;IACvD,QAAQ,CAAC,IAAI,CAAC,EAAE,iBAAiB,CAC/B,EAAE,EACF,MAAM,GAAG,MAAM,GAAG,MAAM,SAAS,qBAAqB,CAAC,IAAI,CAAC,GACxD;SACG,CAAC,IAAI,MAAM,qBAAqB,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;KAC1D,GACD,YAAY,EAChB,KAAK,EACL,WAAW,EACX,UAAU,CACX,GAAG,EAAE,CAAC;IAEP,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjB,QAAQ,CAAC,iBAAiB,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;QACzD,QAAQ,CAAC,kBAAkB,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;KAC3D,CAAC;CACH,GAAG,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,SAAS,qBAAqB,CAAC,IAAI,CAAC,GAC7D;IACE,2CAA2C;IAC3C,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC,GACD;IACE,2CAA2C;IAC3C,QAAQ,CAAC,MAAM,EAAE;SACd,CAAC,IAAI,MAAM,qBAAqB,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;KAC1D,CAAC;CACH,CAAC,CAAC;AAEP;;;;;;;;GAQG;AACH,MAAM,MAAM,mBAAmB,CAC7B,EAAE,SAAS,kBAAkB,EAC7B,IAAI,SAAS,IAAI,MAAM,EAAE,GAAG,IAAI,MAAM,EAAE,EACxC,YAAY,SAAS,YAAY,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,EAAE,CAAC,EACxD,eAAe,SAAS,eAAe,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,EAAE,CAAC,EACjE,UAAU,SAAS,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,EACtC,WAAW,SAAS,WAAW,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,EACrD,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,EAAE,CAAC,EACxD,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,EAAE,CAAC,IACtD,4BAA4B,CAC9B,EAAE,EACF,IAAI,EACJ,YAAY,EACZ,eAAe,EACf,WAAW,EACX,UAAU,EACV,UAAU,CACX,GAAG;IACF,4CAA4C;IAC5C,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAE1B,6CAA6C;IAC7C,QAAQ,CAAC,WAAW,CAAC,EACjB,kBAAkB,GAClB,qBAAqB,GACrB,mCAAmC,CAAC;IACxC,QAAQ,CAAC,IAAI,CAAC,EAAE,iBAAiB,CAC/B,EAAE,EACF,MAAM,GAAG,MAAM,GAAG,MAAM,SAAS,qBAAqB,CAAC,IAAI,CAAC,GACxD;SACG,CAAC,IAAI,MAAM,qBAAqB,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;KAC1D,GACD,YAAY,EAChB,UAAU,EACV,WAAW,EACX,UAAU,CACX,GAAG,EAAE,CAAC;CACR,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,MAAM,yBAAyB,CACnC,EAAE,SAAS,kBAAkB,EAC7B,IAAI,SAAS,IAAI,MAAM,EAAE,GAAG,IAAI,MAAM,EAAE,EACxC,YAAY,SAAS,YAAY,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,EAAE,CAAC,EACxD,eAAe,SAAS,eAAe,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,EAAE,CAAC,EACjE,UAAU,SAAS,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,EACtC,WAAW,SAAS,WAAW,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,EACrD,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,EAAE,CAAC,EACxD,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,EAAE,CAAC,IACtD,IAAI,CACN,OAAO,CACL,mBAAmB,CACjB,EAAE,EACF,IAAI,EACJ,YAAY,EACZ,eAAe,EACf,UAAU,EACV,WAAW,EACX,UAAU,EACV,UAAU,CACX,CACF,EACD,MAAM,GAAG,SAAS,GAAG,WAAW,CACjC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,CACzB,EAAE,SAAS,kBAAkB,EAC7B,cAAc,SAAS,MAAM,EAC7B,IAAI,SAAS,IAAI,MAAM,EAAE,EACzB,YAAY,SAAS,YAAY,CAAC,EAAE,CAAC,EACrC,eAAe,SAAS,eAAe,CAAC,EAAE,CAAC,EAC3C,UAAU,SAAS,IAAI,CAAC,EAAE,CAAC,EAC3B,WAAW,SAAS,WAAW,CAAC,EAAE,CAAC,EACnC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,IAClC,cAAc,SAAS,eAAe,GACtC,4BAA4B,CAC1B,EAAE,EACF,IAAI,EACJ,YAAY,EACZ,eAAe,EACf,WAAW,EACX,UAAU,EACV,UAAU,CACX,GACD,cAAc,SAAS,UAAU,GAC/B,mBAAmB,CACjB,EAAE,EACF,IAAI,EACJ,YAAY,EACZ,eAAe,EACf,UAAU,EACV,WAAW,EACX,UAAU,EACV,UAAU,CACX,GACD,cAAc,SAAS,YAAY,GACjC,yBAAyB,CACvB,EAAE,EACF,IAAI,EACJ,YAAY,EACZ,eAAe,EACf,UAAU,EACV,WAAW,EACX,UAAU,EACV,UAAU,CACX,GACD,KAAK,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AnySchemaValidator } from '@forklaunch/validator';
|
|
2
|
-
import { TypedHandler } from '../handlers/typedHandler';
|
|
3
2
|
import { ExpressLikeSchemaHandler, LiveTypeFunction } from './apiDefinition.types';
|
|
4
3
|
import { Body, ContractDetails, HeadersObject, Method, ParamsObject, QueryObject, ResponsesObject } from './contractDetails.types';
|
|
4
|
+
import { TypedHandler } from './typedHandler.types';
|
|
5
5
|
export interface LiveTypeRouteDefinition<SV extends AnySchemaValidator, BasePath extends `/${string}`, ContractMethod extends Method> {
|
|
6
6
|
<Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(path: Path, typedHandler: TypedHandler<SV, ContractMethod, Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj>): {
|
|
7
7
|
[key in ContractMethod]: LiveTypeFunction<SV, `${BasePath}${Path}`, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expressLikeRouter.types.d.ts","sourceRoot":"","sources":["../../../../src/http/types/expressLikeRouter.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"expressLikeRouter.types.d.ts","sourceRoot":"","sources":["../../../../src/http/types/expressLikeRouter.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { AnySchemaValidator } from '@forklaunch/validator';
|
|
2
|
+
import { ExpressLikeSchemaHandler } from '../types/apiDefinition.types';
|
|
3
|
+
import { Body, ContractDetails, HeadersObject, Method, ParamsObject, QueryObject, ResponsesObject } from '../types/contractDetails.types';
|
|
4
|
+
export type ContractDetailsExpressLikeSchemaHandler<SV extends AnySchemaValidator, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>> = ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj>;
|
|
5
|
+
export type TypedHandler<SV extends AnySchemaValidator, ContractMethod extends Method, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>> = {
|
|
6
|
+
_typedHandler: true;
|
|
7
|
+
contractDetails: ContractDetails<SV, ContractMethod, Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders>;
|
|
8
|
+
handlers: ContractDetailsExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj>[];
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=typedHandler.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typedHandler.types.d.ts","sourceRoot":"","sources":["../../../../src/http/types/typedHandler.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EACL,IAAI,EACJ,eAAe,EACf,aAAa,EACb,MAAM,EACN,YAAY,EACZ,WAAW,EACX,eAAe,EAChB,MAAM,gCAAgC,CAAC;AAGxC,MAAM,MAAM,uCAAuC,CACjD,EAAE,SAAS,kBAAkB,EAC7B,CAAC,SAAS,YAAY,CAAC,EAAE,CAAC,EAC1B,UAAU,SAAS,eAAe,CAAC,EAAE,CAAC,EACtC,OAAO,SAAS,IAAI,CAAC,EAAE,CAAC,EACxB,QAAQ,SAAS,WAAW,CAAC,EAAE,CAAC,EAChC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IACvC,wBAAwB,CAC1B,EAAE,EACF,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,SAAS,CACV,CAAC;AAEF,MAAM,MAAM,YAAY,CACtB,EAAE,SAAS,kBAAkB,EAC7B,cAAc,SAAS,MAAM,EAC7B,IAAI,SAAS,IAAI,MAAM,EAAE,EACzB,CAAC,SAAS,YAAY,CAAC,EAAE,CAAC,EAC1B,UAAU,SAAS,eAAe,CAAC,EAAE,CAAC,EACtC,OAAO,SAAS,IAAI,CAAC,EAAE,CAAC,EACxB,QAAQ,SAAS,WAAW,CAAC,EAAE,CAAC,EAChC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,UAAU,SAAS,aAAa,CAAC,EAAE,CAAC,EACpC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IACvC;IACF,aAAa,EAAE,IAAI,CAAC;IACpB,eAAe,EAAE,eAAe,CAC9B,EAAE,EACF,cAAc,EACd,IAAI,EACJ,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,CACX,CAAC;IAEF,QAAQ,EAAE,uCAAuC,CAC/C,EAAE,EACF,CAAC,EACD,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,SAAS,CACV,EAAE,CAAC;CACL,CAAC"}
|
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
import { date, number, SchemaValidator, string } from '@forklaunch/validator/typebox';
|
|
2
2
|
import { ForklaunchExpressLikeRouter, typedHandler } from '../src/http';
|
|
3
|
+
import { typedAuthHandler } from '../src/http/handlers/typedAuthHandler';
|
|
4
|
+
const contractDetails = {
|
|
5
|
+
name: 'string',
|
|
6
|
+
summary: 'string',
|
|
7
|
+
params: {
|
|
8
|
+
name: string,
|
|
9
|
+
id: number
|
|
10
|
+
// a: string
|
|
11
|
+
},
|
|
12
|
+
requestHeaders: {
|
|
13
|
+
'x-test': number
|
|
14
|
+
},
|
|
15
|
+
responses: {
|
|
16
|
+
200: date,
|
|
17
|
+
400: string
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
const kl = typedAuthHandler(SchemaValidator(), contractDetails, (sub, req) => {
|
|
21
|
+
const j = req?.params.id;
|
|
22
|
+
const x = req?.headers['x-test'];
|
|
23
|
+
return new Set(['admin', 'user']);
|
|
24
|
+
});
|
|
3
25
|
const xasd = typedHandler(SchemaValidator(), '/test/:name/:id', 'trace', {
|
|
4
26
|
name: 'string',
|
|
5
27
|
summary: 'string',
|
|
@@ -13,6 +35,15 @@ const xasd = typedHandler(SchemaValidator(), '/test/:name/:id', 'trace', {
|
|
|
13
35
|
responses: {
|
|
14
36
|
200: date,
|
|
15
37
|
400: string
|
|
38
|
+
},
|
|
39
|
+
auth: {
|
|
40
|
+
method: 'jwt',
|
|
41
|
+
mapPermissions: kl,
|
|
42
|
+
// (sub, req) => {
|
|
43
|
+
// const j = req?.params.id;
|
|
44
|
+
// return new Set(['admin', 'user']);
|
|
45
|
+
// },
|
|
46
|
+
allowedPermissions: new Set(['admin', 'user'])
|
|
16
47
|
}
|
|
17
48
|
}, async (req, res) => {
|
|
18
49
|
// const r = req.params.a;
|
|
@@ -25,7 +56,7 @@ const xasd = typedHandler(SchemaValidator(), '/test/:name/:id', 'trace', {
|
|
|
25
56
|
res.status(200).send(new Date());
|
|
26
57
|
});
|
|
27
58
|
const xa = new ForklaunchExpressLikeRouter('/l', SchemaValidator(), {});
|
|
28
|
-
const
|
|
59
|
+
const bl = xa.trace('/test/:name/:id', {
|
|
29
60
|
name: 'string',
|
|
30
61
|
summary: 'string',
|
|
31
62
|
params: {
|
|
@@ -39,8 +70,22 @@ const contractDetails = {
|
|
|
39
70
|
responses: {
|
|
40
71
|
200: date,
|
|
41
72
|
400: string
|
|
73
|
+
},
|
|
74
|
+
auth: {
|
|
75
|
+
method: 'jwt',
|
|
76
|
+
// mapPermissions: (sub, req) => {
|
|
77
|
+
// const j = req?.params.id;
|
|
78
|
+
// return new Set(['admin', 'user']);
|
|
79
|
+
// },
|
|
80
|
+
mapPermissions: kl,
|
|
81
|
+
mapRoles: kl,
|
|
82
|
+
allowedPermissions: new Set(['admin', 'user'])
|
|
42
83
|
}
|
|
43
|
-
}
|
|
84
|
+
}, async (req, res) => {
|
|
85
|
+
const i = req.headers['x-test'] * 7;
|
|
86
|
+
const l = res.getHeaders()['x-correlation-id'];
|
|
87
|
+
res.status(200).send(new Date());
|
|
88
|
+
});
|
|
44
89
|
const a = xa.trace('/test/:name/:id', contractDetails, async (req, res) => {
|
|
45
90
|
// const r = req.params.a;
|
|
46
91
|
const i = req.headers['x-test'] * 7;
|