node-server-engine 1.1.1 → 1.1.3
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/.env.example +193 -193
- package/.mocharc.js +13 -13
- package/.nycrc +18 -18
- package/.prettierrc +7 -7
- package/Dockerfile +30 -30
- package/README.md +991 -1025
- package/babel.config.json +35 -35
- package/dist/const/DebeziumEvent.js.map +1 -1
- package/dist/const/LogSeverity.js.map +1 -1
- package/dist/const/index.js.map +1 -1
- package/dist/const/metrics.js.map +1 -1
- package/dist/const/mime.js.map +1 -1
- package/dist/const/tokenIssuer.js.map +1 -1
- package/dist/db/migrations/20241030121500-create-sequelize-meta-table.js.map +1 -1
- package/dist/db/models/SequelizeMeta.js.map +1 -1
- package/dist/db/models/index.js.map +1 -1
- package/dist/entities/ElasticSearch/ElasticSearch.js +7 -7
- package/dist/entities/ElasticSearch/ElasticSearch.js.map +1 -1
- package/dist/entities/ElasticSearch/ElasticSearch.types.js.map +1 -1
- package/dist/entities/ElasticSearch/index.js.map +1 -1
- package/dist/entities/Endpoint/Endpoint.js +8 -8
- package/dist/entities/Endpoint/Endpoint.js.map +1 -1
- package/dist/entities/Endpoint/Endpoint.types.js.map +1 -1
- package/dist/entities/Endpoint/index.js.map +1 -1
- package/dist/entities/EngineError/EngineError.js +2 -2
- package/dist/entities/EngineError/EngineError.js.map +1 -1
- package/dist/entities/EngineError/EngineError.types.js.map +1 -1
- package/dist/entities/EngineError/index.js.map +1 -1
- package/dist/entities/KeySet/KeySet.js +3 -3
- package/dist/entities/KeySet/KeySet.js.map +1 -1
- package/dist/entities/KeySet/KeySet.types.js.map +1 -1
- package/dist/entities/KeySet/index.js.map +1 -1
- package/dist/entities/LifecycleController/LifecycleController.js.map +1 -1
- package/dist/entities/LifecycleController/LifecycleController.types.js.map +1 -1
- package/dist/entities/LifecycleController/index.js.map +1 -1
- package/dist/entities/Localizator/Localizator.js +7 -7
- package/dist/entities/Localizator/Localizator.js.map +1 -1
- package/dist/entities/Localizator/Localizator.types.js.map +1 -1
- package/dist/entities/Localizator/guessNamingConvention/guessNamingConvention.js.map +1 -1
- package/dist/entities/Localizator/guessNamingConvention/index.js.map +1 -1
- package/dist/entities/Localizator/index.js.map +1 -1
- package/dist/entities/MessageHandler/MessageHandler.js +2 -2
- package/dist/entities/MessageHandler/MessageHandler.js.map +1 -1
- package/dist/entities/MessageHandler/MessageHandler.types.js.map +1 -1
- package/dist/entities/MessageHandler/index.js.map +1 -1
- package/dist/entities/PubSub/PubSub.js +25 -25
- package/dist/entities/PubSub/PubSub.js.map +1 -1
- package/dist/entities/PubSub/PubSub.types.js.map +1 -1
- package/dist/entities/PubSub/handleMessage/handleMessage.js +6 -6
- package/dist/entities/PubSub/handleMessage/handleMessage.js.map +1 -1
- package/dist/entities/PubSub/handleMessage/index.js.map +1 -1
- package/dist/entities/PubSub/index.js.map +1 -1
- package/dist/entities/PushNotification/PushNotification.js +4 -4
- package/dist/entities/PushNotification/PushNotification.js.map +1 -1
- package/dist/entities/PushNotification/PushNotification.types.js.map +1 -1
- package/dist/entities/PushNotification/index.js.map +1 -1
- package/dist/entities/Redis/Redis.js +8 -8
- package/dist/entities/Redis/Redis.js.map +1 -1
- package/dist/entities/Redis/Redis.types.js.map +1 -1
- package/dist/entities/Redis/Redis.validate.js +2 -2
- package/dist/entities/Redis/Redis.validate.js.map +1 -1
- package/dist/entities/Redis/index.js.map +1 -1
- package/dist/entities/Sequelize/Sequelize.config.js +42 -2
- package/dist/entities/Sequelize/Sequelize.config.js.map +1 -1
- package/dist/entities/Sequelize/Sequelize.js +3 -3
- package/dist/entities/Sequelize/Sequelize.js.map +1 -1
- package/dist/entities/Sequelize/Sequelize.types.js.map +1 -1
- package/dist/entities/Sequelize/Sequelize.validate.js +2 -2
- package/dist/entities/Sequelize/Sequelize.validate.js.map +1 -1
- package/dist/entities/Sequelize/index.js.map +1 -1
- package/dist/entities/Server/Server.const.js.map +1 -1
- package/dist/entities/Server/Server.js +2 -2
- package/dist/entities/Server/Server.js.map +1 -1
- package/dist/entities/Server/Server.types.js.map +1 -1
- package/dist/entities/Server/index.js.map +1 -1
- package/dist/entities/SocketClient/SocketClient.js +15 -15
- package/dist/entities/SocketClient/SocketClient.js.map +1 -1
- package/dist/entities/SocketClient/SocketClient.types.js.map +1 -1
- package/dist/entities/SocketClient/index.js.map +1 -1
- package/dist/entities/SocketClient/parseMessage/index.js.map +1 -1
- package/dist/entities/SocketClient/parseMessage/parseMessage.js +2 -2
- package/dist/entities/SocketClient/parseMessage/parseMessage.js.map +1 -1
- package/dist/entities/Storage/Storage.js +20 -20
- package/dist/entities/Storage/Storage.js.map +1 -1
- package/dist/entities/Storage/Storage.types.js.map +1 -1
- package/dist/entities/Storage/index.js.map +1 -1
- package/dist/entities/ValidationError/ValidationError.js.map +1 -1
- package/dist/entities/ValidationError/index.js.map +1 -1
- package/dist/entities/WebError/WebError.js +4 -4
- package/dist/entities/WebError/WebError.js.map +1 -1
- package/dist/entities/WebError/WebError.types.js.map +1 -1
- package/dist/entities/WebError/index.js.map +1 -1
- package/dist/entities/index.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/metrics/debug.js.map +1 -1
- package/dist/metrics/index.js.map +1 -1
- package/dist/metrics/request.js.map +1 -1
- package/dist/middleware/authAdmin/authAdmin.js.map +1 -1
- package/dist/middleware/authAdmin/authAdmin.types.js.map +1 -1
- package/dist/middleware/authAdmin/index.js.map +1 -1
- package/dist/middleware/authHmac/authHmac.js.map +1 -1
- package/dist/middleware/authHmac/authHmac.types.js.map +1 -1
- package/dist/middleware/authHmac/index.js.map +1 -1
- package/dist/middleware/authJwt/authJwt.js.map +1 -1
- package/dist/middleware/authJwt/authJwt.types.js.map +1 -1
- package/dist/middleware/authJwt/index.js.map +1 -1
- package/dist/middleware/authStatic/authStatic.js +3 -3
- package/dist/middleware/authStatic/authStatic.js.map +1 -1
- package/dist/middleware/authStatic/index.js.map +1 -1
- package/dist/middleware/authTls/authTls.js +8 -8
- package/dist/middleware/authTls/authTls.js.map +1 -1
- package/dist/middleware/authTls/authTls.types.js.map +1 -1
- package/dist/middleware/authTls/index.js.map +1 -1
- package/dist/middleware/checkPermission/checkPermission.d.ts +3 -1
- package/dist/middleware/checkPermission/checkPermission.js +2 -2
- package/dist/middleware/checkPermission/checkPermission.js.map +1 -1
- package/dist/middleware/error/error.js.map +1 -1
- package/dist/middleware/error/index.js.map +1 -1
- package/dist/middleware/fileUploader/compressAvatar/compressAvatar.js +2 -2
- package/dist/middleware/fileUploader/compressAvatar/compressAvatar.js.map +1 -1
- package/dist/middleware/fileUploader/compressAvatar/compressAvatar.types.js.map +1 -1
- package/dist/middleware/fileUploader/compressAvatar/index.js.map +1 -1
- package/dist/middleware/fileUploader/fileUploader.js +12 -12
- package/dist/middleware/fileUploader/fileUploader.js.map +1 -1
- package/dist/middleware/fileUploader/fileUploader.types.js.map +1 -1
- package/dist/middleware/fileUploader/index.js.map +1 -1
- package/dist/middleware/fileUploader/isMultiPart/index.js.map +1 -1
- package/dist/middleware/fileUploader/isMultiPart/isMultipart.js.map +1 -1
- package/dist/middleware/fileUploader/validate/index.js.map +1 -1
- package/dist/middleware/fileUploader/validate/validate.js.map +1 -1
- package/dist/middleware/fourOhFour/fourOhFour.js.map +1 -1
- package/dist/middleware/fourOhFour/index.js.map +1 -1
- package/dist/middleware/geminiFileUploader/geminiFileUploader.js.map +1 -1
- package/dist/middleware/geminiFileUploader/index.js.map +1 -1
- package/dist/middleware/healthCheck/healthCheck.js +2 -2
- package/dist/middleware/healthCheck/healthCheck.js.map +1 -1
- package/dist/middleware/healthCheck/index.js.map +1 -1
- package/dist/middleware/index.js.map +1 -1
- package/dist/middleware/metrics/index.js.map +1 -1
- package/dist/middleware/metrics/metrics.js.map +1 -1
- package/dist/middleware/requestMetrics/index.js.map +1 -1
- package/dist/middleware/requestMetrics/requestMetrics.js.map +1 -1
- package/dist/middleware/swaggerDocs/index.js.map +1 -1
- package/dist/middleware/swaggerDocs/swaggerDocs.js +7 -7
- package/dist/middleware/swaggerDocs/swaggerDocs.js.map +1 -1
- package/dist/middleware/swaggerDocs/swaggerDocs.types.js.map +1 -1
- package/dist/middleware/userResolver/index.js.map +1 -1
- package/dist/middleware/userResolver/userResolver.js.map +1 -1
- package/dist/middleware/validate/index.js.map +1 -1
- package/dist/middleware/validate/validate.js.map +1 -1
- package/dist/middleware/version/index.js.map +1 -1
- package/dist/middleware/version/version.js +3 -3
- package/dist/middleware/version/version.js.map +1 -1
- package/dist/utils/checkEnvironment/index.js +13 -13
- package/dist/utils/checkEnvironment/index.js.map +1 -1
- package/dist/utils/createHttpServer/createHttpServer.js.map +1 -1
- package/dist/utils/createHttpServer/createHttpServer.validate.js +2 -2
- package/dist/utils/createHttpServer/createHttpServer.validate.js.map +1 -1
- package/dist/utils/createHttpServer/index.js.map +1 -1
- package/dist/utils/createSortedObject/createSortedObject.js.map +1 -1
- package/dist/utils/createSortedObject/index.js.map +1 -1
- package/dist/utils/dbMigration/dbMigration.js +8 -8
- package/dist/utils/dbMigration/dbMigration.js.map +1 -1
- package/dist/utils/dbMigration/dbMigration.types.js.map +1 -1
- package/dist/utils/dbMigration/index.js.map +1 -1
- package/dist/utils/dbMigration/migrateMetadataTable/index.js.map +1 -1
- package/dist/utils/dbMigration/migrateMetadataTable/migrateMetadataTable.d.ts +2 -2
- package/dist/utils/dbMigration/migrateMetadataTable/migrateMetadataTable.js +47 -15
- package/dist/utils/dbMigration/migrateMetadataTable/migrateMetadataTable.js.map +1 -1
- package/dist/utils/envAssert/envAssert.js +6 -6
- package/dist/utils/envAssert/envAssert.js.map +1 -1
- package/dist/utils/envAssert/index.js.map +1 -1
- package/dist/utils/envAssert/validators/hostList.js +2 -2
- package/dist/utils/envAssert/validators/hostList.js.map +1 -1
- package/dist/utils/envAssert/validators/index.js.map +1 -1
- package/dist/utils/envAssert/validators/ipList.js +2 -2
- package/dist/utils/envAssert/validators/ipList.js.map +1 -1
- package/dist/utils/envAssert/validators/path.js +2 -2
- package/dist/utils/envAssert/validators/path.js.map +1 -1
- package/dist/utils/envAssert/validators/string.js +2 -2
- package/dist/utils/envAssert/validators/string.js.map +1 -1
- package/dist/utils/envAssert/validators/stringList.js +3 -3
- package/dist/utils/envAssert/validators/stringList.js.map +1 -1
- package/dist/utils/filter/filter.js +4 -4
- package/dist/utils/filter/filter.js.map +1 -1
- package/dist/utils/filter/index.js.map +1 -1
- package/dist/utils/getDynamicLink/getDynamicLink.js.map +1 -1
- package/dist/utils/getDynamicLink/getDynamicLink.types.js.map +1 -1
- package/dist/utils/getDynamicLink/getDynamicLink.validate.js.map +1 -1
- package/dist/utils/getDynamicLink/index.js.map +1 -1
- package/dist/utils/hmac/checkEnv/checkEnv.js +2 -2
- package/dist/utils/hmac/checkEnv/checkEnv.js.map +1 -1
- package/dist/utils/hmac/checkEnv/index.js.map +1 -1
- package/dist/utils/hmac/createHmac/createHmac.js.map +1 -1
- package/dist/utils/hmac/createHmac/index.js.map +1 -1
- package/dist/utils/hmac/index.js.map +1 -1
- package/dist/utils/hmac/index.types.js.map +1 -1
- package/dist/utils/hmac/signPayload/index.js.map +1 -1
- package/dist/utils/hmac/signPayload/signPayload.js.map +1 -1
- package/dist/utils/hmac/verifySignature/index.js.map +1 -1
- package/dist/utils/hmac/verifySignature/verifySignature.js.map +1 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/jwt/index.js.map +1 -1
- package/dist/utils/jwt/jwt.js.map +1 -1
- package/dist/utils/jwt/jwt.types.js.map +1 -1
- package/dist/utils/report/index.js.map +1 -1
- package/dist/utils/report/output.js.map +1 -1
- package/dist/utils/report/output.types.js.map +1 -1
- package/dist/utils/report/report.js.map +1 -1
- package/dist/utils/report/report.types.js.map +1 -1
- package/dist/utils/request/index.js.map +1 -1
- package/dist/utils/request/request.js.map +1 -1
- package/dist/utils/semverCompare/index.js.map +1 -1
- package/dist/utils/semverCompare/semverCompare.js +5 -5
- package/dist/utils/semverCompare/semverCompare.js.map +1 -1
- package/dist/utils/sendEmail/index.js.map +1 -1
- package/dist/utils/sendEmail/sendEmail.js +8 -8
- package/dist/utils/sendEmail/sendEmail.js.map +1 -1
- package/dist/utils/sendEmail/sendEmail.types.js.map +1 -1
- package/dist/utils/sendPush/index.js.map +1 -1
- package/dist/utils/sendPush/sendPush.js +5 -5
- package/dist/utils/sendPush/sendPush.js.map +1 -1
- package/dist/utils/sendPush/sendPush.types.js.map +1 -1
- package/dist/utils/tlsConfig/index.js.map +1 -1
- package/dist/utils/tlsConfig/tlsConfig.js +2 -2
- package/dist/utils/tlsConfig/tlsConfig.js.map +1 -1
- package/dist/utils/tlsConfig/tlsConfig.types.js.map +1 -1
- package/dist/utils/tlsConfig/tlsConfig.validate.js +2 -2
- package/dist/utils/tlsConfig/tlsConfig.validate.js.map +1 -1
- package/dist/utils/tlsRequest/index.js.map +1 -1
- package/dist/utils/tlsRequest/tlsRequest.js.map +1 -1
- package/dist/utils/trimPathSlash/index.js.map +1 -1
- package/dist/utils/trimPathSlash/trimPathSlash.js +4 -4
- package/dist/utils/trimPathSlash/trimPathSlash.js.map +1 -1
- package/eslint.config.mjs +11 -11
- package/package.json +164 -161
- package/src/const/DebeziumEvent.ts +6 -6
- package/src/const/LogSeverity.ts +7 -7
- package/src/const/index.ts +5 -5
- package/src/const/metrics.ts +6 -6
- package/src/const/mime.ts +37 -37
- package/src/const/tokenIssuer.ts +9 -9
- package/src/db/migrations/20241030121500-create-sequelize-meta-table.ts +29 -29
- package/src/db/models/SequelizeMeta.ts +16 -16
- package/src/db/models/index.ts +2 -2
- package/src/entities/ElasticSearch/ElasticSearch.ts +103 -103
- package/src/entities/ElasticSearch/ElasticSearch.types.ts +7 -7
- package/src/entities/ElasticSearch/index.ts +2 -2
- package/src/entities/Endpoint/Endpoint.test.ts +337 -337
- package/src/entities/Endpoint/Endpoint.ts +202 -202
- package/src/entities/Endpoint/Endpoint.types.ts +205 -205
- package/src/entities/Endpoint/index.ts +2 -2
- package/src/entities/EngineError/EngineError.ts +28 -28
- package/src/entities/EngineError/EngineError.types.ts +15 -15
- package/src/entities/EngineError/index.ts +2 -2
- package/src/entities/KeySet/KeySet.test.ts +126 -126
- package/src/entities/KeySet/KeySet.ts +172 -172
- package/src/entities/KeySet/KeySet.types.ts +28 -28
- package/src/entities/KeySet/index.ts +2 -2
- package/src/entities/LifecycleController/LifecycleController.test.ts +48 -48
- package/src/entities/LifecycleController/LifecycleController.ts +24 -24
- package/src/entities/LifecycleController/LifecycleController.types.ts +5 -5
- package/src/entities/LifecycleController/index.ts +2 -2
- package/src/entities/Localizator/Localizator.ts +139 -139
- package/src/entities/Localizator/Localizator.types.ts +52 -52
- package/src/entities/Localizator/guessNamingConvention/guessNamingConvention.test.ts +165 -165
- package/src/entities/Localizator/guessNamingConvention/guessNamingConvention.ts +58 -58
- package/src/entities/Localizator/guessNamingConvention/index.ts +1 -1
- package/src/entities/Localizator/index.ts +2 -2
- package/src/entities/MessageHandler/MessageHandler.test.ts +130 -130
- package/src/entities/MessageHandler/MessageHandler.ts +72 -72
- package/src/entities/MessageHandler/MessageHandler.types.ts +15 -15
- package/src/entities/MessageHandler/index.ts +2 -2
- package/src/entities/PubSub/PubSub.test.ts +297 -297
- package/src/entities/PubSub/PubSub.ts +202 -202
- package/src/entities/PubSub/PubSub.types.ts +76 -76
- package/src/entities/PubSub/handleMessage/handleMessage.test.ts +102 -102
- package/src/entities/PubSub/handleMessage/handleMessage.ts +65 -65
- package/src/entities/PubSub/handleMessage/index.ts +1 -1
- package/src/entities/PubSub/index.ts +2 -2
- package/src/entities/PushNotification/PushNotification.test.ts +35 -35
- package/src/entities/PushNotification/PushNotification.ts +44 -44
- package/src/entities/PushNotification/PushNotification.types.ts +25 -25
- package/src/entities/PushNotification/index.ts +2 -2
- package/src/entities/Redis/Redis.ts +71 -71
- package/src/entities/Redis/Redis.types.ts +19 -19
- package/src/entities/Redis/Redis.validate.ts +17 -17
- package/src/entities/Redis/index.ts +2 -2
- package/src/entities/Sequelize/Sequelize.config.ts +59 -29
- package/src/entities/Sequelize/Sequelize.test.ts +21 -21
- package/src/entities/Sequelize/Sequelize.ts +75 -75
- package/src/entities/Sequelize/Sequelize.types.ts +10 -10
- package/src/entities/Sequelize/Sequelize.validate.ts +15 -15
- package/src/entities/Sequelize/index.ts +2 -2
- package/src/entities/Server/Server.const.ts +56 -56
- package/src/entities/Server/Server.test.ts +272 -272
- package/src/entities/Server/Server.ts +445 -445
- package/src/entities/Server/Server.types.ts +88 -88
- package/src/entities/Server/index.ts +2 -2
- package/src/entities/SocketClient/SocketClient.test.ts +392 -392
- package/src/entities/SocketClient/SocketClient.ts +401 -401
- package/src/entities/SocketClient/SocketClient.types.ts +62 -62
- package/src/entities/SocketClient/index.ts +2 -2
- package/src/entities/SocketClient/parseMessage/index.ts +1 -1
- package/src/entities/SocketClient/parseMessage/parseMessage.test.ts +20 -20
- package/src/entities/SocketClient/parseMessage/parseMessage.ts +26 -26
- package/src/entities/Storage/Storage.test.ts +58 -58
- package/src/entities/Storage/Storage.ts +219 -219
- package/src/entities/Storage/Storage.types.ts +57 -57
- package/src/entities/Storage/index.ts +2 -2
- package/src/entities/ValidationError/ValidationError.ts +34 -34
- package/src/entities/ValidationError/index.ts +1 -1
- package/src/entities/WebError/WebError.test.ts +18 -18
- package/src/entities/WebError/WebError.ts +23 -23
- package/src/entities/WebError/WebError.types.ts +9 -9
- package/src/entities/WebError/index.ts +2 -2
- package/src/entities/index.ts +16 -16
- package/src/index.ts +4 -4
- package/src/metrics/debug.ts +10 -10
- package/src/metrics/index.ts +2 -2
- package/src/metrics/request.ts +17 -17
- package/src/middleware/authAdmin/authAdmin.test.ts +199 -199
- package/src/middleware/authAdmin/authAdmin.ts +114 -114
- package/src/middleware/authAdmin/authAdmin.types.ts +19 -19
- package/src/middleware/authAdmin/index.ts +2 -2
- package/src/middleware/authHmac/authHmac.test.ts +86 -86
- package/src/middleware/authHmac/authHmac.ts +56 -56
- package/src/middleware/authHmac/authHmac.types.ts +7 -7
- package/src/middleware/authHmac/index.ts +2 -2
- package/src/middleware/authJwt/authJwt.test.ts +54 -54
- package/src/middleware/authJwt/authJwt.ts +55 -55
- package/src/middleware/authJwt/authJwt.types.ts +14 -14
- package/src/middleware/authJwt/index.ts +2 -2
- package/src/middleware/authStatic/authStatic.test.ts +36 -36
- package/src/middleware/authStatic/authStatic.ts +45 -45
- package/src/middleware/authStatic/index.ts +1 -1
- package/src/middleware/authTls/authTls.test.ts +138 -138
- package/src/middleware/authTls/authTls.ts +106 -106
- package/src/middleware/authTls/authTls.types.ts +13 -13
- package/src/middleware/authTls/index.ts +2 -2
- package/src/middleware/checkPermission/checkPermission.ts +33 -35
- package/src/middleware/error/error.test.ts +60 -60
- package/src/middleware/error/error.ts +25 -25
- package/src/middleware/error/index.ts +1 -1
- package/src/middleware/fileUploader/compressAvatar/compressAvatar.ts +25 -25
- package/src/middleware/fileUploader/compressAvatar/compressAvatar.types.ts +12 -12
- package/src/middleware/fileUploader/compressAvatar/index.ts +2 -2
- package/src/middleware/fileUploader/fileUploader.test.ts +310 -310
- package/src/middleware/fileUploader/fileUploader.ts +303 -303
- package/src/middleware/fileUploader/fileUploader.types.ts +52 -52
- package/src/middleware/fileUploader/index.ts +2 -2
- package/src/middleware/fileUploader/isMultiPart/index.ts +1 -1
- package/src/middleware/fileUploader/isMultiPart/isMultipart.ts +9 -9
- package/src/middleware/fileUploader/validate/index.ts +1 -1
- package/src/middleware/fileUploader/validate/validate.ts +27 -27
- package/src/middleware/fourOhFour/fourOhFour.test.ts +14 -14
- package/src/middleware/fourOhFour/fourOhFour.ts +13 -13
- package/src/middleware/fourOhFour/index.ts +1 -1
- package/src/middleware/geminiFileUploader/geminiFileUploader.ts +117 -117
- package/src/middleware/geminiFileUploader/index.ts +1 -1
- package/src/middleware/healthCheck/healthCheck.test.ts +12 -12
- package/src/middleware/healthCheck/healthCheck.ts +14 -14
- package/src/middleware/healthCheck/index.ts +1 -1
- package/src/middleware/index.ts +17 -17
- package/src/middleware/metrics/index.ts +1 -1
- package/src/middleware/metrics/metrics.test.ts +46 -46
- package/src/middleware/metrics/metrics.ts +24 -24
- package/src/middleware/requestMetrics/index.ts +1 -1
- package/src/middleware/requestMetrics/requestMetrics.test.ts +77 -77
- package/src/middleware/requestMetrics/requestMetrics.ts +20 -20
- package/src/middleware/swaggerDocs/index.ts +2 -2
- package/src/middleware/swaggerDocs/swaggerDocs.ts +114 -114
- package/src/middleware/swaggerDocs/swaggerDocs.types.ts +41 -41
- package/src/middleware/userResolver/index.ts +1 -1
- package/src/middleware/userResolver/userResolver.test.ts +35 -35
- package/src/middleware/userResolver/userResolver.ts +35 -35
- package/src/middleware/validate/index.ts +1 -1
- package/src/middleware/validate/validate.test.ts +43 -43
- package/src/middleware/validate/validate.ts +25 -25
- package/src/middleware/version/index.ts +1 -1
- package/src/middleware/version/version.test.ts +23 -23
- package/src/middleware/version/version.ts +12 -12
- package/src/utils/checkEnvironment/index.ts +49 -49
- package/src/utils/createHttpServer/createHttpServer.test.ts +24 -24
- package/src/utils/createHttpServer/createHttpServer.ts +34 -34
- package/src/utils/createHttpServer/createHttpServer.validate.ts +17 -17
- package/src/utils/createHttpServer/index.ts +1 -1
- package/src/utils/createSortedObject/createSortedObject.ts +20 -20
- package/src/utils/createSortedObject/createSortedObjet.test.ts +47 -47
- package/src/utils/createSortedObject/index.ts +1 -1
- package/src/utils/dbMigration/dbMigration.test.ts +209 -209
- package/src/utils/dbMigration/dbMigration.ts +199 -199
- package/src/utils/dbMigration/dbMigration.types.ts +11 -11
- package/src/utils/dbMigration/index.ts +2 -2
- package/src/utils/dbMigration/migrateMetadataTable/index.ts +1 -1
- package/src/utils/dbMigration/migrateMetadataTable/migrateMetadataTable.test.ts +59 -59
- package/src/utils/dbMigration/migrateMetadataTable/migrateMetadataTable.ts +102 -70
- package/src/utils/envAssert/envAssert.ts +31 -31
- package/src/utils/envAssert/index.ts +1 -1
- package/src/utils/envAssert/validators/hostList.ts +17 -17
- package/src/utils/envAssert/validators/index.ts +5 -5
- package/src/utils/envAssert/validators/ipList.ts +13 -13
- package/src/utils/envAssert/validators/path.ts +13 -13
- package/src/utils/envAssert/validators/string.ts +9 -9
- package/src/utils/envAssert/validators/stringList.ts +13 -13
- package/src/utils/filter/filter.ts +17 -17
- package/src/utils/filter/index.ts +1 -1
- package/src/utils/getDynamicLink/getDynamicLink.test.ts +51 -51
- package/src/utils/getDynamicLink/getDynamicLink.ts +28 -28
- package/src/utils/getDynamicLink/getDynamicLink.types.ts +11 -11
- package/src/utils/getDynamicLink/getDynamicLink.validate.ts +6 -6
- package/src/utils/getDynamicLink/index.ts +2 -2
- package/src/utils/hmac/checkEnv/checkEnv.test.ts +18 -18
- package/src/utils/hmac/checkEnv/checkEnv.ts +9 -9
- package/src/utils/hmac/checkEnv/index.ts +1 -1
- package/src/utils/hmac/createHmac/createHmac.ts +33 -33
- package/src/utils/hmac/createHmac/index.ts +1 -1
- package/src/utils/hmac/index.ts +4 -4
- package/src/utils/hmac/index.types.ts +13 -13
- package/src/utils/hmac/signPayload/index.ts +1 -1
- package/src/utils/hmac/signPayload/signPayload.ts +16 -16
- package/src/utils/hmac/verifySignature/index.ts +1 -1
- package/src/utils/hmac/verifySignature/verifySignature.ts +24 -24
- package/src/utils/index.ts +26 -26
- package/src/utils/jwt/index.ts +2 -2
- package/src/utils/jwt/jwt.test.ts +41 -41
- package/src/utils/jwt/jwt.ts +204 -204
- package/src/utils/jwt/jwt.types.ts +21 -21
- package/src/utils/report/index.ts +3 -3
- package/src/utils/report/output.ts +45 -45
- package/src/utils/report/output.types.ts +70 -70
- package/src/utils/report/report.test.ts +133 -133
- package/src/utils/report/report.ts +134 -134
- package/src/utils/report/report.types.ts +13 -13
- package/src/utils/request/index.ts +1 -1
- package/src/utils/request/request.test.ts +26 -26
- package/src/utils/request/request.ts +48 -48
- package/src/utils/semverCompare/index.ts +1 -1
- package/src/utils/semverCompare/semverCompare.test.ts +49 -49
- package/src/utils/semverCompare/semverCompare.ts +60 -60
- package/src/utils/sendEmail/index.ts +1 -1
- package/src/utils/sendEmail/sendEmail.ts +27 -27
- package/src/utils/sendEmail/sendEmail.types.ts +7 -7
- package/src/utils/sendPush/index.ts +2 -2
- package/src/utils/sendPush/sendPush.ts +20 -20
- package/src/utils/sendPush/sendPush.types.ts +25 -25
- package/src/utils/tlsConfig/index.ts +2 -2
- package/src/utils/tlsConfig/tlsConfig.test.ts +32 -32
- package/src/utils/tlsConfig/tlsConfig.ts +47 -47
- package/src/utils/tlsConfig/tlsConfig.types.ts +11 -11
- package/src/utils/tlsConfig/tlsConfig.validate.ts +25 -25
- package/src/utils/tlsRequest/index.ts +1 -1
- package/src/utils/tlsRequest/tlsRequest.test.ts +63 -63
- package/src/utils/tlsRequest/tlsRequest.ts +12 -12
- package/src/utils/trimPathSlash/index.ts +1 -1
- package/src/utils/trimPathSlash/trimPathSlash.test.ts +26 -26
- package/src/utils/trimPathSlash/trimPathSlash.ts +8 -8
- package/test/env.ts +56 -56
- package/test/factory/index.ts +8 -8
- package/test/factory/sequelizeMeta.ts +12 -12
- package/test/hooks.ts +37 -37
- package/test/index.ts +3 -3
- package/test/stub/index.ts +3 -3
- package/test/stub/stubLocales.ts +68 -68
- package/test/stub/stubPubSub.ts +7 -7
- package/test/stub/stubStorage.ts +77 -77
- package/test/stub/stubStorage.types.ts +11 -11
- package/test/utils/app.ts +31 -31
- package/test/utils/index.ts +1 -1
- package/tsconfig.build.json +5 -5
- package/tsconfig.json +32 -32
|
@@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.healthCheck = healthCheck;
|
|
7
7
|
var _express = require("express");
|
|
8
|
-
/**
|
|
9
|
-
* respond to Kubernetes health-checks with 200
|
|
8
|
+
/**
|
|
9
|
+
* respond to Kubernetes health-checks with 200
|
|
10
10
|
*/
|
|
11
11
|
function healthCheck(path = '/heartbeat') {
|
|
12
12
|
return (0, _express.Router)().get('/', (req, res) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"healthCheck.js","names":["_express","require","healthCheck","path","Router","get","req","res","sendStatus"],"sources":["../../../src/middleware/healthCheck/healthCheck.ts"],"sourcesContent":["import { Router, Request, Response } from 'express';\n\n/**\n * respond to Kubernetes health-checks with 200\n */\nexport function healthCheck(path = '/heartbeat'): Router {\n return Router()\n .get('/', (req: Request, res: Response) => {\n res.sendStatus(200);\n })\n .get(path, (req: Request, res: Response) => {\n res.sendStatus(200);\n });\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACO,SAASC,WAAWA,CAACC,IAAI,GAAG,YAAY,EAAU;EACvD,OAAO,IAAAC,eAAM,EAAC,CAAC,CACZC,GAAG,CAAC,GAAG,EAAE,CAACC,GAAY,EAAEC,GAAa,KAAK;IACzCA,GAAG,CAACC,UAAU,CAAC,GAAG,CAAC;EACrB,CAAC,CAAC,CACDH,GAAG,CAACF,IAAI,EAAE,CAACG,GAAY,EAAEC,GAAa,KAAK;IAC1CA,GAAG,CAACC,UAAU,CAAC,GAAG,CAAC;EACrB,CAAC,CAAC;AACN","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"healthCheck.js","names":["_express","require","healthCheck","path","Router","get","req","res","sendStatus"],"sources":["../../../src/middleware/healthCheck/healthCheck.ts"],"sourcesContent":["import { Router, Request, Response } from 'express';\r\n\r\n/**\r\n * respond to Kubernetes health-checks with 200\r\n */\r\nexport function healthCheck(path = '/heartbeat'): Router {\r\n return Router()\r\n .get('/', (req: Request, res: Response) => {\r\n res.sendStatus(200);\r\n })\r\n .get(path, (req: Request, res: Response) => {\r\n res.sendStatus(200);\r\n });\r\n}\r\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACO,SAASC,WAAWA,CAACC,IAAI,GAAG,YAAY,EAAU;EACvD,OAAO,IAAAC,eAAM,EAAC,CAAC,CACZC,GAAG,CAAC,GAAG,EAAE,CAACC,GAAY,EAAEC,GAAa,KAAK;IACzCA,GAAG,CAACC,UAAU,CAAC,GAAG,CAAC;EACrB,CAAC,CAAC,CACDH,GAAG,CAACF,IAAI,EAAE,CAACG,GAAY,EAAEC,GAAa,KAAK;IAC1CA,GAAG,CAACC,UAAU,CAAC,GAAG,CAAC;EACrB,CAAC,CAAC;AACN","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_healthCheck","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/middleware/healthCheck/index.ts"],"sourcesContent":["export * from './healthCheck';\n"],"mappings":";;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,YAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,YAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,YAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_healthCheck","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/middleware/healthCheck/index.ts"],"sourcesContent":["export * from './healthCheck';\r\n"],"mappings":";;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,YAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,YAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,YAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_error","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_healthCheck","_validate","_fourOhFour","_authJwt","_authHmac","_authStatic","_swaggerDocs","_authTls","_userResolver","_fileUploader","_metrics","_requestMetrics","_version","_authAdmin","_geminiFileUploader","_checkPermission"],"sources":["../../src/middleware/index.ts"],"sourcesContent":["export * from './error';\nexport * from './healthCheck';\nexport * from './validate';\nexport * from './fourOhFour';\nexport * from './authJwt';\nexport * from './authHmac';\nexport * from './authStatic';\nexport * from './swaggerDocs';\nexport * from './authTls';\nexport * from './userResolver';\nexport * from './fileUploader';\nexport * from './metrics';\nexport * from './requestMetrics';\nexport * from './version';\nexport * from './authAdmin';\nexport * from './geminiFileUploader';\nexport * from './checkPermission';\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_error","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_healthCheck","_validate","_fourOhFour","_authJwt","_authHmac","_authStatic","_swaggerDocs","_authTls","_userResolver","_fileUploader","_metrics","_requestMetrics","_version","_authAdmin","_geminiFileUploader","_checkPermission"],"sources":["../../src/middleware/index.ts"],"sourcesContent":["export * from './error';\r\nexport * from './healthCheck';\r\nexport * from './validate';\r\nexport * from './fourOhFour';\r\nexport * from './authJwt';\r\nexport * from './authHmac';\r\nexport * from './authStatic';\r\nexport * from './swaggerDocs';\r\nexport * from './authTls';\r\nexport * from './userResolver';\r\nexport * from './fileUploader';\r\nexport * from './metrics';\r\nexport * from './requestMetrics';\r\nexport * from './version';\r\nexport * from './authAdmin';\r\nexport * from './geminiFileUploader';\r\nexport * from './checkPermission';\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_metrics","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/middleware/metrics/index.ts"],"sourcesContent":["export * from './metrics';\n"],"mappings":";;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,QAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,QAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,QAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_metrics","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/middleware/metrics/index.ts"],"sourcesContent":["export * from './metrics';\r\n"],"mappings":";;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,QAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,QAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,QAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metrics.js","names":["_express","require","_metrics","_report","metrics","Router","use","req","res","set","instanceRegistry","contentType","end","catch","error","reportError","serviceRegistry"],"sources":["../../../src/middleware/metrics/metrics.ts"],"sourcesContent":["import { Router, Request, Response } from 'express';\nimport { instanceRegistry, serviceRegistry } from 'const/metrics';\nimport { reportError } from 'utils/report';\n\n/** Middleware that calculates request time, and exposes metrics related to requests processed by this service */\nexport function metrics(): Router {\n return Router()\n .use('/metrics/instance', (req: Request, res: Response) => {\n (async (): Promise<void> => {\n res.set('Content-Type', instanceRegistry.contentType);\n res.end(await instanceRegistry.metrics());\n })().catch((error: Error) => {\n reportError(error);\n });\n })\n .use('/metrics/service', (req: Request, res: Response) => {\n (async (): Promise<void> => {\n res.set('Content-Type', serviceRegistry.contentType);\n res.end(await serviceRegistry.metrics());\n })().catch((error: Error) => {\n reportError(error);\n });\n });\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAEA;AACO,SAASG,OAAOA,CAAA,EAAW;EAChC,OAAO,IAAAC,eAAM,EAAC,CAAC,CACZC,GAAG,CAAC,mBAAmB,EAAE,CAACC,GAAY,EAAEC,GAAa,KAAK;IACzD,CAAC,YAA2B;MAC1BA,GAAG,CAACC,GAAG,CAAC,cAAc,EAAEC,yBAAgB,CAACC,WAAW,CAAC;MACrDH,GAAG,CAACI,GAAG,CAAC,MAAMF,yBAAgB,CAACN,OAAO,CAAC,CAAC,CAAC;IAC3C,CAAC,EAAE,CAAC,CAACS,KAAK,CAAEC,KAAY,IAAK;MAC3B,IAAAC,mBAAW,EAACD,KAAK,CAAC;IACpB,CAAC,CAAC;EACJ,CAAC,CAAC,CACDR,GAAG,CAAC,kBAAkB,EAAE,CAACC,GAAY,EAAEC,GAAa,KAAK;IACxD,CAAC,YAA2B;MAC1BA,GAAG,CAACC,GAAG,CAAC,cAAc,EAAEO,wBAAe,CAACL,WAAW,CAAC;MACpDH,GAAG,CAACI,GAAG,CAAC,MAAMI,wBAAe,CAACZ,OAAO,CAAC,CAAC,CAAC;IAC1C,CAAC,EAAE,CAAC,CAACS,KAAK,CAAEC,KAAY,IAAK;MAC3B,IAAAC,mBAAW,EAACD,KAAK,CAAC;IACpB,CAAC,CAAC;EACJ,CAAC,CAAC;AACN","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"metrics.js","names":["_express","require","_metrics","_report","metrics","Router","use","req","res","set","instanceRegistry","contentType","end","catch","error","reportError","serviceRegistry"],"sources":["../../../src/middleware/metrics/metrics.ts"],"sourcesContent":["import { Router, Request, Response } from 'express';\r\nimport { instanceRegistry, serviceRegistry } from 'const/metrics';\r\nimport { reportError } from 'utils/report';\r\n\r\n/** Middleware that calculates request time, and exposes metrics related to requests processed by this service */\r\nexport function metrics(): Router {\r\n return Router()\r\n .use('/metrics/instance', (req: Request, res: Response) => {\r\n (async (): Promise<void> => {\r\n res.set('Content-Type', instanceRegistry.contentType);\r\n res.end(await instanceRegistry.metrics());\r\n })().catch((error: Error) => {\r\n reportError(error);\r\n });\r\n })\r\n .use('/metrics/service', (req: Request, res: Response) => {\r\n (async (): Promise<void> => {\r\n res.set('Content-Type', serviceRegistry.contentType);\r\n res.end(await serviceRegistry.metrics());\r\n })().catch((error: Error) => {\r\n reportError(error);\r\n });\r\n });\r\n}\r\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAEA;AACO,SAASG,OAAOA,CAAA,EAAW;EAChC,OAAO,IAAAC,eAAM,EAAC,CAAC,CACZC,GAAG,CAAC,mBAAmB,EAAE,CAACC,GAAY,EAAEC,GAAa,KAAK;IACzD,CAAC,YAA2B;MAC1BA,GAAG,CAACC,GAAG,CAAC,cAAc,EAAEC,yBAAgB,CAACC,WAAW,CAAC;MACrDH,GAAG,CAACI,GAAG,CAAC,MAAMF,yBAAgB,CAACN,OAAO,CAAC,CAAC,CAAC;IAC3C,CAAC,EAAE,CAAC,CAACS,KAAK,CAAEC,KAAY,IAAK;MAC3B,IAAAC,mBAAW,EAACD,KAAK,CAAC;IACpB,CAAC,CAAC;EACJ,CAAC,CAAC,CACDR,GAAG,CAAC,kBAAkB,EAAE,CAACC,GAAY,EAAEC,GAAa,KAAK;IACxD,CAAC,YAA2B;MAC1BA,GAAG,CAACC,GAAG,CAAC,cAAc,EAAEO,wBAAe,CAACL,WAAW,CAAC;MACpDH,GAAG,CAACI,GAAG,CAAC,MAAMI,wBAAe,CAACZ,OAAO,CAAC,CAAC,CAAC;IAC1C,CAAC,EAAE,CAAC,CAACS,KAAK,CAAEC,KAAY,IAAK;MAC3B,IAAAC,mBAAW,EAACD,KAAK,CAAC;IACpB,CAAC,CAAC;EACJ,CAAC,CAAC;AACN","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_requestMetrics","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/middleware/requestMetrics/index.ts"],"sourcesContent":["export * from './requestMetrics';\n"],"mappings":";;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,eAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,eAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,eAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_requestMetrics","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/middleware/requestMetrics/index.ts"],"sourcesContent":["export * from './requestMetrics';\r\n"],"mappings":";;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,eAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,eAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,eAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"requestMetrics.js","names":["_responseTime","_interopRequireDefault","require","_metrics","requestMetrics","exports","responseTime","request","response","time","labels","path","route","method","status","statusCode","toString","substring","service","process","env","CHART","httpRequestCount","inc","httpRequestDuration","observe"],"sources":["../../../src/middleware/requestMetrics/requestMetrics.ts"],"sourcesContent":["import { Request, Response } from 'express';\nimport responseTime from 'response-time';\nimport { httpRequestCount, httpRequestDuration } from 'metrics';\n\n/** Middleware that gets metrics on each request */\nexport const requestMetrics = responseTime(\n (request: Request, response: Response, time: number) => {\n const labels = {\n path: (request.route?.path ?? request.path) as string,\n method: request.method,\n status: response.statusCode\n ? `${response.statusCode.toString().substring(0, 1)}XX`\n : '',\n service: process.env.CHART\n };\n\n httpRequestCount.inc(labels);\n httpRequestDuration.observe(labels, time / 1000);\n }\n);\n"],"mappings":";;;;;;;AACA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEA;AACO,MAAME,cAAc,GAAAC,OAAA,CAAAD,cAAA,GAAG,IAAAE,qBAAY,EACxC,CAACC,OAAgB,EAAEC,QAAkB,EAAEC,IAAY,KAAK;EACtD,MAAMC,MAAM,GAAG;IACbC,IAAI,EAAGJ,OAAO,CAACK,KAAK,EAAED,IAAI,IAAIJ,OAAO,CAACI,IAAe;IACrDE,MAAM,EAAEN,OAAO,CAACM,MAAM;IACtBC,MAAM,EAAEN,QAAQ,CAACO,UAAU,GACvB,GAAGP,QAAQ,CAACO,UAAU,CAACC,QAAQ,CAAC,CAAC,CAACC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,GACrD,EAAE;IACNC,OAAO,EAAEC,OAAO,CAACC,GAAG,CAACC;EACvB,CAAC;EAEDC,yBAAgB,CAACC,GAAG,CAACb,MAAM,CAAC;EAC5Bc,4BAAmB,CAACC,OAAO,CAACf,MAAM,EAAED,IAAI,GAAG,IAAI,CAAC;AAClD,CACF,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"requestMetrics.js","names":["_responseTime","_interopRequireDefault","require","_metrics","requestMetrics","exports","responseTime","request","response","time","labels","path","route","method","status","statusCode","toString","substring","service","process","env","CHART","httpRequestCount","inc","httpRequestDuration","observe"],"sources":["../../../src/middleware/requestMetrics/requestMetrics.ts"],"sourcesContent":["import { Request, Response } from 'express';\r\nimport responseTime from 'response-time';\r\nimport { httpRequestCount, httpRequestDuration } from 'metrics';\r\n\r\n/** Middleware that gets metrics on each request */\r\nexport const requestMetrics = responseTime(\r\n (request: Request, response: Response, time: number) => {\r\n const labels = {\r\n path: (request.route?.path ?? request.path) as string,\r\n method: request.method,\r\n status: response.statusCode\r\n ? `${response.statusCode.toString().substring(0, 1)}XX`\r\n : '',\r\n service: process.env.CHART\r\n };\r\n\r\n httpRequestCount.inc(labels);\r\n httpRequestDuration.observe(labels, time / 1000);\r\n }\r\n);\r\n"],"mappings":";;;;;;;AACA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEA;AACO,MAAME,cAAc,GAAAC,OAAA,CAAAD,cAAA,GAAG,IAAAE,qBAAY,EACxC,CAACC,OAAgB,EAAEC,QAAkB,EAAEC,IAAY,KAAK;EACtD,MAAMC,MAAM,GAAG;IACbC,IAAI,EAAGJ,OAAO,CAACK,KAAK,EAAED,IAAI,IAAIJ,OAAO,CAACI,IAAe;IACrDE,MAAM,EAAEN,OAAO,CAACM,MAAM;IACtBC,MAAM,EAAEN,QAAQ,CAACO,UAAU,GACvB,GAAGP,QAAQ,CAACO,UAAU,CAACC,QAAQ,CAAC,CAAC,CAACC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,GACrD,EAAE;IACNC,OAAO,EAAEC,OAAO,CAACC,GAAG,CAACC;EACvB,CAAC;EAEDC,yBAAgB,CAACC,GAAG,CAACb,MAAM,CAAC;EAC5Bc,4BAAmB,CAACC,OAAO,CAACf,MAAM,EAAED,IAAI,GAAG,IAAI,CAAC;AAClD,CACF,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_swaggerDocs","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_swaggerDocs2"],"sources":["../../../src/middleware/swaggerDocs/index.ts"],"sourcesContent":["export * from './swaggerDocs';\nexport * from './swaggerDocs.types';\n"],"mappings":";;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,YAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,YAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,YAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,aAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,aAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,aAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,aAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_swaggerDocs","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_swaggerDocs2"],"sources":["../../../src/middleware/swaggerDocs/index.ts"],"sourcesContent":["export * from './swaggerDocs';\r\nexport * from './swaggerDocs.types';\r\n"],"mappings":";;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,YAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,YAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,YAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,aAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,aAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,aAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,aAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -25,10 +25,10 @@ function getResponsePaths() {
|
|
|
25
25
|
return [..._glob.glob.sync(`${process.cwd()}/src/docs/responses/*.yaml`), ..._glob.glob.sync(`${process.cwd()}/dist/docs/responses/*.yaml`)];
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
-
/**
|
|
29
|
-
* Load all data files and merge them in a single object
|
|
30
|
-
* @param files
|
|
31
|
-
* @return {Object}
|
|
28
|
+
/**
|
|
29
|
+
* Load all data files and merge them in a single object
|
|
30
|
+
* @param files
|
|
31
|
+
* @return {Object}
|
|
32
32
|
*/
|
|
33
33
|
function loadAndMergeData(files) {
|
|
34
34
|
return files.map(file => _yamljs.default.load(file)).reduce((result, endpoint) => {
|
|
@@ -88,9 +88,9 @@ function loadConfig() {
|
|
|
88
88
|
};
|
|
89
89
|
}
|
|
90
90
|
|
|
91
|
-
/**
|
|
92
|
-
* Get a middleware that serves the documentation
|
|
93
|
-
* @return {Router}
|
|
91
|
+
/**
|
|
92
|
+
* Get a middleware that serves the documentation
|
|
93
|
+
* @return {Router}
|
|
94
94
|
*/
|
|
95
95
|
function swaggerDocs() {
|
|
96
96
|
// Stringify the result and replace any environment variable, then turn it again to an object
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swaggerDocs.js","names":["_fs","_interopRequireDefault","require","_express","_glob","_yamljs","_swaggerUiExpress","getEndpointDocPaths","glob","sync","process","cwd","getSchemaPaths","getResponsePaths","loadAndMergeData","files","map","file","YAML","load","reduce","result","endpoint","path","Object","keys","loadEndpoints","paths","endpoints","loadSchemas","schemas","loadResponses","responses","loadConfig","indexPath","config","fs","existsSync","schemaConfig","responseConfig","endpointConfig","components","swaggerDocs","stringifiedDocumentation","JSON","stringify","placeholderRegex","overwrittenDocumentation","replace","match","p1","env","parse","Router","use","swaggerUi","serve","setup"],"sources":["../../../src/middleware/swaggerDocs/swaggerDocs.ts"],"sourcesContent":["import fs from 'fs';\nimport { Router } from 'express';\nimport { glob } from 'glob';\nimport YAML from 'yamljs';\nimport swaggerUi from 'swagger-ui-express';\nimport {\n EndpointDocumentation,\n IndexDocumentation,\n ResponsesConfig,\n EndpointConfig,\n SchemasConfig,\n SwaggerConfig\n} from './swaggerDocs.types';\n\n/** Get the paths of all the endpoint documentation files */\nfunction getEndpointDocPaths(): Array<string> {\n return [\n ...glob.sync(`${process.cwd()}/src/**/*.docs.yaml`),\n ...glob.sync(`${process.cwd()}/dist/**/*.docs.yaml`)\n ];\n}\n\n/** Get the paths of all the schema files */\nfunction getSchemaPaths(): Array<string> {\n return [\n ...glob.sync(`${process.cwd()}/src/docs/schemas/*.yaml`),\n ...glob.sync(`${process.cwd()}/dist/docs/schemas/*.yaml`)\n ];\n}\n\n/** Get the paths of all the response files */\nfunction getResponsePaths(): Array<string> {\n return [\n ...glob.sync(`${process.cwd()}/src/docs/responses/*.yaml`),\n ...glob.sync(`${process.cwd()}/dist/docs/responses/*.yaml`)\n ];\n}\n\n/**\n * Load all data files and merge them in a single object\n * @param files\n * @return {Object}\n */\nfunction loadAndMergeData(files: Array<string>): EndpointDocumentation {\n return files\n .map((file) => YAML.load(file) as EndpointDocumentation)\n .reduce((result, endpoint) => {\n for (const path of Object.keys(endpoint)) {\n if (!(path in result)) result[path] = {};\n result[path] = { ...result[path], ...endpoint[path] };\n }\n return result;\n }, {});\n}\n\n/** Load documentation files of all the endpoints */\nfunction loadEndpoints(): EndpointConfig {\n const paths = getEndpointDocPaths();\n const endpoints = loadAndMergeData(paths);\n return {\n paths: endpoints\n };\n}\n\n/** Load documentation files of all the schemas */\nfunction loadSchemas(): SchemasConfig {\n const paths = getSchemaPaths();\n const schemas = loadAndMergeData(paths);\n return { schemas };\n}\n\n/** Load documentation files of all the responses */\nfunction loadResponses(): ResponsesConfig {\n const paths = getResponsePaths();\n const responses = loadAndMergeData(paths);\n return { responses };\n}\n\n/** Load the whole Swagger config */\nfunction loadConfig(): SwaggerConfig {\n const indexPath = `${process.cwd()}/src/docs/index.yaml`;\n const config = (\n fs.existsSync(indexPath) ? YAML.load(indexPath) : {}\n ) as IndexDocumentation;\n const schemaConfig = loadSchemas();\n const responseConfig = loadResponses();\n const endpointConfig = loadEndpoints();\n return {\n ...config,\n ...endpointConfig,\n components: {\n ...config.components,\n ...schemaConfig,\n ...responseConfig\n }\n };\n}\n\n/**\n * Get a middleware that serves the documentation\n * @return {Router}\n */\nexport function swaggerDocs(): Router {\n // Stringify the result and replace any environment variable, then turn it again to an object\n const stringifiedDocumentation = JSON.stringify(loadConfig());\n const placeholderRegex = /##(.+?)##/g;\n const overwrittenDocumentation = stringifiedDocumentation.replace(\n placeholderRegex,\n (match: string, p1: string): string => process.env[p1] ?? ''\n );\n const config = JSON.parse(overwrittenDocumentation) as EndpointDocumentation;\n \n return Router().use('/docs', swaggerUi.serve, swaggerUi.setup(config));\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"swaggerDocs.js","names":["_fs","_interopRequireDefault","require","_express","_glob","_yamljs","_swaggerUiExpress","getEndpointDocPaths","glob","sync","process","cwd","getSchemaPaths","getResponsePaths","loadAndMergeData","files","map","file","YAML","load","reduce","result","endpoint","path","Object","keys","loadEndpoints","paths","endpoints","loadSchemas","schemas","loadResponses","responses","loadConfig","indexPath","config","fs","existsSync","schemaConfig","responseConfig","endpointConfig","components","swaggerDocs","stringifiedDocumentation","JSON","stringify","placeholderRegex","overwrittenDocumentation","replace","match","p1","env","parse","Router","use","swaggerUi","serve","setup"],"sources":["../../../src/middleware/swaggerDocs/swaggerDocs.ts"],"sourcesContent":["import fs from 'fs';\r\nimport { Router } from 'express';\r\nimport { glob } from 'glob';\r\nimport YAML from 'yamljs';\r\nimport swaggerUi from 'swagger-ui-express';\r\nimport {\r\n EndpointDocumentation,\r\n IndexDocumentation,\r\n ResponsesConfig,\r\n EndpointConfig,\r\n SchemasConfig,\r\n SwaggerConfig\r\n} from './swaggerDocs.types';\r\n\r\n/** Get the paths of all the endpoint documentation files */\r\nfunction getEndpointDocPaths(): Array<string> {\r\n return [\r\n ...glob.sync(`${process.cwd()}/src/**/*.docs.yaml`),\r\n ...glob.sync(`${process.cwd()}/dist/**/*.docs.yaml`)\r\n ];\r\n}\r\n\r\n/** Get the paths of all the schema files */\r\nfunction getSchemaPaths(): Array<string> {\r\n return [\r\n ...glob.sync(`${process.cwd()}/src/docs/schemas/*.yaml`),\r\n ...glob.sync(`${process.cwd()}/dist/docs/schemas/*.yaml`)\r\n ];\r\n}\r\n\r\n/** Get the paths of all the response files */\r\nfunction getResponsePaths(): Array<string> {\r\n return [\r\n ...glob.sync(`${process.cwd()}/src/docs/responses/*.yaml`),\r\n ...glob.sync(`${process.cwd()}/dist/docs/responses/*.yaml`)\r\n ];\r\n}\r\n\r\n/**\r\n * Load all data files and merge them in a single object\r\n * @param files\r\n * @return {Object}\r\n */\r\nfunction loadAndMergeData(files: Array<string>): EndpointDocumentation {\r\n return files\r\n .map((file) => YAML.load(file) as EndpointDocumentation)\r\n .reduce((result, endpoint) => {\r\n for (const path of Object.keys(endpoint)) {\r\n if (!(path in result)) result[path] = {};\r\n result[path] = { ...result[path], ...endpoint[path] };\r\n }\r\n return result;\r\n }, {});\r\n}\r\n\r\n/** Load documentation files of all the endpoints */\r\nfunction loadEndpoints(): EndpointConfig {\r\n const paths = getEndpointDocPaths();\r\n const endpoints = loadAndMergeData(paths);\r\n return {\r\n paths: endpoints\r\n };\r\n}\r\n\r\n/** Load documentation files of all the schemas */\r\nfunction loadSchemas(): SchemasConfig {\r\n const paths = getSchemaPaths();\r\n const schemas = loadAndMergeData(paths);\r\n return { schemas };\r\n}\r\n\r\n/** Load documentation files of all the responses */\r\nfunction loadResponses(): ResponsesConfig {\r\n const paths = getResponsePaths();\r\n const responses = loadAndMergeData(paths);\r\n return { responses };\r\n}\r\n\r\n/** Load the whole Swagger config */\r\nfunction loadConfig(): SwaggerConfig {\r\n const indexPath = `${process.cwd()}/src/docs/index.yaml`;\r\n const config = (\r\n fs.existsSync(indexPath) ? YAML.load(indexPath) : {}\r\n ) as IndexDocumentation;\r\n const schemaConfig = loadSchemas();\r\n const responseConfig = loadResponses();\r\n const endpointConfig = loadEndpoints();\r\n return {\r\n ...config,\r\n ...endpointConfig,\r\n components: {\r\n ...config.components,\r\n ...schemaConfig,\r\n ...responseConfig\r\n }\r\n };\r\n}\r\n\r\n/**\r\n * Get a middleware that serves the documentation\r\n * @return {Router}\r\n */\r\nexport function swaggerDocs(): Router {\r\n // Stringify the result and replace any environment variable, then turn it again to an object\r\n const stringifiedDocumentation = JSON.stringify(loadConfig());\r\n const placeholderRegex = /##(.+?)##/g;\r\n const overwrittenDocumentation = stringifiedDocumentation.replace(\r\n placeholderRegex,\r\n (match: string, p1: string): string => process.env[p1] ?? ''\r\n );\r\n const config = JSON.parse(overwrittenDocumentation) as EndpointDocumentation;\r\n \r\n return Router().use('/docs', swaggerUi.serve, swaggerUi.setup(config));\r\n}\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swaggerDocs.types.js","names":[],"sources":["../../../src/middleware/swaggerDocs/swaggerDocs.types.ts"],"sourcesContent":["/** Documentation content */\nexport interface EndpointDocumentation {\n [path: string]: { [key: string]: unknown };\n}\n\n/** Documentation content */\ninterface ComponentDocumentation {\n [name: string]: { [key: string]: unknown };\n}\n\n/** root documentation config */\nexport interface IndexDocumentation extends EndpointDocumentation {\n /** Global components to be documented */\n components: ComponentDocumentation;\n}\n\n/** Documentation config for endpoints */\nexport interface EndpointConfig {\n /** Documentation content */\n paths: EndpointDocumentation;\n}\n\n/** Documentation config for responses */\nexport interface ResponsesConfig {\n /** Documentation content */\n responses: ComponentDocumentation;\n}\n\n/** Documentation config for schemas */\nexport interface SchemasConfig {\n /** Documentation content */\n schemas: ComponentDocumentation;\n}\n\nexport type SwaggerConfig = IndexDocumentation &\n EndpointConfig & {\n /** Shared components documentation */\n components: IndexDocumentation['components'] &\n ResponsesConfig &\n SchemasConfig;\n };\n"],"mappings":"","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"swaggerDocs.types.js","names":[],"sources":["../../../src/middleware/swaggerDocs/swaggerDocs.types.ts"],"sourcesContent":["/** Documentation content */\r\nexport interface EndpointDocumentation {\r\n [path: string]: { [key: string]: unknown };\r\n}\r\n\r\n/** Documentation content */\r\ninterface ComponentDocumentation {\r\n [name: string]: { [key: string]: unknown };\r\n}\r\n\r\n/** root documentation config */\r\nexport interface IndexDocumentation extends EndpointDocumentation {\r\n /** Global components to be documented */\r\n components: ComponentDocumentation;\r\n}\r\n\r\n/** Documentation config for endpoints */\r\nexport interface EndpointConfig {\r\n /** Documentation content */\r\n paths: EndpointDocumentation;\r\n}\r\n\r\n/** Documentation config for responses */\r\nexport interface ResponsesConfig {\r\n /** Documentation content */\r\n responses: ComponentDocumentation;\r\n}\r\n\r\n/** Documentation config for schemas */\r\nexport interface SchemasConfig {\r\n /** Documentation content */\r\n schemas: ComponentDocumentation;\r\n}\r\n\r\nexport type SwaggerConfig = IndexDocumentation &\r\n EndpointConfig & {\r\n /** Shared components documentation */\r\n components: IndexDocumentation['components'] &\r\n ResponsesConfig &\r\n SchemasConfig;\r\n };\r\n"],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_userResolver","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/middleware/userResolver/index.ts"],"sourcesContent":["export * from './userResolver';\n"],"mappings":";;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,aAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,aAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,aAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_userResolver","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/middleware/userResolver/index.ts"],"sourcesContent":["export * from './userResolver';\r\n"],"mappings":";;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,aAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,aAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,aAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userResolver.js","names":["_EngineError","require","_utils","namespace","userResolver","request","response","next","id","user","EngineError","message","data","reportDebug"],"sources":["../../../src/middleware/userResolver/userResolver.ts"],"sourcesContent":["import { Request, Response, NextFunction } from 'express';\nimport { EngineError } from 'entities/EngineError';\nimport { reportDebug } from 'utils';\n\nconst namespace = 'engine:middleware:userResolver';\n\n/** Fetch the user previously identified by a JWT and adds his data to the request.user object */\nexport async function userResolver(\n request: Request,\n response: Response,\n next: NextFunction\n): Promise<void> {\n const id = request.user?.id;\n if (!id)\n throw new EngineError({\n message: 'Could not resolve user as the request is missing his ID'\n });\n const user = { user: 'ram', id };\n if (!user)\n throw new EngineError({\n message: 'Could not resolve user as it could not be fetched',\n data: { id }\n });\n reportDebug({\n namespace,\n message: 'Resolved user based on his token',\n data: { user, request: request.user }\n });\n request.user = {\n ...request?.user,\n ...user\n };\n\n next();\n}\n"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA,MAAME,SAAS,GAAG,gCAAgC;;AAElD;AACO,eAAeC,YAAYA,CAChCC,OAAgB,EAChBC,QAAkB,EAClBC,IAAkB,EACH;EACf,MAAMC,EAAE,GAAGH,OAAO,CAACI,IAAI,EAAED,EAAE;EAC3B,IAAI,CAACA,EAAE,EACL,MAAM,IAAIE,wBAAW,CAAC;IACpBC,OAAO,EAAE;EACX,CAAC,CAAC;EACJ,MAAMF,IAAI,GAAG;IAAEA,IAAI,EAAE,KAAK;IAAED;EAAG,CAAC;EAChC,IAAI,CAACC,IAAI,EACP,MAAM,IAAIC,wBAAW,CAAC;IACpBC,OAAO,EAAE,mDAAmD;IAC5DC,IAAI,EAAE;MAAEJ;IAAG;EACb,CAAC,CAAC;EACJ,IAAAK,kBAAW,EAAC;IACVV,SAAS;IACTQ,OAAO,EAAE,kCAAkC;IAC3CC,IAAI,EAAE;MAAEH,IAAI;MAAEJ,OAAO,EAAEA,OAAO,CAACI;IAAK;EACtC,CAAC,CAAC;EACFJ,OAAO,CAACI,IAAI,GAAG;IACb,GAAGJ,OAAO,EAAEI,IAAI;IAChB,GAAGA;EACL,CAAC;EAEDF,IAAI,CAAC,CAAC;AACR","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"userResolver.js","names":["_EngineError","require","_utils","namespace","userResolver","request","response","next","id","user","EngineError","message","data","reportDebug"],"sources":["../../../src/middleware/userResolver/userResolver.ts"],"sourcesContent":["import { Request, Response, NextFunction } from 'express';\r\nimport { EngineError } from 'entities/EngineError';\r\nimport { reportDebug } from 'utils';\r\n\r\nconst namespace = 'engine:middleware:userResolver';\r\n\r\n/** Fetch the user previously identified by a JWT and adds his data to the request.user object */\r\nexport async function userResolver(\r\n request: Request,\r\n response: Response,\r\n next: NextFunction\r\n): Promise<void> {\r\n const id = request.user?.id;\r\n if (!id)\r\n throw new EngineError({\r\n message: 'Could not resolve user as the request is missing his ID'\r\n });\r\n const user = { user: 'ram', id };\r\n if (!user)\r\n throw new EngineError({\r\n message: 'Could not resolve user as it could not be fetched',\r\n data: { id }\r\n });\r\n reportDebug({\r\n namespace,\r\n message: 'Resolved user based on his token',\r\n data: { user, request: request.user }\r\n });\r\n request.user = {\r\n ...request?.user,\r\n ...user\r\n };\r\n\r\n next();\r\n}\r\n"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA,MAAME,SAAS,GAAG,gCAAgC;;AAElD;AACO,eAAeC,YAAYA,CAChCC,OAAgB,EAChBC,QAAkB,EAClBC,IAAkB,EACH;EACf,MAAMC,EAAE,GAAGH,OAAO,CAACI,IAAI,EAAED,EAAE;EAC3B,IAAI,CAACA,EAAE,EACL,MAAM,IAAIE,wBAAW,CAAC;IACpBC,OAAO,EAAE;EACX,CAAC,CAAC;EACJ,MAAMF,IAAI,GAAG;IAAEA,IAAI,EAAE,KAAK;IAAED;EAAG,CAAC;EAChC,IAAI,CAACC,IAAI,EACP,MAAM,IAAIC,wBAAW,CAAC;IACpBC,OAAO,EAAE,mDAAmD;IAC5DC,IAAI,EAAE;MAAEJ;IAAG;EACb,CAAC,CAAC;EACJ,IAAAK,kBAAW,EAAC;IACVV,SAAS;IACTQ,OAAO,EAAE,kCAAkC;IAC3CC,IAAI,EAAE;MAAEH,IAAI;MAAEJ,OAAO,EAAEA,OAAO,CAACI;IAAK;EACtC,CAAC,CAAC;EACFJ,OAAO,CAACI,IAAI,GAAG;IACb,GAAGJ,OAAO,EAAEI,IAAI;IAChB,GAAGA;EACL,CAAC;EAEDF,IAAI,CAAC,CAAC;AACR","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_validate","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/middleware/validate/index.ts"],"sourcesContent":["export * from './validate';\n"],"mappings":";;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,SAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,SAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,SAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_validate","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/middleware/validate/index.ts"],"sourcesContent":["export * from './validate';\r\n"],"mappings":";;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,SAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,SAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,SAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.js","names":["_expressValidator","require","_ValidationError","validate","config","checkSchema","req","res","next","result","validationResult","isEmpty","ValidationError","exports"],"sources":["../../../src/middleware/validate/validate.ts"],"sourcesContent":["import { Request, Response, NextFunction } from 'express';\nimport {\n checkSchema,\n validationResult,\n Schema,\n ValidationChain\n} from 'express-validator';\nimport { ValidationError } from 'entities/ValidationError';\n\n/** Validate the express-validator results */\nexport const validate = (\n config: Schema\n): Array<\n ValidationChain | ((req: Request, res: Response, next: NextFunction) => void)\n> => [\n ...checkSchema(config),\n (req: Request, res: Response, next: NextFunction): void => {\n const result = validationResult(req);\n if (result.isEmpty()) {\n next();\n return;\n }\n next(new ValidationError(result));\n }\n];\n"],"mappings":";;;;;;AACA,IAAAA,iBAAA,GAAAC,OAAA;AAMA,IAAAC,gBAAA,GAAAD,OAAA;AAEA;AACO,MAAME,QAAQ,GACnBC,MAAc,IAGX,CACH,GAAG,IAAAC,6BAAW,EAACD,MAAM,CAAC,EACtB,CAACE,GAAY,EAAEC,GAAa,EAAEC,IAAkB,KAAW;EACzD,MAAMC,MAAM,GAAG,IAAAC,kCAAgB,EAACJ,GAAG,CAAC;EACpC,IAAIG,MAAM,CAACE,OAAO,CAAC,CAAC,EAAE;IACpBH,IAAI,CAAC,CAAC;IACN;EACF;EACAA,IAAI,CAAC,IAAII,gCAAe,CAACH,MAAM,CAAC,CAAC;AACnC,CAAC,CACF;AAACI,OAAA,CAAAV,QAAA,GAAAA,QAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"validate.js","names":["_expressValidator","require","_ValidationError","validate","config","checkSchema","req","res","next","result","validationResult","isEmpty","ValidationError","exports"],"sources":["../../../src/middleware/validate/validate.ts"],"sourcesContent":["import { Request, Response, NextFunction } from 'express';\r\nimport {\r\n checkSchema,\r\n validationResult,\r\n Schema,\r\n ValidationChain\r\n} from 'express-validator';\r\nimport { ValidationError } from 'entities/ValidationError';\r\n\r\n/** Validate the express-validator results */\r\nexport const validate = (\r\n config: Schema\r\n): Array<\r\n ValidationChain | ((req: Request, res: Response, next: NextFunction) => void)\r\n> => [\r\n ...checkSchema(config),\r\n (req: Request, res: Response, next: NextFunction): void => {\r\n const result = validationResult(req);\r\n if (result.isEmpty()) {\r\n next();\r\n return;\r\n }\r\n next(new ValidationError(result));\r\n }\r\n];\r\n"],"mappings":";;;;;;AACA,IAAAA,iBAAA,GAAAC,OAAA;AAMA,IAAAC,gBAAA,GAAAD,OAAA;AAEA;AACO,MAAME,QAAQ,GACnBC,MAAc,IAGX,CACH,GAAG,IAAAC,6BAAW,EAACD,MAAM,CAAC,EACtB,CAACE,GAAY,EAAEC,GAAa,EAAEC,IAAkB,KAAW;EACzD,MAAMC,MAAM,GAAG,IAAAC,kCAAgB,EAACJ,GAAG,CAAC;EACpC,IAAIG,MAAM,CAACE,OAAO,CAAC,CAAC,EAAE;IACpBH,IAAI,CAAC,CAAC;IACN;EACF;EACAA,IAAI,CAAC,IAAII,gCAAe,CAACH,MAAM,CAAC,CAAC;AACnC,CAAC,CACF;AAACI,OAAA,CAAAV,QAAA,GAAAA,QAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_version","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/middleware/version/index.ts"],"sourcesContent":["export * from './version';\n"],"mappings":";;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,QAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,QAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,QAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_version","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/middleware/version/index.ts"],"sourcesContent":["export * from './version';\r\n"],"mappings":";;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,QAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,QAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,QAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -6,9 +6,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.version = version;
|
|
7
7
|
var _express = require("express");
|
|
8
8
|
var _package = require("../../../package.json");
|
|
9
|
-
/**
|
|
10
|
-
* Path returning the version of the service
|
|
11
|
-
* @return {Router}
|
|
9
|
+
/**
|
|
10
|
+
* Path returning the version of the service
|
|
11
|
+
* @return {Router}
|
|
12
12
|
*/
|
|
13
13
|
function version() {
|
|
14
14
|
return (0, _express.Router)().use('/version', (req, res) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","names":["_express","require","_package","version","Router","use","req","res","json","process","env","BUILD_ID","engineVersion"],"sources":["../../../src/middleware/version/version.ts"],"sourcesContent":["import { Router, Request, Response } from 'express';\nimport { version as engineVersion } from '../../../package.json';\n\n/**\n * Path returning the version of the service\n * @return {Router}\n */\nexport function version(): Router {\n return Router().use('/version', (req: Request, res: Response) => {\n res.json({ version: process.env.BUILD_ID, engineVersion });\n });\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACO,SAASE,OAAOA,CAAA,EAAW;EAChC,OAAO,IAAAC,eAAM,EAAC,CAAC,CAACC,GAAG,CAAC,UAAU,EAAE,CAACC,GAAY,EAAEC,GAAa,KAAK;IAC/DA,GAAG,CAACC,IAAI,CAAC;MAAEL,OAAO,EAAEM,OAAO,CAACC,GAAG,CAACC,QAAQ;MAAEC,aAAa,EAAbA;IAAc,CAAC,CAAC;EAC5D,CAAC,CAAC;AACJ","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"version.js","names":["_express","require","_package","version","Router","use","req","res","json","process","env","BUILD_ID","engineVersion"],"sources":["../../../src/middleware/version/version.ts"],"sourcesContent":["import { Router, Request, Response } from 'express';\r\nimport { version as engineVersion } from '../../../package.json';\r\n\r\n/**\r\n * Path returning the version of the service\r\n * @return {Router}\r\n */\r\nexport function version(): Router {\r\n return Router().use('/version', (req: Request, res: Response) => {\r\n res.json({ version: process.env.BUILD_ID, engineVersion });\r\n });\r\n}\r\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACO,SAASE,OAAOA,CAAA,EAAW;EAChC,OAAO,IAAAC,eAAM,EAAC,CAAC,CAACC,GAAG,CAAC,UAAU,EAAE,CAACC,GAAY,EAAEC,GAAa,KAAK;IAC/DA,GAAG,CAACC,IAAI,CAAC;MAAEL,OAAO,EAAEM,OAAO,CAACC,GAAG,CAACC,QAAQ;MAAEC,aAAa,EAAbA;IAAc,CAAC,CAAC;EAC5D,CAAC,CAAC;AACJ","ignoreList":[]}
|
|
@@ -8,10 +8,10 @@ exports.checkEnvironment = checkEnvironment;
|
|
|
8
8
|
var _envalid = require("envalid");
|
|
9
9
|
var _EngineError = require("../../entities/EngineError");
|
|
10
10
|
var _report = require("../report");
|
|
11
|
-
/**
|
|
12
|
-
* Create an Envalid reporter
|
|
13
|
-
* @param shouldExit - should the reporter exit the process on fail
|
|
14
|
-
* @return Envalid reporter function
|
|
11
|
+
/**
|
|
12
|
+
* Create an Envalid reporter
|
|
13
|
+
* @param shouldExit - should the reporter exit the process on fail
|
|
14
|
+
* @return Envalid reporter function
|
|
15
15
|
*/
|
|
16
16
|
function createReporter(shouldExit) {
|
|
17
17
|
return reporter => {
|
|
@@ -35,11 +35,11 @@ function createReporter(shouldExit) {
|
|
|
35
35
|
};
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
/**
|
|
39
|
-
* Ensure the process.env is valid using Envalid.
|
|
40
|
-
* if the validation fails it will log a helpful EngineError.emergency()
|
|
41
|
-
* and exit the process with status-code 1.
|
|
42
|
-
* @param validators - Envalid validators
|
|
38
|
+
/**
|
|
39
|
+
* Ensure the process.env is valid using Envalid.
|
|
40
|
+
* if the validation fails it will log a helpful EngineError.emergency()
|
|
41
|
+
* and exit the process with status-code 1.
|
|
42
|
+
* @param validators - Envalid validators
|
|
43
43
|
*/
|
|
44
44
|
function checkEnvironment(validators = {}) {
|
|
45
45
|
(0, _envalid.cleanEnv)(process.env, validators, {
|
|
@@ -47,10 +47,10 @@ function checkEnvironment(validators = {}) {
|
|
|
47
47
|
});
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
-
/**
|
|
51
|
-
* Ensure the process.env is valid using Envalid.
|
|
52
|
-
* if the validation fails it will throw a EngineError.emergency()
|
|
53
|
-
* @param validators - Envalid validators
|
|
50
|
+
/**
|
|
51
|
+
* Ensure the process.env is valid using Envalid.
|
|
52
|
+
* if the validation fails it will throw a EngineError.emergency()
|
|
53
|
+
* @param validators - Envalid validators
|
|
54
54
|
*/
|
|
55
55
|
function assertEnvironment(validators = {}) {
|
|
56
56
|
(0, _envalid.cleanEnv)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_envalid","require","_EngineError","_report","createReporter","shouldExit","reporter","errors","failedChecks","Object","keys","message","join","length","reportError","EngineError","data","process","exit","checkEnvironment","validators","cleanEnv","env","assertEnvironment"],"sources":["../../../src/utils/checkEnvironment/index.ts"],"sourcesContent":["import { cleanEnv, ReporterOptions } from 'envalid';\nimport { EngineError } from 'entities/EngineError';\nimport { reportError } from 'utils/report';\n\n/**\n * Create an Envalid reporter\n * @param shouldExit - should the reporter exit the process on fail\n * @return Envalid reporter function\n */\nfunction createReporter(shouldExit: boolean) {\n return (reporter: ReporterOptions<unknown>): void => {\n const { errors } = reporter;\n const failedChecks = Object.keys(errors);\n const message = failedChecks.join(', ');\n if (failedChecks.length == 0) return;\n if (shouldExit) {\n reportError(\n new EngineError({\n message: `Check Environment Failed: ${message}`,\n data: failedChecks\n })\n );\n process.exit(1);\n }\n throw new EngineError({\n message: `Check Environment Failed: ${message}`,\n data: failedChecks\n });\n };\n}\n\n/**\n * Ensure the process.env is valid using Envalid.\n * if the validation fails it will log a helpful EngineError.emergency()\n * and exit the process with status-code 1.\n * @param validators - Envalid validators\n */\nexport function checkEnvironment(validators = {}): void {\n cleanEnv(process.env, validators, { reporter: createReporter(true) });\n}\n\n/**\n * Ensure the process.env is valid using Envalid.\n * if the validation fails it will throw a EngineError.emergency()\n * @param validators - Envalid validators\n */\nexport function assertEnvironment(validators = {}): void {\n cleanEnv({ ...process.env }, validators, { reporter: createReporter(false) });\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA,SAASG,cAAcA,CAACC,UAAmB,EAAE;EAC3C,OAAQC,QAAkC,IAAW;IACnD,MAAM;MAAEC;IAAO,CAAC,GAAGD,QAAQ;IAC3B,MAAME,YAAY,GAAGC,MAAM,CAACC,IAAI,CAACH,MAAM,CAAC;IACxC,MAAMI,OAAO,GAAGH,YAAY,CAACI,IAAI,CAAC,IAAI,CAAC;IACvC,IAAIJ,YAAY,CAACK,MAAM,IAAI,CAAC,EAAE;IAC9B,IAAIR,UAAU,EAAE;MACd,IAAAS,mBAAW,EACT,IAAIC,wBAAW,CAAC;QACdJ,OAAO,EAAE,8BAA8BA,OAAO,EAAE;QAChDK,IAAI,EAAER;MACR,CAAC,CACH,CAAC;MACDS,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;IACjB;IACA,MAAM,IAAIH,wBAAW,CAAC;MACpBJ,OAAO,EAAE,8BAA8BA,OAAO,EAAE;MAChDK,IAAI,EAAER;IACR,CAAC,CAAC;EACJ,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,SAASW,gBAAgBA,CAACC,UAAU,GAAG,CAAC,CAAC,EAAQ;EACtD,IAAAC,iBAAQ,EAACJ,OAAO,CAACK,GAAG,EAAEF,UAAU,EAAE;IAAEd,QAAQ,EAAEF,cAAc,CAAC,IAAI;EAAE,CAAC,CAAC;AACvE;;AAEA;AACA;AACA;AACA;AACA;AACO,SAASmB,iBAAiBA,CAACH,UAAU,GAAG,CAAC,CAAC,EAAQ;EACvD,IAAAC,iBAAQ,EAAC;IAAE,GAAGJ,OAAO,CAACK;EAAI,CAAC,EAAEF,UAAU,EAAE;IAAEd,QAAQ,EAAEF,cAAc,CAAC,KAAK;EAAE,CAAC,CAAC;AAC/E","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_envalid","require","_EngineError","_report","createReporter","shouldExit","reporter","errors","failedChecks","Object","keys","message","join","length","reportError","EngineError","data","process","exit","checkEnvironment","validators","cleanEnv","env","assertEnvironment"],"sources":["../../../src/utils/checkEnvironment/index.ts"],"sourcesContent":["import { cleanEnv, ReporterOptions } from 'envalid';\r\nimport { EngineError } from 'entities/EngineError';\r\nimport { reportError } from 'utils/report';\r\n\r\n/**\r\n * Create an Envalid reporter\r\n * @param shouldExit - should the reporter exit the process on fail\r\n * @return Envalid reporter function\r\n */\r\nfunction createReporter(shouldExit: boolean) {\r\n return (reporter: ReporterOptions<unknown>): void => {\r\n const { errors } = reporter;\r\n const failedChecks = Object.keys(errors);\r\n const message = failedChecks.join(', ');\r\n if (failedChecks.length == 0) return;\r\n if (shouldExit) {\r\n reportError(\r\n new EngineError({\r\n message: `Check Environment Failed: ${message}`,\r\n data: failedChecks\r\n })\r\n );\r\n process.exit(1);\r\n }\r\n throw new EngineError({\r\n message: `Check Environment Failed: ${message}`,\r\n data: failedChecks\r\n });\r\n };\r\n}\r\n\r\n/**\r\n * Ensure the process.env is valid using Envalid.\r\n * if the validation fails it will log a helpful EngineError.emergency()\r\n * and exit the process with status-code 1.\r\n * @param validators - Envalid validators\r\n */\r\nexport function checkEnvironment(validators = {}): void {\r\n cleanEnv(process.env, validators, { reporter: createReporter(true) });\r\n}\r\n\r\n/**\r\n * Ensure the process.env is valid using Envalid.\r\n * if the validation fails it will throw a EngineError.emergency()\r\n * @param validators - Envalid validators\r\n */\r\nexport function assertEnvironment(validators = {}): void {\r\n cleanEnv({ ...process.env }, validators, { reporter: createReporter(false) });\r\n}\r\n"],"mappings":";;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA,SAASG,cAAcA,CAACC,UAAmB,EAAE;EAC3C,OAAQC,QAAkC,IAAW;IACnD,MAAM;MAAEC;IAAO,CAAC,GAAGD,QAAQ;IAC3B,MAAME,YAAY,GAAGC,MAAM,CAACC,IAAI,CAACH,MAAM,CAAC;IACxC,MAAMI,OAAO,GAAGH,YAAY,CAACI,IAAI,CAAC,IAAI,CAAC;IACvC,IAAIJ,YAAY,CAACK,MAAM,IAAI,CAAC,EAAE;IAC9B,IAAIR,UAAU,EAAE;MACd,IAAAS,mBAAW,EACT,IAAIC,wBAAW,CAAC;QACdJ,OAAO,EAAE,8BAA8BA,OAAO,EAAE;QAChDK,IAAI,EAAER;MACR,CAAC,CACH,CAAC;MACDS,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;IACjB;IACA,MAAM,IAAIH,wBAAW,CAAC;MACpBJ,OAAO,EAAE,8BAA8BA,OAAO,EAAE;MAChDK,IAAI,EAAER;IACR,CAAC,CAAC;EACJ,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,SAASW,gBAAgBA,CAACC,UAAU,GAAG,CAAC,CAAC,EAAQ;EACtD,IAAAC,iBAAQ,EAACJ,OAAO,CAACK,GAAG,EAAEF,UAAU,EAAE;IAAEd,QAAQ,EAAEF,cAAc,CAAC,IAAI;EAAE,CAAC,CAAC;AACvE;;AAEA;AACA;AACA;AACA;AACA;AACO,SAASmB,iBAAiBA,CAACH,UAAU,GAAG,CAAC,CAAC,EAAQ;EACvD,IAAAC,iBAAQ,EAAC;IAAE,GAAGJ,OAAO,CAACK;EAAI,CAAC,EAAEF,UAAU,EAAE;IAAEd,QAAQ,EAAEF,cAAc,CAAC,KAAK;EAAE,CAAC,CAAC;AAC/E","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createHttpServer.js","names":["_fs","_interopRequireDefault","require","_http","_https","_createHttpServer","createHttpServer","handler","validateHttpEnvironment","process","env","TLS_SERVER_KEY","TLS_SERVER_CERT","createSecureServer","key","fs","readFileSync","passphrase","TLS_SERVER_KEY_PASSPHRASE","cert","ca","TLS_CA","undefined","requestCert","rejectUnauthorized","createServer"],"sources":["../../../src/utils/createHttpServer/createHttpServer.ts"],"sourcesContent":["import fs from 'fs';\nimport { createServer, RequestListener, Server } from 'http';\nimport {\n createServer as createSecureServer,\n Server as SecureServer\n} from 'https';\nimport { Application } from 'express';\nimport { validateHttpEnvironment } from './createHttpServer.validate';\n\n/** Create and configure an http/https server */\nexport function createHttpServer(\n handler?: Application | RequestListener\n): Server | SecureServer {\n // Validate the environment variables\n validateHttpEnvironment();\n // Create a https server if env var are specified\n if (process.env.TLS_SERVER_KEY && process.env.TLS_SERVER_CERT) {\n return createSecureServer(\n {\n key: fs.readFileSync(process.env.TLS_SERVER_KEY),\n passphrase: process.env.TLS_SERVER_KEY_PASSPHRASE,\n cert: fs.readFileSync(process.env.TLS_SERVER_CERT),\n ca: process.env.TLS_CA\n ? fs.readFileSync(process.env.TLS_CA)\n : undefined,\n requestCert: true,\n rejectUnauthorized: false\n },\n handler\n );\n } else {\n return createServer(handler);\n }\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,GAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAKA,IAAAG,iBAAA,GAAAH,OAAA;AAEA;AACO,SAASI,gBAAgBA,CAC9BC,OAAuC,EAChB;EACvB;EACA,IAAAC,yCAAuB,EAAC,CAAC;EACzB;EACA,IAAIC,OAAO,CAACC,GAAG,CAACC,cAAc,IAAIF,OAAO,CAACC,GAAG,CAACE,eAAe,EAAE;IAC7D,OAAO,IAAAC,mBAAkB,EACvB;MACEC,GAAG,EAAEC,WAAE,CAACC,YAAY,CAACP,OAAO,CAACC,GAAG,CAACC,cAAc,CAAC;MAChDM,UAAU,EAAER,OAAO,CAACC,GAAG,CAACQ,yBAAyB;MACjDC,IAAI,EAAEJ,WAAE,CAACC,YAAY,CAACP,OAAO,CAACC,GAAG,CAACE,eAAe,CAAC;MAClDQ,EAAE,EAAEX,OAAO,CAACC,GAAG,CAACW,MAAM,GAClBN,WAAE,CAACC,YAAY,CAACP,OAAO,CAACC,GAAG,CAACW,MAAM,CAAC,GACnCC,SAAS;MACbC,WAAW,EAAE,IAAI;MACjBC,kBAAkB,EAAE;IACtB,CAAC,EACDjB,OACF,CAAC;EACH,CAAC,MAAM;IACL,OAAO,IAAAkB,kBAAY,EAAClB,OAAO,CAAC;EAC9B;AACF","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"createHttpServer.js","names":["_fs","_interopRequireDefault","require","_http","_https","_createHttpServer","createHttpServer","handler","validateHttpEnvironment","process","env","TLS_SERVER_KEY","TLS_SERVER_CERT","createSecureServer","key","fs","readFileSync","passphrase","TLS_SERVER_KEY_PASSPHRASE","cert","ca","TLS_CA","undefined","requestCert","rejectUnauthorized","createServer"],"sources":["../../../src/utils/createHttpServer/createHttpServer.ts"],"sourcesContent":["import fs from 'fs';\r\nimport { createServer, RequestListener, Server } from 'http';\r\nimport {\r\n createServer as createSecureServer,\r\n Server as SecureServer\r\n} from 'https';\r\nimport { Application } from 'express';\r\nimport { validateHttpEnvironment } from './createHttpServer.validate';\r\n\r\n/** Create and configure an http/https server */\r\nexport function createHttpServer(\r\n handler?: Application | RequestListener\r\n): Server | SecureServer {\r\n // Validate the environment variables\r\n validateHttpEnvironment();\r\n // Create a https server if env var are specified\r\n if (process.env.TLS_SERVER_KEY && process.env.TLS_SERVER_CERT) {\r\n return createSecureServer(\r\n {\r\n key: fs.readFileSync(process.env.TLS_SERVER_KEY),\r\n passphrase: process.env.TLS_SERVER_KEY_PASSPHRASE,\r\n cert: fs.readFileSync(process.env.TLS_SERVER_CERT),\r\n ca: process.env.TLS_CA\r\n ? fs.readFileSync(process.env.TLS_CA)\r\n : undefined,\r\n requestCert: true,\r\n rejectUnauthorized: false\r\n },\r\n handler\r\n );\r\n } else {\r\n return createServer(handler);\r\n }\r\n}\r\n"],"mappings":";;;;;;;AAAA,IAAAA,GAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAKA,IAAAG,iBAAA,GAAAH,OAAA;AAEA;AACO,SAASI,gBAAgBA,CAC9BC,OAAuC,EAChB;EACvB;EACA,IAAAC,yCAAuB,EAAC,CAAC;EACzB;EACA,IAAIC,OAAO,CAACC,GAAG,CAACC,cAAc,IAAIF,OAAO,CAACC,GAAG,CAACE,eAAe,EAAE;IAC7D,OAAO,IAAAC,mBAAkB,EACvB;MACEC,GAAG,EAAEC,WAAE,CAACC,YAAY,CAACP,OAAO,CAACC,GAAG,CAACC,cAAc,CAAC;MAChDM,UAAU,EAAER,OAAO,CAACC,GAAG,CAACQ,yBAAyB;MACjDC,IAAI,EAAEJ,WAAE,CAACC,YAAY,CAACP,OAAO,CAACC,GAAG,CAACE,eAAe,CAAC;MAClDQ,EAAE,EAAEX,OAAO,CAACC,GAAG,CAACW,MAAM,GAClBN,WAAE,CAACC,YAAY,CAACP,OAAO,CAACC,GAAG,CAACW,MAAM,CAAC,GACnCC,SAAS;MACbC,WAAW,EAAE,IAAI;MACjBC,kBAAkB,EAAE;IACtB,CAAC,EACDjB,OACF,CAAC;EACH,CAAC,MAAM;IACL,OAAO,IAAAkB,kBAAY,EAAClB,OAAO,CAAC;EAC9B;AACF","ignoreList":[]}
|
|
@@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.validateHttpEnvironment = validateHttpEnvironment;
|
|
7
7
|
var _ = require("./..");
|
|
8
|
-
/**
|
|
9
|
-
* Environment variable validator for the creation of a HTTP(S) server
|
|
8
|
+
/**
|
|
9
|
+
* Environment variable validator for the creation of a HTTP(S) server
|
|
10
10
|
*/
|
|
11
11
|
function validateHttpEnvironment() {
|
|
12
12
|
// We only check if there is at least the host specified
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createHttpServer.validate.js","names":["_","require","validateHttpEnvironment","process","env","TLS_SERVER_CERT","assertEnvironment","TLS_SERVER_KEY","envAssert","isPath","TLS_SERVER_KEY_PASSPHRASE","isString","TLS_CA"],"sources":["../../../src/utils/createHttpServer/createHttpServer.validate.ts"],"sourcesContent":["import { assertEnvironment, envAssert } from 'utils';\n\n/**\n * Environment variable validator for the creation of a HTTP(S) server\n */\nexport function validateHttpEnvironment(): void {\n // We only check if there is at least the host specified\n if (process.env.TLS_SERVER_CERT && process.env.TLS_SERVER_CERT) {\n assertEnvironment({ TLS_SERVER_KEY: envAssert.isPath() });\n assertEnvironment({ TLS_SERVER_CERT: envAssert.isPath() });\n // Optional variables\n if (process.env.TLS_SERVER_KEY_PASSPHRASE) {\n assertEnvironment({ TLS_SERVER_KEY_PASSPHRASE: envAssert.isString() });\n }\n if (process.env.TLS_CA) assertEnvironment({ TLS_CA: envAssert.isPath() });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACO,SAASC,uBAAuBA,CAAA,EAAS;EAC9C;EACA,IAAIC,OAAO,CAACC,GAAG,CAACC,eAAe,IAAIF,OAAO,CAACC,GAAG,CAACC,eAAe,EAAE;IAC9D,IAAAC,mBAAiB,EAAC;MAAEC,cAAc,EAAEC,WAAS,CAACC,MAAM,CAAC;IAAE,CAAC,CAAC;IACzD,IAAAH,mBAAiB,EAAC;MAAED,eAAe,EAAEG,WAAS,CAACC,MAAM,CAAC;IAAE,CAAC,CAAC;IAC1D;IACA,IAAIN,OAAO,CAACC,GAAG,CAACM,yBAAyB,EAAE;MACzC,IAAAJ,mBAAiB,EAAC;QAAEI,yBAAyB,EAAEF,WAAS,CAACG,QAAQ,CAAC;MAAE,CAAC,CAAC;IACxE;IACA,IAAIR,OAAO,CAACC,GAAG,CAACQ,MAAM,EAAE,IAAAN,mBAAiB,EAAC;MAAEM,MAAM,EAAEJ,WAAS,CAACC,MAAM,CAAC;IAAE,CAAC,CAAC;EAC3E;AACF","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"createHttpServer.validate.js","names":["_","require","validateHttpEnvironment","process","env","TLS_SERVER_CERT","assertEnvironment","TLS_SERVER_KEY","envAssert","isPath","TLS_SERVER_KEY_PASSPHRASE","isString","TLS_CA"],"sources":["../../../src/utils/createHttpServer/createHttpServer.validate.ts"],"sourcesContent":["import { assertEnvironment, envAssert } from 'utils';\r\n\r\n/**\r\n * Environment variable validator for the creation of a HTTP(S) server\r\n */\r\nexport function validateHttpEnvironment(): void {\r\n // We only check if there is at least the host specified\r\n if (process.env.TLS_SERVER_CERT && process.env.TLS_SERVER_CERT) {\r\n assertEnvironment({ TLS_SERVER_KEY: envAssert.isPath() });\r\n assertEnvironment({ TLS_SERVER_CERT: envAssert.isPath() });\r\n // Optional variables\r\n if (process.env.TLS_SERVER_KEY_PASSPHRASE) {\r\n assertEnvironment({ TLS_SERVER_KEY_PASSPHRASE: envAssert.isString() });\r\n }\r\n if (process.env.TLS_CA) assertEnvironment({ TLS_CA: envAssert.isPath() });\r\n }\r\n}\r\n"],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACO,SAASC,uBAAuBA,CAAA,EAAS;EAC9C;EACA,IAAIC,OAAO,CAACC,GAAG,CAACC,eAAe,IAAIF,OAAO,CAACC,GAAG,CAACC,eAAe,EAAE;IAC9D,IAAAC,mBAAiB,EAAC;MAAEC,cAAc,EAAEC,WAAS,CAACC,MAAM,CAAC;IAAE,CAAC,CAAC;IACzD,IAAAH,mBAAiB,EAAC;MAAED,eAAe,EAAEG,WAAS,CAACC,MAAM,CAAC;IAAE,CAAC,CAAC;IAC1D;IACA,IAAIN,OAAO,CAACC,GAAG,CAACM,yBAAyB,EAAE;MACzC,IAAAJ,mBAAiB,EAAC;QAAEI,yBAAyB,EAAEF,WAAS,CAACG,QAAQ,CAAC;MAAE,CAAC,CAAC;IACxE;IACA,IAAIR,OAAO,CAACC,GAAG,CAACQ,MAAM,EAAE,IAAAN,mBAAiB,EAAC;MAAEM,MAAM,EAAEJ,WAAS,CAACC,MAAM,CAAC;IAAE,CAAC,CAAC;EAC3E;AACF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_createHttpServer","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/utils/createHttpServer/index.ts"],"sourcesContent":["export * from './createHttpServer';\n"],"mappings":";;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,iBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,iBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,iBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_createHttpServer","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/utils/createHttpServer/index.ts"],"sourcesContent":["export * from './createHttpServer';\r\n"],"mappings":";;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,iBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,iBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,iBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSortedObject.js","names":["createSortedObject","data","Object","Error","result","keys","sort","forEach","key","value","Array"],"sources":["../../../src/utils/createSortedObject/createSortedObject.ts"],"sourcesContent":["/** Deep sort the objects keys alphabetically */\nexport function createSortedObject<T>(data: T): T {\n if (!(data instanceof Object)) throw new Error('Non');\n const result: Record<string, unknown> = {};\n Object.keys(data)\n .sort()\n .forEach((key: string) => {\n const value = (data as Record<string, unknown>)[key];\n if (\n typeof value !== 'object' ||\n value instanceof Array ||\n value === null\n ) {\n result[key] = value;\n } else {\n result[key] = createSortedObject(value);\n }\n });\n return result as T;\n}\n"],"mappings":";;;;;;AAAA;AACO,SAASA,kBAAkBA,CAAIC,IAAO,EAAK;EAChD,IAAI,EAAEA,IAAI,YAAYC,MAAM,CAAC,EAAE,MAAM,IAAIC,KAAK,CAAC,KAAK,CAAC;EACrD,MAAMC,MAA+B,GAAG,CAAC,CAAC;EAC1CF,MAAM,CAACG,IAAI,CAACJ,IAAI,CAAC,CACdK,IAAI,CAAC,CAAC,CACNC,OAAO,CAAEC,GAAW,IAAK;IACxB,MAAMC,KAAK,GAAIR,IAAI,CAA6BO,GAAG,CAAC;IACpD,IACE,OAAOC,KAAK,KAAK,QAAQ,IACzBA,KAAK,YAAYC,KAAK,IACtBD,KAAK,KAAK,IAAI,EACd;MACAL,MAAM,CAACI,GAAG,CAAC,GAAGC,KAAK;IACrB,CAAC,MAAM;MACLL,MAAM,CAACI,GAAG,CAAC,GAAGR,kBAAkB,CAACS,KAAK,CAAC;IACzC;EACF,CAAC,CAAC;EACJ,OAAOL,MAAM;AACf","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"createSortedObject.js","names":["createSortedObject","data","Object","Error","result","keys","sort","forEach","key","value","Array"],"sources":["../../../src/utils/createSortedObject/createSortedObject.ts"],"sourcesContent":["/** Deep sort the objects keys alphabetically */\r\nexport function createSortedObject<T>(data: T): T {\r\n if (!(data instanceof Object)) throw new Error('Non');\r\n const result: Record<string, unknown> = {};\r\n Object.keys(data)\r\n .sort()\r\n .forEach((key: string) => {\r\n const value = (data as Record<string, unknown>)[key];\r\n if (\r\n typeof value !== 'object' ||\r\n value instanceof Array ||\r\n value === null\r\n ) {\r\n result[key] = value;\r\n } else {\r\n result[key] = createSortedObject(value);\r\n }\r\n });\r\n return result as T;\r\n}\r\n"],"mappings":";;;;;;AAAA;AACO,SAASA,kBAAkBA,CAAIC,IAAO,EAAK;EAChD,IAAI,EAAEA,IAAI,YAAYC,MAAM,CAAC,EAAE,MAAM,IAAIC,KAAK,CAAC,KAAK,CAAC;EACrD,MAAMC,MAA+B,GAAG,CAAC,CAAC;EAC1CF,MAAM,CAACG,IAAI,CAACJ,IAAI,CAAC,CACdK,IAAI,CAAC,CAAC,CACNC,OAAO,CAAEC,GAAW,IAAK;IACxB,MAAMC,KAAK,GAAIR,IAAI,CAA6BO,GAAG,CAAC;IACpD,IACE,OAAOC,KAAK,KAAK,QAAQ,IACzBA,KAAK,YAAYC,KAAK,IACtBD,KAAK,KAAK,IAAI,EACd;MACAL,MAAM,CAACI,GAAG,CAAC,GAAGC,KAAK;IACrB,CAAC,MAAM;MACLL,MAAM,CAACI,GAAG,CAAC,GAAGR,kBAAkB,CAACS,KAAK,CAAC;IACzC;EACF,CAAC,CAAC;EACJ,OAAOL,MAAM;AACf","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_createSortedObject","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/utils/createSortedObject/index.ts"],"sourcesContent":["export * from './createSortedObject';\n"],"mappings":";;;;;AAAA,IAAAA,mBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,mBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,mBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,mBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_createSortedObject","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/utils/createSortedObject/index.ts"],"sourcesContent":["export * from './createSortedObject';\r\n"],"mappings":";;;;;AAAA,IAAAA,mBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,mBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,mBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,mBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -165,10 +165,10 @@ async function rollbackMigrations() {
|
|
|
165
165
|
});
|
|
166
166
|
}
|
|
167
167
|
|
|
168
|
-
/**
|
|
169
|
-
* Recreate the whole database
|
|
170
|
-
* Quick way to make sure that we are working on a clean database
|
|
171
|
-
* /!\ Should only be used when running tests
|
|
168
|
+
/**
|
|
169
|
+
* Recreate the whole database
|
|
170
|
+
* Quick way to make sure that we are working on a clean database
|
|
171
|
+
* /!\ Should only be used when running tests
|
|
172
172
|
*/
|
|
173
173
|
async function testRecreateDB(options = {}) {
|
|
174
174
|
if (!_Sequelize.sequelize) throw new _EngineError.EngineError({
|
|
@@ -179,10 +179,10 @@ async function testRecreateDB(options = {}) {
|
|
|
179
179
|
if (!options.clean) await runPendingMigrations();
|
|
180
180
|
}
|
|
181
181
|
|
|
182
|
-
/**
|
|
183
|
-
* Empty all the schemas in the database
|
|
184
|
-
* Quick way to flush the database data while keep the structure
|
|
185
|
-
* /!\ Should only be used when running tests
|
|
182
|
+
/**
|
|
183
|
+
* Empty all the schemas in the database
|
|
184
|
+
* Quick way to flush the database data while keep the structure
|
|
185
|
+
* /!\ Should only be used when running tests
|
|
186
186
|
*/
|
|
187
187
|
async function testClearDB(options = {}) {
|
|
188
188
|
if (!_Sequelize.sequelize) throw new _EngineError.EngineError({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dbMigration.js","names":["_fs","require","_path","_umzug","_migrateMetadataTable","_models","_EngineError","_Sequelize","_report","_semverCompare","namespace","getMigrationPaths","prodDefaultPath","join","process","cwd","devDefaultPath","path","env","DB_MIGRATIONS_DIR","NODE_ENV","filter","existsSync","lstatSync","isDirectory","reportDebug","message","data","prodPath","devPath","customPath","map","p","runPendingMigrations","sequelize","EngineError","migrateMetadataTable","migrationPaths","length","forEach","migrator","Umzug","migrations","glob","resolve","name","context","migration","up","down","getQueryInterface","storage","SequelizeStorage","logger","console","log","rollbackMigrations","BUILD_ID","SequelizeMeta","findAll","order","raw","rollbackUntil","find","version","semverCompare","buildId","to","testRecreateDB","options","query","SQL_TYPE","clean","testClearDB","transaction","clearDbTransaction","t","model","Object","keys","models","includeMetadata","table","tableName"],"sources":["../../../src/utils/dbMigration/dbMigration.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-require-imports */\n// Register ts-node at the top of runMigrations.ts\nrequire('ts-node/register');\n\nimport { existsSync, lstatSync } from 'fs';\nimport { join } from 'path';\nimport { Sequelize, Transaction } from 'sequelize';\nimport { Umzug, SequelizeStorage } from 'umzug';\nimport { ClearDbOptions, RecreateDbOptions } from './dbMigration.types';\nimport { migrateMetadataTable } from './migrateMetadataTable';\nimport { SequelizeMeta } from 'db/models';\nimport { EngineError } from 'entities/EngineError';\nimport { sequelize } from 'entities/Sequelize';\nimport { reportDebug } from 'utils/report';\nimport { semverCompare } from 'utils/semverCompare';\n\nconst namespace = 'engine:utils:dbMigration';\n\nfunction getMigrationPaths(): Array<string> | undefined {\n // We look between possibilities for the first directory that exists and matches our expectations\n // First a user specified one, then the production default, then the development default\n const prodDefaultPath = join(process.cwd(), './dist/db/migrations');\n const devDefaultPath = join(process.cwd(), './src/db/migrations');\n const path = [\n process.env.DB_MIGRATIONS_DIR,\n process.env.NODE_ENV === 'prod' ? prodDefaultPath : devDefaultPath\n ].filter((path) => path && existsSync(path) && lstatSync(path).isDirectory());\n reportDebug({\n namespace,\n message: 'Obtaining Umzug migration options',\n data: {\n path,\n prodPath: prodDefaultPath,\n devPath: devDefaultPath,\n customPath: process.env.DB_MIGRATIONS_DIR\n }\n });\n return path.map((p) =>\n process.env.NODE_ENV === 'prod' ? `${p}/*.js` : `${p}/*.ts`\n );\n}\n\n/** Run all the non-executed migrations one by one */\nexport async function runPendingMigrations(): Promise<void> {\n if (!sequelize)\n throw new EngineError({ message: 'Sequelize is not initialized' });\n // First make sure that the metadata table is up to date\n await migrateMetadataTable(sequelize);\n const migrationPaths = getMigrationPaths();\n\n if (!migrationPaths || migrationPaths.length <= 0) {\n reportDebug({\n namespace,\n message: 'No valid migration paths found.',\n data: { migrationPaths }\n });\n return;\n }\n\n migrationPaths?.forEach(async (path) => {\n const migrator = new Umzug({\n migrations: {\n glob: path,\n resolve: ({ name, path, context }) => {\n // Use require to import the migration file\n const migration = require(path || '');\n return {\n name,\n up: async () => migration.up(context),\n down: async () => migration.down(context)\n };\n }\n },\n context: sequelize.getQueryInterface(),\n storage: new SequelizeStorage({ sequelize }),\n logger: console\n });\n\n reportDebug({\n namespace,\n message: 'Starting pending database migrations',\n data: { path }\n });\n await migrator.up();\n console.log('Db Migration Completed');\n });\n}\n\n/** Rollback all migrations up to a specified target version */\nexport async function rollbackMigrations(): Promise<void> {\n if (!sequelize)\n throw new EngineError({ message: 'Sequelize is not initialized' });\n if (!process.env.BUILD_ID)\n throw new EngineError({ message: 'BUILD_ID is not defined' });\n\n // Fetch executed migrations in ascending order\n const migrations = await SequelizeMeta.findAll({\n order: [['name', 'ASC']],\n raw: true\n });\n const rollbackUntil = migrations.find(\n (migration) =>\n migration.version &&\n semverCompare(migration.version, process.env.BUILD_ID as string) === 1\n );\n\n if (!rollbackUntil) {\n reportDebug({\n namespace,\n message: 'No rollback target found for the current BUILD_ID.',\n data: { buildId: process.env.BUILD_ID }\n });\n return;\n }\n\n const migrationPaths = getMigrationPaths();\n\n if (!migrationPaths || migrationPaths.length <= 0) {\n reportDebug({\n namespace,\n message: 'No valid migration paths found for rollback.',\n data: { migrationPaths }\n });\n return;\n }\n\n migrationPaths.forEach(async (path) => {\n const migrator = new Umzug({\n migrations: {\n glob: path,\n resolve: ({ name, path, context }) => {\n const migration = require(path || '');\n return {\n name,\n up: async () => migration.up(context),\n down: async () => migration.down(context)\n };\n }\n },\n context: sequelize.getQueryInterface(),\n storage: new SequelizeStorage({ sequelize }),\n logger: console\n });\n\n reportDebug({\n namespace,\n message: `Rolling back migrations up to: ${rollbackUntil.name}`,\n data: { path }\n });\n\n await migrator.down({ to: rollbackUntil.name });\n });\n}\n\n/**\n * Recreate the whole database\n * Quick way to make sure that we are working on a clean database\n * /!\\ Should only be used when running tests\n */\nexport async function testRecreateDB(\n options: RecreateDbOptions = {}\n): Promise<void> {\n if (!sequelize)\n throw new EngineError({ message: 'Sequelize is not initialized' });\n await sequelize.query(\n `DROP SCHEMA public${process.env.SQL_TYPE === 'postgres' ? ' CASCADE' : ''}`\n );\n await sequelize.query(`CREATE SCHEMA public`);\n if (!options.clean) await runPendingMigrations();\n}\n\n/**\n * Empty all the schemas in the database\n * Quick way to flush the database data while keep the structure\n * /!\\ Should only be used when running tests\n */\nexport async function testClearDB(options: ClearDbOptions = {}): Promise<void> {\n if (!sequelize)\n throw new EngineError({ message: 'Sequelize is not initialized' });\n await sequelize.transaction(clearDbTransaction(sequelize, options));\n}\n\n/** DB clearing transaction */\nfunction clearDbTransaction(sequelize: Sequelize, options: ClearDbOptions) {\n return async (t: Transaction): Promise<void> => {\n for (const model of Object.keys(sequelize.models)) {\n // We ignore the migration metadata schema\n if (!options.includeMetadata && model === 'sequelizeMeta') continue;\n const table = sequelize.models[model].tableName;\n await sequelize.query(\n `TRUNCATE ${table}${process.env.SQL_TYPE === 'postgres' ? ' CASCADE' : ''};`,\n {\n raw: true,\n transaction: t\n }\n );\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"dbMigration.js","names":["_fs","require","_path","_umzug","_migrateMetadataTable","_models","_EngineError","_Sequelize","_report","_semverCompare","namespace","getMigrationPaths","prodDefaultPath","join","process","cwd","devDefaultPath","path","env","DB_MIGRATIONS_DIR","NODE_ENV","filter","existsSync","lstatSync","isDirectory","reportDebug","message","data","prodPath","devPath","customPath","map","p","runPendingMigrations","sequelize","EngineError","migrateMetadataTable","migrationPaths","length","forEach","migrator","Umzug","migrations","glob","resolve","name","context","migration","up","down","getQueryInterface","storage","SequelizeStorage","logger","console","log","rollbackMigrations","BUILD_ID","SequelizeMeta","findAll","order","raw","rollbackUntil","find","version","semverCompare","buildId","to","testRecreateDB","options","query","SQL_TYPE","clean","testClearDB","transaction","clearDbTransaction","t","model","Object","keys","models","includeMetadata","table","tableName"],"sources":["../../../src/utils/dbMigration/dbMigration.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-require-imports */\r\n// Register ts-node at the top of runMigrations.ts\r\nrequire('ts-node/register');\r\n\r\nimport { existsSync, lstatSync } from 'fs';\r\nimport { join } from 'path';\r\nimport { Sequelize, Transaction } from 'sequelize';\r\nimport { Umzug, SequelizeStorage } from 'umzug';\r\nimport { ClearDbOptions, RecreateDbOptions } from './dbMigration.types';\r\nimport { migrateMetadataTable } from './migrateMetadataTable';\r\nimport { SequelizeMeta } from 'db/models';\r\nimport { EngineError } from 'entities/EngineError';\r\nimport { sequelize } from 'entities/Sequelize';\r\nimport { reportDebug } from 'utils/report';\r\nimport { semverCompare } from 'utils/semverCompare';\r\n\r\nconst namespace = 'engine:utils:dbMigration';\r\n\r\nfunction getMigrationPaths(): Array<string> | undefined {\r\n // We look between possibilities for the first directory that exists and matches our expectations\r\n // First a user specified one, then the production default, then the development default\r\n const prodDefaultPath = join(process.cwd(), './dist/db/migrations');\r\n const devDefaultPath = join(process.cwd(), './src/db/migrations');\r\n const path = [\r\n process.env.DB_MIGRATIONS_DIR,\r\n process.env.NODE_ENV === 'prod' ? prodDefaultPath : devDefaultPath\r\n ].filter((path) => path && existsSync(path) && lstatSync(path).isDirectory());\r\n reportDebug({\r\n namespace,\r\n message: 'Obtaining Umzug migration options',\r\n data: {\r\n path,\r\n prodPath: prodDefaultPath,\r\n devPath: devDefaultPath,\r\n customPath: process.env.DB_MIGRATIONS_DIR\r\n }\r\n });\r\n return path.map((p) =>\r\n process.env.NODE_ENV === 'prod' ? `${p}/*.js` : `${p}/*.ts`\r\n );\r\n}\r\n\r\n/** Run all the non-executed migrations one by one */\r\nexport async function runPendingMigrations(): Promise<void> {\r\n if (!sequelize)\r\n throw new EngineError({ message: 'Sequelize is not initialized' });\r\n // First make sure that the metadata table is up to date\r\n await migrateMetadataTable(sequelize);\r\n const migrationPaths = getMigrationPaths();\r\n\r\n if (!migrationPaths || migrationPaths.length <= 0) {\r\n reportDebug({\r\n namespace,\r\n message: 'No valid migration paths found.',\r\n data: { migrationPaths }\r\n });\r\n return;\r\n }\r\n\r\n migrationPaths?.forEach(async (path) => {\r\n const migrator = new Umzug({\r\n migrations: {\r\n glob: path,\r\n resolve: ({ name, path, context }) => {\r\n // Use require to import the migration file\r\n const migration = require(path || '');\r\n return {\r\n name,\r\n up: async () => migration.up(context),\r\n down: async () => migration.down(context)\r\n };\r\n }\r\n },\r\n context: sequelize.getQueryInterface(),\r\n storage: new SequelizeStorage({ sequelize }),\r\n logger: console\r\n });\r\n\r\n reportDebug({\r\n namespace,\r\n message: 'Starting pending database migrations',\r\n data: { path }\r\n });\r\n await migrator.up();\r\n console.log('Db Migration Completed');\r\n });\r\n}\r\n\r\n/** Rollback all migrations up to a specified target version */\r\nexport async function rollbackMigrations(): Promise<void> {\r\n if (!sequelize)\r\n throw new EngineError({ message: 'Sequelize is not initialized' });\r\n if (!process.env.BUILD_ID)\r\n throw new EngineError({ message: 'BUILD_ID is not defined' });\r\n\r\n // Fetch executed migrations in ascending order\r\n const migrations = await SequelizeMeta.findAll({\r\n order: [['name', 'ASC']],\r\n raw: true\r\n });\r\n const rollbackUntil = migrations.find(\r\n (migration) =>\r\n migration.version &&\r\n semverCompare(migration.version, process.env.BUILD_ID as string) === 1\r\n );\r\n\r\n if (!rollbackUntil) {\r\n reportDebug({\r\n namespace,\r\n message: 'No rollback target found for the current BUILD_ID.',\r\n data: { buildId: process.env.BUILD_ID }\r\n });\r\n return;\r\n }\r\n\r\n const migrationPaths = getMigrationPaths();\r\n\r\n if (!migrationPaths || migrationPaths.length <= 0) {\r\n reportDebug({\r\n namespace,\r\n message: 'No valid migration paths found for rollback.',\r\n data: { migrationPaths }\r\n });\r\n return;\r\n }\r\n\r\n migrationPaths.forEach(async (path) => {\r\n const migrator = new Umzug({\r\n migrations: {\r\n glob: path,\r\n resolve: ({ name, path, context }) => {\r\n const migration = require(path || '');\r\n return {\r\n name,\r\n up: async () => migration.up(context),\r\n down: async () => migration.down(context)\r\n };\r\n }\r\n },\r\n context: sequelize.getQueryInterface(),\r\n storage: new SequelizeStorage({ sequelize }),\r\n logger: console\r\n });\r\n\r\n reportDebug({\r\n namespace,\r\n message: `Rolling back migrations up to: ${rollbackUntil.name}`,\r\n data: { path }\r\n });\r\n\r\n await migrator.down({ to: rollbackUntil.name });\r\n });\r\n}\r\n\r\n/**\r\n * Recreate the whole database\r\n * Quick way to make sure that we are working on a clean database\r\n * /!\\ Should only be used when running tests\r\n */\r\nexport async function testRecreateDB(\r\n options: RecreateDbOptions = {}\r\n): Promise<void> {\r\n if (!sequelize)\r\n throw new EngineError({ message: 'Sequelize is not initialized' });\r\n await sequelize.query(\r\n `DROP SCHEMA public${process.env.SQL_TYPE === 'postgres' ? ' CASCADE' : ''}`\r\n );\r\n await sequelize.query(`CREATE SCHEMA public`);\r\n if (!options.clean) await runPendingMigrations();\r\n}\r\n\r\n/**\r\n * Empty all the schemas in the database\r\n * Quick way to flush the database data while keep the structure\r\n * /!\\ Should only be used when running tests\r\n */\r\nexport async function testClearDB(options: ClearDbOptions = {}): Promise<void> {\r\n if (!sequelize)\r\n throw new EngineError({ message: 'Sequelize is not initialized' });\r\n await sequelize.transaction(clearDbTransaction(sequelize, options));\r\n}\r\n\r\n/** DB clearing transaction */\r\nfunction clearDbTransaction(sequelize: Sequelize, options: ClearDbOptions) {\r\n return async (t: Transaction): Promise<void> => {\r\n for (const model of Object.keys(sequelize.models)) {\r\n // We ignore the migration metadata schema\r\n if (!options.includeMetadata && model === 'sequelizeMeta') continue;\r\n const table = sequelize.models[model].tableName;\r\n await sequelize.query(\r\n `TRUNCATE ${table}${process.env.SQL_TYPE === 'postgres' ? ' CASCADE' : ''};`,\r\n {\r\n raw: true,\r\n transaction: t\r\n }\r\n );\r\n }\r\n };\r\n}\r\n"],"mappings":";;;;;;;;;AAIA,IAAAA,GAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAEA,IAAAE,MAAA,GAAAF,OAAA;AAEA,IAAAG,qBAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AACA,IAAAK,YAAA,GAAAL,OAAA;AACA,IAAAM,UAAA,GAAAN,OAAA;AACA,IAAAO,OAAA,GAAAP,OAAA;AACA,IAAAQ,cAAA,GAAAR,OAAA;AAdA;AACA;AACAA,OAAO,CAAC,kBAAkB,CAAC;AAc3B,MAAMS,SAAS,GAAG,0BAA0B;AAE5C,SAASC,iBAAiBA,CAAA,EAA8B;EACtD;EACA;EACA,MAAMC,eAAe,GAAG,IAAAC,UAAI,EAACC,OAAO,CAACC,GAAG,CAAC,CAAC,EAAE,sBAAsB,CAAC;EACnE,MAAMC,cAAc,GAAG,IAAAH,UAAI,EAACC,OAAO,CAACC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;EACjE,MAAME,IAAI,GAAG,CACXH,OAAO,CAACI,GAAG,CAACC,iBAAiB,EAC7BL,OAAO,CAACI,GAAG,CAACE,QAAQ,KAAK,MAAM,GAAGR,eAAe,GAAGI,cAAc,CACnE,CAACK,MAAM,CAAEJ,IAAI,IAAKA,IAAI,IAAI,IAAAK,cAAU,EAACL,IAAI,CAAC,IAAI,IAAAM,aAAS,EAACN,IAAI,CAAC,CAACO,WAAW,CAAC,CAAC,CAAC;EAC7E,IAAAC,mBAAW,EAAC;IACVf,SAAS;IACTgB,OAAO,EAAE,mCAAmC;IAC5CC,IAAI,EAAE;MACJV,IAAI;MACJW,QAAQ,EAAEhB,eAAe;MACzBiB,OAAO,EAAEb,cAAc;MACvBc,UAAU,EAAEhB,OAAO,CAACI,GAAG,CAACC;IAC1B;EACF,CAAC,CAAC;EACF,OAAOF,IAAI,CAACc,GAAG,CAAEC,CAAC,IAChBlB,OAAO,CAACI,GAAG,CAACE,QAAQ,KAAK,MAAM,GAAG,GAAGY,CAAC,OAAO,GAAG,GAAGA,CAAC,OACtD,CAAC;AACH;;AAEA;AACO,eAAeC,oBAAoBA,CAAA,EAAkB;EAC1D,IAAI,CAACC,oBAAS,EACZ,MAAM,IAAIC,wBAAW,CAAC;IAAET,OAAO,EAAE;EAA+B,CAAC,CAAC;EACpE;EACA,MAAM,IAAAU,0CAAoB,EAACF,oBAAS,CAAC;EACrC,MAAMG,cAAc,GAAG1B,iBAAiB,CAAC,CAAC;EAE1C,IAAI,CAAC0B,cAAc,IAAIA,cAAc,CAACC,MAAM,IAAI,CAAC,EAAE;IACjD,IAAAb,mBAAW,EAAC;MACVf,SAAS;MACTgB,OAAO,EAAE,iCAAiC;MAC1CC,IAAI,EAAE;QAAEU;MAAe;IACzB,CAAC,CAAC;IACF;EACF;EAEAA,cAAc,EAAEE,OAAO,CAAC,MAAOtB,IAAI,IAAK;IACtC,MAAMuB,QAAQ,GAAG,IAAIC,YAAK,CAAC;MACzBC,UAAU,EAAE;QACVC,IAAI,EAAE1B,IAAI;QACV2B,OAAO,EAAEA,CAAC;UAAEC,IAAI;UAAE5B,IAAI;UAAE6B;QAAQ,CAAC,KAAK;UACpC;UACA,MAAMC,SAAS,GAAG9C,OAAO,CAACgB,IAAI,IAAI,EAAE,CAAC;UACrC,OAAO;YACL4B,IAAI;YACJG,EAAE,EAAE,MAAAA,CAAA,KAAYD,SAAS,CAACC,EAAE,CAACF,OAAO,CAAC;YACrCG,IAAI,EAAE,MAAAA,CAAA,KAAYF,SAAS,CAACE,IAAI,CAACH,OAAO;UAC1C,CAAC;QACH;MACF,CAAC;MACDA,OAAO,EAAEZ,oBAAS,CAACgB,iBAAiB,CAAC,CAAC;MACtCC,OAAO,EAAE,IAAIC,uBAAgB,CAAC;QAAElB,SAAS,EAATA;MAAU,CAAC,CAAC;MAC5CmB,MAAM,EAAEC;IACV,CAAC,CAAC;IAEF,IAAA7B,mBAAW,EAAC;MACVf,SAAS;MACTgB,OAAO,EAAE,sCAAsC;MAC/CC,IAAI,EAAE;QAAEV;MAAK;IACf,CAAC,CAAC;IACF,MAAMuB,QAAQ,CAACQ,EAAE,CAAC,CAAC;IACnBM,OAAO,CAACC,GAAG,CAAC,wBAAwB,CAAC;EACvC,CAAC,CAAC;AACJ;;AAEA;AACO,eAAeC,kBAAkBA,CAAA,EAAkB;EACxD,IAAI,CAACtB,oBAAS,EACZ,MAAM,IAAIC,wBAAW,CAAC;IAAET,OAAO,EAAE;EAA+B,CAAC,CAAC;EACpE,IAAI,CAACZ,OAAO,CAACI,GAAG,CAACuC,QAAQ,EACvB,MAAM,IAAItB,wBAAW,CAAC;IAAET,OAAO,EAAE;EAA0B,CAAC,CAAC;;EAE/D;EACA,MAAMgB,UAAU,GAAG,MAAMgB,qBAAa,CAACC,OAAO,CAAC;IAC7CC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACxBC,GAAG,EAAE;EACP,CAAC,CAAC;EACF,MAAMC,aAAa,GAAGpB,UAAU,CAACqB,IAAI,CAClChB,SAAS,IACRA,SAAS,CAACiB,OAAO,IACjB,IAAAC,4BAAa,EAAClB,SAAS,CAACiB,OAAO,EAAElD,OAAO,CAACI,GAAG,CAACuC,QAAkB,CAAC,KAAK,CACzE,CAAC;EAED,IAAI,CAACK,aAAa,EAAE;IAClB,IAAArC,mBAAW,EAAC;MACVf,SAAS;MACTgB,OAAO,EAAE,oDAAoD;MAC7DC,IAAI,EAAE;QAAEuC,OAAO,EAAEpD,OAAO,CAACI,GAAG,CAACuC;MAAS;IACxC,CAAC,CAAC;IACF;EACF;EAEA,MAAMpB,cAAc,GAAG1B,iBAAiB,CAAC,CAAC;EAE1C,IAAI,CAAC0B,cAAc,IAAIA,cAAc,CAACC,MAAM,IAAI,CAAC,EAAE;IACjD,IAAAb,mBAAW,EAAC;MACVf,SAAS;MACTgB,OAAO,EAAE,8CAA8C;MACvDC,IAAI,EAAE;QAAEU;MAAe;IACzB,CAAC,CAAC;IACF;EACF;EAEAA,cAAc,CAACE,OAAO,CAAC,MAAOtB,IAAI,IAAK;IACrC,MAAMuB,QAAQ,GAAG,IAAIC,YAAK,CAAC;MACzBC,UAAU,EAAE;QACVC,IAAI,EAAE1B,IAAI;QACV2B,OAAO,EAAEA,CAAC;UAAEC,IAAI;UAAE5B,IAAI;UAAE6B;QAAQ,CAAC,KAAK;UACpC,MAAMC,SAAS,GAAG9C,OAAO,CAACgB,IAAI,IAAI,EAAE,CAAC;UACrC,OAAO;YACL4B,IAAI;YACJG,EAAE,EAAE,MAAAA,CAAA,KAAYD,SAAS,CAACC,EAAE,CAACF,OAAO,CAAC;YACrCG,IAAI,EAAE,MAAAA,CAAA,KAAYF,SAAS,CAACE,IAAI,CAACH,OAAO;UAC1C,CAAC;QACH;MACF,CAAC;MACDA,OAAO,EAAEZ,oBAAS,CAACgB,iBAAiB,CAAC,CAAC;MACtCC,OAAO,EAAE,IAAIC,uBAAgB,CAAC;QAAElB,SAAS,EAATA;MAAU,CAAC,CAAC;MAC5CmB,MAAM,EAAEC;IACV,CAAC,CAAC;IAEF,IAAA7B,mBAAW,EAAC;MACVf,SAAS;MACTgB,OAAO,EAAE,kCAAkCoC,aAAa,CAACjB,IAAI,EAAE;MAC/DlB,IAAI,EAAE;QAAEV;MAAK;IACf,CAAC,CAAC;IAEF,MAAMuB,QAAQ,CAACS,IAAI,CAAC;MAAEkB,EAAE,EAAEL,aAAa,CAACjB;IAAK,CAAC,CAAC;EACjD,CAAC,CAAC;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACO,eAAeuB,cAAcA,CAClCC,OAA0B,GAAG,CAAC,CAAC,EAChB;EACf,IAAI,CAACnC,oBAAS,EACZ,MAAM,IAAIC,wBAAW,CAAC;IAAET,OAAO,EAAE;EAA+B,CAAC,CAAC;EACpE,MAAMQ,oBAAS,CAACoC,KAAK,CACnB,qBAAqBxD,OAAO,CAACI,GAAG,CAACqD,QAAQ,KAAK,UAAU,GAAG,UAAU,GAAG,EAAE,EAC5E,CAAC;EACD,MAAMrC,oBAAS,CAACoC,KAAK,CAAC,sBAAsB,CAAC;EAC7C,IAAI,CAACD,OAAO,CAACG,KAAK,EAAE,MAAMvC,oBAAoB,CAAC,CAAC;AAClD;;AAEA;AACA;AACA;AACA;AACA;AACO,eAAewC,WAAWA,CAACJ,OAAuB,GAAG,CAAC,CAAC,EAAiB;EAC7E,IAAI,CAACnC,oBAAS,EACZ,MAAM,IAAIC,wBAAW,CAAC;IAAET,OAAO,EAAE;EAA+B,CAAC,CAAC;EACpE,MAAMQ,oBAAS,CAACwC,WAAW,CAACC,kBAAkB,CAACzC,oBAAS,EAAEmC,OAAO,CAAC,CAAC;AACrE;;AAEA;AACA,SAASM,kBAAkBA,CAACzC,SAAoB,EAAEmC,OAAuB,EAAE;EACzE,OAAO,MAAOO,CAAc,IAAoB;IAC9C,KAAK,MAAMC,KAAK,IAAIC,MAAM,CAACC,IAAI,CAAC7C,SAAS,CAAC8C,MAAM,CAAC,EAAE;MACjD;MACA,IAAI,CAACX,OAAO,CAACY,eAAe,IAAIJ,KAAK,KAAK,eAAe,EAAE;MAC3D,MAAMK,KAAK,GAAGhD,SAAS,CAAC8C,MAAM,CAACH,KAAK,CAAC,CAACM,SAAS;MAC/C,MAAMjD,SAAS,CAACoC,KAAK,CACnB,YAAYY,KAAK,GAAGpE,OAAO,CAACI,GAAG,CAACqD,QAAQ,KAAK,UAAU,GAAG,UAAU,GAAG,EAAE,GAAG,EAC5E;QACEV,GAAG,EAAE,IAAI;QACTa,WAAW,EAAEE;MACf,CACF,CAAC;IACH;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dbMigration.types.js","names":[],"sources":["../../../src/utils/dbMigration/dbMigration.types.ts"],"sourcesContent":["/** Options to recreate the database */\nexport interface RecreateDbOptions {\n /** Do not run the migrations, leave the DB empty */\n clean?: boolean;\n}\n\n/** Options to clear the database */\nexport interface ClearDbOptions {\n /** Also truncate the migration metadata table. This should only be used when testing on the metadata table itself */\n includeMetadata?: boolean;\n}\n"],"mappings":"","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"dbMigration.types.js","names":[],"sources":["../../../src/utils/dbMigration/dbMigration.types.ts"],"sourcesContent":["/** Options to recreate the database */\r\nexport interface RecreateDbOptions {\r\n /** Do not run the migrations, leave the DB empty */\r\n clean?: boolean;\r\n}\r\n\r\n/** Options to clear the database */\r\nexport interface ClearDbOptions {\r\n /** Also truncate the migration metadata table. This should only be used when testing on the metadata table itself */\r\n includeMetadata?: boolean;\r\n}\r\n"],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_dbMigration","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_dbMigration2"],"sources":["../../../src/utils/dbMigration/index.ts"],"sourcesContent":["export * from './dbMigration';\nexport * from './dbMigration.types';\n"],"mappings":";;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,YAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,YAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,YAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,aAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,aAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,aAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,aAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_dbMigration","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_dbMigration2"],"sources":["../../../src/utils/dbMigration/index.ts"],"sourcesContent":["export * from './dbMigration';\r\nexport * from './dbMigration.types';\r\n"],"mappings":";;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,YAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,YAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,YAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,aAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,aAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,aAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,aAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_migrateMetadataTable","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../../src/utils/dbMigration/migrateMetadataTable/index.ts"],"sourcesContent":["export * from './migrateMetadataTable';\n"],"mappings":";;;;;AAAA,IAAAA,qBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,qBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,qBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,qBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_migrateMetadataTable","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../../src/utils/dbMigration/migrateMetadataTable/index.ts"],"sourcesContent":["export * from './migrateMetadataTable';\r\n"],"mappings":";;;;;AAAA,IAAAA,qBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,qBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,qBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,qBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Sequelize } from 'sequelize';
|
|
2
2
|
/**
|
|
3
3
|
* Run migrations on the metadata table
|
|
4
|
-
* The table containing the migrations metadata
|
|
5
|
-
* Therefore we use a more classic approach with this function and pure SQL queries
|
|
4
|
+
* The table containing the migrations metadata cannot be handled through migrations
|
|
5
|
+
* Therefore, we use a more classic approach with this function and pure SQL queries
|
|
6
6
|
*/
|
|
7
7
|
export declare function migrateMetadataTable(sequelize: Sequelize): Promise<void>;
|