@expressots/adapter-express 3.0.0 → 4.0.0-preview.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +39 -96
- package/lib/CHANGELOG.md +31 -5
- package/lib/README.md +39 -96
- package/lib/cjs/adapter-express/application-express.base.js +3 -1
- package/lib/cjs/adapter-express/application-express.js +1049 -85
- package/lib/cjs/adapter-express/express-utils/conditional-middleware.js +102 -0
- package/lib/cjs/adapter-express/express-utils/constants.js +17 -0
- package/lib/cjs/adapter-express/express-utils/content-negotiation-decorators.js +129 -0
- package/lib/cjs/adapter-express/express-utils/decorators.js +186 -49
- package/lib/cjs/adapter-express/express-utils/exception-filter-decorators.js +11 -0
- package/lib/cjs/adapter-express/express-utils/guard-context-factory.js +84 -0
- package/lib/cjs/adapter-express/express-utils/guard-middleware.js +115 -0
- package/lib/cjs/adapter-express/express-utils/guard-utils.js +18 -0
- package/lib/cjs/adapter-express/express-utils/http-context-store.js +15 -0
- package/lib/cjs/adapter-express/express-utils/http-status-middleware.js +37 -2
- package/lib/cjs/adapter-express/express-utils/index.js +67 -1
- package/lib/cjs/adapter-express/express-utils/interceptor-middleware.js +132 -0
- package/lib/cjs/adapter-express/express-utils/inversify-express-server.js +810 -63
- package/lib/cjs/adapter-express/express-utils/lazy-module-middleware.js +241 -0
- package/lib/cjs/adapter-express/express-utils/middleware-composition.js +95 -0
- package/lib/cjs/adapter-express/express-utils/permission-preloader.middleware.js +48 -0
- package/lib/cjs/adapter-express/express-utils/route-constraints.js +95 -0
- package/lib/cjs/adapter-express/express-utils/scope-extractor.interface.js +2 -0
- package/lib/cjs/adapter-express/express-utils/scope-extractor.js +66 -0
- package/lib/cjs/adapter-express/express-utils/setup-authorization.js +71 -0
- package/lib/cjs/adapter-express/express-utils/setup-event-system.js +113 -0
- package/lib/cjs/adapter-express/express-utils/setup-interceptors.js +103 -0
- package/lib/cjs/adapter-express/express-utils/setup-lazy-loading.js +228 -0
- package/lib/cjs/adapter-express/express-utils/utils.js +30 -12
- package/lib/cjs/adapter-express/express-utils/validation-decorators.js +205 -0
- package/lib/cjs/adapter-express/express-utils/validation-service.js +252 -0
- package/lib/cjs/adapter-express/index.js +7 -5
- package/lib/cjs/adapter-express/micro-api/application-express-micro-route.js +31 -1
- package/lib/cjs/adapter-express/micro-api/application-express-micro.js +11 -37
- package/lib/cjs/adapter-express/micro-api/gateway/circuit-breaker.js +174 -0
- package/lib/cjs/adapter-express/micro-api/gateway/index.js +11 -0
- package/lib/cjs/adapter-express/micro-api/gateway/service-proxy.js +214 -0
- package/lib/cjs/adapter-express/micro-api/index.js +27 -3
- package/lib/cjs/adapter-express/micro-api/micro.js +217 -0
- package/lib/cjs/adapter-express/micro-api/queue/index.js +8 -0
- package/lib/cjs/adapter-express/micro-api/queue/queue.interface.js +2 -0
- package/lib/cjs/adapter-express/micro-api/queue/rabbitmq-consumer.js +255 -0
- package/lib/cjs/adapter-express/micro-api/serverless/aws-lambda.adapter.js +183 -0
- package/lib/cjs/adapter-express/micro-api/serverless/cloudflare.adapter.js +158 -0
- package/lib/cjs/adapter-express/micro-api/serverless/index.js +12 -0
- package/lib/cjs/adapter-express/micro-api/serverless/vercel.adapter.js +102 -0
- package/lib/cjs/adapter-express/micro-api/service-mesh/index.js +10 -0
- package/lib/cjs/adapter-express/micro-api/service-mesh/service-client.js +194 -0
- package/lib/cjs/adapter-express/micro-api/service-mesh/service-discovery.js +261 -0
- package/lib/cjs/adapter-express/middleware/index.js +21 -0
- package/lib/cjs/adapter-express/middleware/request-logging.middleware.js +244 -0
- package/lib/cjs/adapter-express/render/engine.js +15 -15
- package/lib/cjs/adapter-express/render/index.js +5 -0
- package/lib/cjs/adapter-express/studio/index.js +9 -0
- package/lib/cjs/adapter-express/studio/studio-integration.js +214 -0
- package/lib/cjs/index.js +1 -1
- package/lib/cjs/types/adapter-express/application-express.base.d.ts +20 -7
- package/lib/cjs/types/adapter-express/application-express.d.ts +273 -32
- package/lib/cjs/types/adapter-express/express-utils/base-middleware.d.ts +2 -2
- package/lib/cjs/types/adapter-express/express-utils/conditional-middleware.d.ts +97 -0
- package/lib/cjs/types/adapter-express/express-utils/constants.d.ts +13 -0
- package/lib/cjs/types/adapter-express/express-utils/content-negotiation-decorators.d.ts +94 -0
- package/lib/cjs/types/adapter-express/express-utils/decorators.d.ts +54 -6
- package/lib/cjs/types/adapter-express/express-utils/exception-filter-decorators.d.ts +6 -0
- package/lib/cjs/types/adapter-express/express-utils/guard-context-factory.d.ts +17 -0
- package/lib/cjs/types/adapter-express/express-utils/guard-middleware.d.ts +22 -0
- package/lib/cjs/types/adapter-express/express-utils/guard-utils.d.ts +11 -0
- package/lib/cjs/types/adapter-express/express-utils/http-context-store.d.ts +20 -0
- package/lib/cjs/types/adapter-express/express-utils/httpResponseMessage.d.ts +1 -1
- package/lib/cjs/types/adapter-express/express-utils/index.d.ts +30 -2
- package/lib/cjs/types/adapter-express/express-utils/interceptor-middleware.d.ts +40 -0
- package/lib/cjs/types/adapter-express/express-utils/interfaces.d.ts +42 -5
- package/lib/cjs/types/adapter-express/express-utils/inversify-express-server.d.ts +114 -2
- package/lib/cjs/types/adapter-express/express-utils/lazy-module-middleware.d.ts +122 -0
- package/lib/cjs/types/adapter-express/express-utils/middleware-composition.d.ts +85 -0
- package/lib/cjs/types/adapter-express/express-utils/permission-preloader.middleware.d.ts +10 -0
- package/lib/cjs/types/adapter-express/express-utils/route-constraints.d.ts +89 -0
- package/lib/cjs/types/adapter-express/express-utils/scope-extractor.d.ts +21 -0
- package/lib/cjs/types/adapter-express/express-utils/scope-extractor.interface.d.ts +12 -0
- package/lib/cjs/types/adapter-express/express-utils/setup-authorization.d.ts +34 -0
- package/lib/cjs/types/adapter-express/express-utils/setup-event-system.d.ts +118 -0
- package/lib/cjs/types/adapter-express/express-utils/setup-interceptors.d.ts +115 -0
- package/lib/cjs/types/adapter-express/express-utils/setup-lazy-loading.d.ts +123 -0
- package/lib/cjs/types/adapter-express/express-utils/utils.d.ts +17 -2
- package/lib/cjs/types/adapter-express/express-utils/validation-decorators.d.ts +145 -0
- package/lib/cjs/types/adapter-express/express-utils/validation-service.d.ts +88 -0
- package/lib/cjs/types/adapter-express/index.d.ts +6 -4
- package/lib/cjs/types/adapter-express/micro-api/application-express-micro-route.d.ts +25 -14
- package/lib/cjs/types/adapter-express/micro-api/application-express-micro.d.ts +3 -10
- package/lib/cjs/types/adapter-express/micro-api/gateway/circuit-breaker.d.ts +111 -0
- package/lib/cjs/types/adapter-express/micro-api/gateway/index.d.ts +5 -0
- package/lib/cjs/types/adapter-express/micro-api/gateway/service-proxy.d.ts +83 -0
- package/lib/cjs/types/adapter-express/micro-api/index.d.ts +7 -1
- package/lib/cjs/types/adapter-express/micro-api/micro.d.ts +66 -0
- package/lib/cjs/types/adapter-express/micro-api/queue/index.d.ts +5 -0
- package/lib/cjs/types/adapter-express/micro-api/queue/queue.interface.d.ts +60 -0
- package/lib/cjs/types/adapter-express/micro-api/queue/rabbitmq-consumer.d.ts +86 -0
- package/lib/cjs/types/adapter-express/micro-api/serverless/aws-lambda.adapter.d.ts +77 -0
- package/lib/cjs/types/adapter-express/micro-api/serverless/cloudflare.adapter.d.ts +64 -0
- package/lib/cjs/types/adapter-express/micro-api/serverless/index.d.ts +6 -0
- package/lib/cjs/types/adapter-express/micro-api/serverless/vercel.adapter.d.ts +56 -0
- package/lib/cjs/types/adapter-express/micro-api/service-mesh/index.d.ts +5 -0
- package/lib/cjs/types/adapter-express/micro-api/service-mesh/service-client.d.ts +122 -0
- package/lib/cjs/types/adapter-express/micro-api/service-mesh/service-discovery.d.ts +150 -0
- package/lib/cjs/types/adapter-express/middleware/index.d.ts +5 -0
- package/lib/cjs/types/adapter-express/middleware/request-logging.middleware.d.ts +65 -0
- package/lib/cjs/types/adapter-express/render/index.d.ts +1 -0
- package/lib/cjs/types/adapter-express/studio/index.d.ts +1 -0
- package/lib/cjs/types/adapter-express/studio/studio-integration.d.ts +92 -0
- package/lib/cjs/types/index.d.ts +1 -1
- package/lib/esm/adapter-express/application-express.base.js +24 -0
- package/lib/esm/adapter-express/application-express.js +1300 -0
- package/lib/esm/adapter-express/application-express.types.js +1 -0
- package/lib/esm/adapter-express/express-utils/base-middleware.js +19 -0
- package/lib/esm/adapter-express/express-utils/conditional-middleware.js +96 -0
- package/lib/esm/adapter-express/express-utils/constants.js +63 -0
- package/lib/esm/adapter-express/express-utils/content/httpContent.js +6 -0
- package/lib/esm/adapter-express/express-utils/content-negotiation-decorators.js +120 -0
- package/lib/esm/adapter-express/express-utils/decorators.js +575 -0
- package/lib/esm/adapter-express/express-utils/exception-filter-decorators.js +6 -0
- package/lib/esm/adapter-express/express-utils/guard-context-factory.js +83 -0
- package/lib/esm/adapter-express/express-utils/guard-middleware.js +115 -0
- package/lib/esm/adapter-express/express-utils/guard-utils.js +14 -0
- package/lib/esm/adapter-express/express-utils/http-context-store.js +10 -0
- package/lib/esm/adapter-express/express-utils/http-status-middleware.js +116 -0
- package/lib/esm/adapter-express/express-utils/httpResponseMessage.js +29 -0
- package/lib/esm/adapter-express/express-utils/index.js +24 -0
- package/lib/esm/adapter-express/express-utils/interceptor-middleware.js +130 -0
- package/lib/esm/adapter-express/express-utils/interfaces.js +1 -0
- package/lib/esm/adapter-express/express-utils/inversify-express-server.js +1031 -0
- package/lib/esm/adapter-express/express-utils/lazy-module-middleware.js +236 -0
- package/lib/esm/adapter-express/express-utils/middleware-composition.js +89 -0
- package/lib/esm/adapter-express/express-utils/permission-preloader.middleware.js +45 -0
- package/lib/esm/adapter-express/express-utils/resolver-multer.js +30 -0
- package/lib/esm/adapter-express/express-utils/route-constraints.js +91 -0
- package/lib/esm/adapter-express/express-utils/scope-extractor.interface.js +1 -0
- package/lib/esm/adapter-express/express-utils/scope-extractor.js +63 -0
- package/lib/esm/adapter-express/express-utils/setup-authorization.js +68 -0
- package/lib/esm/adapter-express/express-utils/setup-event-system.js +110 -0
- package/lib/esm/adapter-express/express-utils/setup-interceptors.js +100 -0
- package/lib/esm/adapter-express/express-utils/setup-lazy-loading.js +225 -0
- package/lib/esm/adapter-express/express-utils/utils.js +68 -0
- package/lib/esm/adapter-express/express-utils/validation-decorators.js +199 -0
- package/lib/esm/adapter-express/express-utils/validation-service.js +251 -0
- package/lib/esm/adapter-express/index.js +7 -0
- package/lib/esm/adapter-express/micro-api/application-express-micro-container.js +48 -0
- package/lib/esm/adapter-express/micro-api/application-express-micro-route.js +128 -0
- package/lib/esm/adapter-express/micro-api/application-express-micro.js +161 -0
- package/lib/esm/adapter-express/micro-api/gateway/circuit-breaker.js +174 -0
- package/lib/esm/adapter-express/micro-api/gateway/index.js +5 -0
- package/lib/esm/adapter-express/micro-api/gateway/service-proxy.js +210 -0
- package/lib/esm/adapter-express/micro-api/index.js +10 -0
- package/lib/esm/adapter-express/micro-api/micro.js +211 -0
- package/lib/esm/adapter-express/micro-api/queue/index.js +4 -0
- package/lib/esm/adapter-express/micro-api/queue/queue.interface.js +1 -0
- package/lib/esm/adapter-express/micro-api/queue/rabbitmq-consumer.js +229 -0
- package/lib/esm/adapter-express/micro-api/serverless/aws-lambda.adapter.js +180 -0
- package/lib/esm/adapter-express/micro-api/serverless/cloudflare.adapter.js +155 -0
- package/lib/esm/adapter-express/micro-api/serverless/index.js +6 -0
- package/lib/esm/adapter-express/micro-api/serverless/vercel.adapter.js +99 -0
- package/lib/esm/adapter-express/micro-api/service-mesh/index.js +5 -0
- package/lib/esm/adapter-express/micro-api/service-mesh/service-client.js +191 -0
- package/lib/esm/adapter-express/micro-api/service-mesh/service-discovery.js +259 -0
- package/lib/esm/adapter-express/middleware/index.js +5 -0
- package/lib/esm/adapter-express/middleware/request-logging.middleware.js +239 -0
- package/lib/esm/adapter-express/render/constants.js +37 -0
- package/lib/esm/adapter-express/render/engine.js +51 -0
- package/lib/esm/adapter-express/render/index.js +1 -0
- package/lib/esm/adapter-express/render/resolve-render.js +30 -0
- package/lib/esm/adapter-express/studio/index.js +1 -0
- package/lib/esm/adapter-express/studio/studio-integration.js +184 -0
- package/lib/esm/index.mjs +1 -0
- package/lib/esm/package.json +3 -0
- package/lib/esm/types/adapter-express/application-express.base.d.ts +77 -0
- package/lib/esm/types/adapter-express/application-express.d.ts +411 -0
- package/lib/esm/types/adapter-express/application-express.types.d.ts +23 -0
- package/lib/esm/types/adapter-express/express-utils/base-middleware.d.ts +8 -0
- package/lib/esm/types/adapter-express/express-utils/conditional-middleware.d.ts +97 -0
- package/lib/esm/types/adapter-express/express-utils/constants.d.ts +57 -0
- package/lib/esm/types/adapter-express/express-utils/content/httpContent.d.ts +6 -0
- package/lib/esm/types/adapter-express/express-utils/content-negotiation-decorators.d.ts +94 -0
- package/lib/esm/types/adapter-express/express-utils/decorators.d.ts +257 -0
- package/lib/esm/types/adapter-express/express-utils/exception-filter-decorators.d.ts +6 -0
- package/lib/esm/types/adapter-express/express-utils/guard-context-factory.d.ts +17 -0
- package/lib/esm/types/adapter-express/express-utils/guard-middleware.d.ts +22 -0
- package/lib/esm/types/adapter-express/express-utils/guard-utils.d.ts +11 -0
- package/lib/esm/types/adapter-express/express-utils/http-context-store.d.ts +20 -0
- package/lib/esm/types/adapter-express/express-utils/http-status-middleware.d.ts +26 -0
- package/lib/esm/types/adapter-express/express-utils/httpResponseMessage.d.ts +14 -0
- package/lib/esm/types/adapter-express/express-utils/index.d.ts +30 -0
- package/lib/esm/types/adapter-express/express-utils/interceptor-middleware.d.ts +40 -0
- package/lib/esm/types/adapter-express/express-utils/interfaces.d.ts +115 -0
- package/lib/esm/types/adapter-express/express-utils/inversify-express-server.d.ts +172 -0
- package/lib/esm/types/adapter-express/express-utils/lazy-module-middleware.d.ts +122 -0
- package/lib/esm/types/adapter-express/express-utils/middleware-composition.d.ts +85 -0
- package/lib/esm/types/adapter-express/express-utils/permission-preloader.middleware.d.ts +10 -0
- package/lib/esm/types/adapter-express/express-utils/resolver-multer.d.ts +7 -0
- package/lib/esm/types/adapter-express/express-utils/route-constraints.d.ts +89 -0
- package/lib/esm/types/adapter-express/express-utils/scope-extractor.d.ts +21 -0
- package/lib/esm/types/adapter-express/express-utils/scope-extractor.interface.d.ts +12 -0
- package/lib/esm/types/adapter-express/express-utils/setup-authorization.d.ts +34 -0
- package/lib/esm/types/adapter-express/express-utils/setup-event-system.d.ts +118 -0
- package/lib/esm/types/adapter-express/express-utils/setup-interceptors.d.ts +115 -0
- package/lib/esm/types/adapter-express/express-utils/setup-lazy-loading.d.ts +123 -0
- package/lib/esm/types/adapter-express/express-utils/utils.d.ts +24 -0
- package/lib/esm/types/adapter-express/express-utils/validation-decorators.d.ts +145 -0
- package/lib/esm/types/adapter-express/express-utils/validation-service.d.ts +88 -0
- package/lib/esm/types/adapter-express/index.d.ts +7 -0
- package/lib/esm/types/adapter-express/micro-api/application-express-micro-container.d.ts +47 -0
- package/lib/esm/types/adapter-express/micro-api/application-express-micro-route.d.ts +104 -0
- package/lib/esm/types/adapter-express/micro-api/application-express-micro.d.ts +72 -0
- package/lib/esm/types/adapter-express/micro-api/gateway/circuit-breaker.d.ts +111 -0
- package/lib/esm/types/adapter-express/micro-api/gateway/index.d.ts +5 -0
- package/lib/esm/types/adapter-express/micro-api/gateway/service-proxy.d.ts +83 -0
- package/lib/esm/types/adapter-express/micro-api/index.d.ts +7 -0
- package/lib/esm/types/adapter-express/micro-api/micro.d.ts +66 -0
- package/lib/esm/types/adapter-express/micro-api/queue/index.d.ts +5 -0
- package/lib/esm/types/adapter-express/micro-api/queue/queue.interface.d.ts +60 -0
- package/lib/esm/types/adapter-express/micro-api/queue/rabbitmq-consumer.d.ts +86 -0
- package/lib/esm/types/adapter-express/micro-api/serverless/aws-lambda.adapter.d.ts +77 -0
- package/lib/esm/types/adapter-express/micro-api/serverless/cloudflare.adapter.d.ts +64 -0
- package/lib/esm/types/adapter-express/micro-api/serverless/index.d.ts +6 -0
- package/lib/esm/types/adapter-express/micro-api/serverless/vercel.adapter.d.ts +56 -0
- package/lib/esm/types/adapter-express/micro-api/service-mesh/index.d.ts +5 -0
- package/lib/esm/types/adapter-express/micro-api/service-mesh/service-client.d.ts +122 -0
- package/lib/esm/types/adapter-express/micro-api/service-mesh/service-discovery.d.ts +150 -0
- package/lib/esm/types/adapter-express/middleware/index.d.ts +5 -0
- package/lib/esm/types/adapter-express/middleware/request-logging.middleware.d.ts +65 -0
- package/lib/esm/types/adapter-express/render/constants.d.ts +26 -0
- package/lib/esm/types/adapter-express/render/engine.d.ts +20 -0
- package/lib/esm/types/adapter-express/render/index.d.ts +5 -0
- package/lib/esm/types/adapter-express/render/resolve-render.d.ts +7 -0
- package/lib/esm/types/adapter-express/studio/index.d.ts +1 -0
- package/lib/esm/types/adapter-express/studio/studio-integration.d.ts +92 -0
- package/lib/esm/types/index.d.ts +1 -0
- package/lib/package.json +156 -146
- package/package.json +156 -146
- package/lib/cjs/di/di.interfaces.js +0 -10
- package/lib/cjs/types/di/di.interfaces.d.ts +0 -289
package/README.md
CHANGED
|
@@ -1,118 +1,61 @@
|
|
|
1
|
-
<a name="readme-top"></a>
|
|
2
|
-
|
|
3
|
-
<!-- PROJECT SHIELDS -->
|
|
4
|
-
|
|
5
|
-
[![Codecov][codecov-shield]][codecov-url]
|
|
6
|
-
[![NPM][npm-shield]][npm-url]
|
|
7
|
-
![Build][build-shield]
|
|
8
|
-
[![Contributors][contributors-shield]][contributors-url]
|
|
9
|
-
[![Forks][forks-shield]][forks-url]
|
|
10
|
-
[![Stargazers][stars-shield]][stars-url]
|
|
11
|
-
[![Issues][issues-shield]][issues-url]
|
|
12
|
-
[![MIT License][license-shield]][license-url]
|
|
13
|
-
[![LinkedIn][linkedin-shield]][linkedin-url]
|
|
14
|
-
|
|
15
|
-
<!-- PROJECT LOGO -->
|
|
16
|
-
<br />
|
|
17
1
|
<div align="center">
|
|
18
|
-
<a href="https://
|
|
19
|
-
<img src="https://github.com/expressots/expressots/blob/main/media/expressots.png" alt="
|
|
2
|
+
<a href="https://expresso-ts.com">
|
|
3
|
+
<img src="https://github.com/expressots/expressots/blob/main/media/expressots.png" alt="ExpressoTS" width="120">
|
|
20
4
|
</a>
|
|
21
5
|
|
|
22
|
-
<
|
|
23
|
-
|
|
24
|
-
<p
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
<a href="https://
|
|
28
|
-
<
|
|
29
|
-
<
|
|
30
|
-
<a href="https://github.com/expressots/expressots/discussions">Let's discuss</a>
|
|
31
|
-
·
|
|
32
|
-
<a href="https://github.com/expressots/expressots/issues">Report Bug</a>
|
|
33
|
-
·
|
|
34
|
-
<a href="https://github.com/expressots/expressots/issues">Request Feature</a>
|
|
6
|
+
<h1>@expressots/adapter-express</h1>
|
|
7
|
+
|
|
8
|
+
<p>Express HTTP adapter for ExpressoTS — connects the framework core to the Express.js server engine.</p>
|
|
9
|
+
|
|
10
|
+
<p>
|
|
11
|
+
<a href="https://www.npmjs.com/package/@expressots/adapter-express"><img src="https://img.shields.io/npm/v/@expressots/adapter-express?style=flat&color=0d0d0d" alt="npm"></a>
|
|
12
|
+
<a href="https://github.com/expressots/adapter-express/blob/main/LICENSE.md"><img src="https://img.shields.io/github/license/expressots/adapter-express?style=flat&color=0d0d0d" alt="License"></a>
|
|
13
|
+
<a href="https://discord.com/invite/PyPJfGK"><img src="https://img.shields.io/badge/Discord-join-0d0d0d?logo=discord&logoColor=white" alt="Discord"></a>
|
|
35
14
|
</p>
|
|
36
|
-
</div>
|
|
37
15
|
|
|
38
|
-
|
|
39
|
-
<
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
<li><a href="#contributing">Contributing</a></li>
|
|
45
|
-
<li><a href="#support-the-project">Support the project</a></li>
|
|
46
|
-
<li><a href="#license">License</a></li>
|
|
47
|
-
</ol>
|
|
48
|
-
</details>
|
|
16
|
+
<p>
|
|
17
|
+
<a href="https://doc.expresso-ts.com">Documentation</a> ·
|
|
18
|
+
<a href="https://doc.expresso-ts.com/docs/core/first-steps">Getting Started</a> ·
|
|
19
|
+
<a href="https://discord.com/invite/PyPJfGK">Community</a>
|
|
20
|
+
</p>
|
|
21
|
+
</div>
|
|
49
22
|
|
|
50
|
-
|
|
23
|
+
---
|
|
51
24
|
|
|
52
|
-
|
|
25
|
+
## Install
|
|
53
26
|
|
|
54
|
-
|
|
27
|
+
```bash
|
|
28
|
+
npm i @expressots/adapter-express
|
|
29
|
+
```
|
|
55
30
|
|
|
56
|
-
##
|
|
31
|
+
## What This Package Does
|
|
57
32
|
|
|
58
|
-
|
|
59
|
-
- You can find our [Documentation here](https://doc.expresso-ts.com/)
|
|
60
|
-
- Checkout our [First Steps documentation](https://doc.expresso-ts.com/docs/overview/first-steps)
|
|
61
|
-
- Our [CLI Documentation](https://doc.expresso-ts.com/docs/cli/overview)
|
|
33
|
+
This adapter bridges ExpressoTS Core and Express.js. It provides the HTTP server implementation, route registration, middleware pipeline, and the `App` class that wires everything together. Install it alongside `@expressots/core` to run ExpressoTS on Express.
|
|
62
34
|
|
|
63
|
-
##
|
|
35
|
+
## Quick Look
|
|
64
36
|
|
|
65
|
-
|
|
66
|
-
|
|
37
|
+
```typescript
|
|
38
|
+
import { ExpressAdapter } from "@expressots/adapter-express";
|
|
67
39
|
|
|
68
|
-
|
|
40
|
+
// Used as the server adapter when bootstrapping your ExpressoTS application
|
|
41
|
+
const app = await AppFactory.create(App, ExpressAdapter);
|
|
42
|
+
await app.listen(3000, "development");
|
|
43
|
+
```
|
|
69
44
|
|
|
70
|
-
|
|
71
|
-
- **Build Your Portfolio**: Contributing to an open-source project like ExpressoTS is a great way to showcase your skills.
|
|
72
|
-
- **Join a Network**: Get to know a community of like-minded developers.
|
|
73
|
-
- **Improve the Product**: Help us fill in the gaps, correct errors, or make complex topics easier to understand.
|
|
45
|
+
## Documentation
|
|
74
46
|
|
|
75
|
-
|
|
47
|
+
For guides, API reference, architecture patterns, and examples visit **[doc.expresso-ts.com](https://doc.expresso-ts.com)**.
|
|
76
48
|
|
|
77
|
-
|
|
78
|
-
- [How to Contribute](https://github.com/expressots/expressots/blob/main/CONTRIBUTING_HOWTO.md)
|
|
79
|
-
- [Coding Guidelines](https://github.com/rsaz/TypescriptCodingGuidelines)
|
|
49
|
+
## Contributing
|
|
80
50
|
|
|
81
|
-
|
|
51
|
+
See the [Contributing Guide](https://github.com/expressots/expressots/blob/main/CONTRIBUTING.md) for how to get involved.
|
|
82
52
|
|
|
83
|
-
|
|
53
|
+
## Support
|
|
84
54
|
|
|
85
|
-
-
|
|
86
|
-
-
|
|
87
|
-
-
|
|
88
|
-
- Join our **[Discord](https://discord.com/invite/PyPJfGK)**
|
|
89
|
-
- Contribute submitting **[issues and pull requests](https://github.com/expressots/expressots/issues)**
|
|
90
|
-
- Share the project with your friends and colleagues
|
|
55
|
+
- [GitHub Sponsors](https://github.com/sponsors/expressots)
|
|
56
|
+
- [Discord](https://discord.com/invite/PyPJfGK)
|
|
57
|
+
- [Report an Issue](https://github.com/expressots/adapter-express/issues)
|
|
91
58
|
|
|
92
59
|
## License
|
|
93
60
|
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
<p align="right">(<a href="#readme-top">back to top</a>)</p>
|
|
97
|
-
|
|
98
|
-
<!-- MARKDOWN LINKS & IMAGES -->
|
|
99
|
-
<!-- https://www.markdownguide.org/basic-syntax/#reference-style-links -->
|
|
100
|
-
|
|
101
|
-
[codecov-url]: https://codecov.io/gh/expressots/adapter-express
|
|
102
|
-
[codecov-shield]: https://img.shields.io/codecov/c/gh/expressots/adapter-express/main?style=for-the-badge&logo=codecov&labelColor=FB9AD1
|
|
103
|
-
[npm-url]: https://www.npmjs.com/package/@expressots/adapter-express
|
|
104
|
-
[npm-shield]: https://img.shields.io/npm/v/@expressots/adapter-express?style=for-the-badge&logo=npm&color=9B3922
|
|
105
|
-
[build-shield]: https://img.shields.io/github/actions/workflow/status/expressots/adapter-express/build.yaml?branch=main&style=for-the-badge&logo=github
|
|
106
|
-
[contributors-shield]: https://img.shields.io/github/contributors/expressots/adapter-express?style=for-the-badge
|
|
107
|
-
[contributors-url]: https://github.com/expressots/adapter-express/graphs/contributors
|
|
108
|
-
[forks-shield]: https://img.shields.io/github/forks/expressots/adapter-express?style=for-the-badge
|
|
109
|
-
[forks-url]: https://github.com/expressots/adapter-express/forks
|
|
110
|
-
[stars-shield]: https://img.shields.io/github/stars/expressots/adapter-express?style=for-the-badge
|
|
111
|
-
[stars-url]: https://github.com/expressots/adapter-express/stargazers
|
|
112
|
-
[issues-shield]: https://img.shields.io/github/issues/expressots/adapter-express?style=for-the-badge
|
|
113
|
-
[issues-url]: https://github.com/expressots/expressadapter-expressots/issues
|
|
114
|
-
[license-shield]: https://img.shields.io/github/license/expressots/adapter-express?style=for-the-badge
|
|
115
|
-
[license-url]: https://github.com/expressots/adapter-express/blob/main/LICENSE
|
|
116
|
-
[linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?style=for-the-badge&logo=linkedin&colorB=555
|
|
117
|
-
[linkedin-url]: https://www.linkedin.com/company/expresso-ts/
|
|
118
|
-
[product-screenshot]: images/screenshot.png
|
|
61
|
+
MIT — see [LICENSE](./LICENSE.md).
|
package/lib/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,31 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
## [4.0.0](https://github.com/expressots/adapter-express/compare/3.0.0...4.0.0) (2026-05-12)
|
|
2
|
+
|
|
3
|
+
Part of the ExpressoTS **v4.0.0 release bundle**. See the [v4.0.0 release notes](https://expresso-ts.com/docs/4.0.0/prologue/release) and the [upgrade guide](https://expresso-ts.com/docs/4.0.0/prologue/upgrade_guide) for the full picture.
|
|
4
|
+
|
|
5
|
+
### Features
|
|
6
|
+
|
|
7
|
+
* **AppExpress lifecycle:** `globalConfiguration`, `configureServices`, `postServerInitialization`, `serverShutdown` hooks fully wired with async support; `setGlobalRoutePrefix`, `setBanner({ style, showMetrics })`, `isDevelopment()`, `getPort()` helpers.
|
|
8
|
+
* **systems setup helpers:** `setupInterceptorsForExpress`, `setupEventSystemForExpress`, `setupLazyLoadingForExpress`, `setupAuthorizationForExpress` — one-call wiring for the new core subsystems with consistent return-shape diagnostics (`interceptorsRegistered`, `handlersDiscovered`, `lazyModulesCount`, `routeMappings`, ...).
|
|
9
|
+
* **`micro()` API:** single-file Express apps with auto-response serialisation, optional global route prefix, environment-aware banner, and `setErrorHandler`.
|
|
10
|
+
* **serverless adapters:** `awsLambdaAdapter`, `vercelAdapter`, `cloudflareAdapter` — same code runs locally and on the target platform with binary content-type and base64 handling.
|
|
11
|
+
* **microservices primitives:** `CircuitBreaker`, `ServiceDiscovery` (static + dynamic), `ServiceClient` (timeouts, retries, circuit-breaker integration), `ServiceProxy` via `createProxy` with `pathRewrite` / `changeOrigin` / `onError`.
|
|
12
|
+
* **content negotiation runtime:** `addContentNegotiation` middleware factory with `XmlOptions`, `CsvOptions`, `YamlOptions`, quality-value support, lazy formatter loading.
|
|
13
|
+
* **smart validation runtime:** `Middleware.addValidation({ smartDetection, autoDetection, errorFormat })`.
|
|
14
|
+
* **request logging middleware:** `createRequestLoggingMiddleware(logger, { verbosity, logBody, logHeaders, slowRequestThreshold, requestIdHeader, correlationIdHeader })`.
|
|
15
|
+
* **route, body, query, params, header decorators:** `@Get/@Post/@Put/@Delete/@Patch`, `@body`, `@query`, `@param`, `@headers`, plus the new `@Accept` / `@Consumes` / `@Produces` content-negotiation decorators.
|
|
16
|
+
* **exception filter middleware:** `Middleware.setErrorHandler({ showStackTrace, enableExceptionFilters })`.
|
|
17
|
+
* **studio agent integration:** `@expressots/studio-agent` is an optional peer dependency — adapter-express dynamically imports it only when `NODE_ENV=development` and the package is installed; production deployments pay zero runtime cost.
|
|
18
|
+
|
|
19
|
+
### Bug Fixes
|
|
20
|
+
|
|
21
|
+
* `setupAuthorizationForExpress` signature corrected to `(container, config?, middleware?, authProvider?)` so the auth provider is passed as the fourth argument rather than inside the config object.
|
|
22
|
+
|
|
23
|
+
### Breaking Changes
|
|
24
|
+
|
|
25
|
+
* All `AppExpress` lifecycle methods are now async; `await` them or rely on the bootstrap pipeline to drive them.
|
|
26
|
+
* `getHttpServer()` now returns an `http.Server` instance (was `AppExpress` in v3).
|
|
27
|
+
* `server.listen(0)` now resolves to a randomly assigned port and the actual port is observable via `getHttpServer().address()`.
|
|
28
|
+
|
|
3
29
|
## [3.0.0](https://github.com/expressots/adapter-express/compare/3.0.0-beta.3...3.0.0) (2024-12-04)
|
|
4
30
|
|
|
5
31
|
|
|
@@ -13,8 +39,8 @@
|
|
|
13
39
|
|
|
14
40
|
### Tests
|
|
15
41
|
|
|
16
|
-
* update tests for globalConfiguration, isDevelopment, getHttpServer, serverShutdown ([17b7d92](https://github.com/expressots/adapter-express/commit/17b7d92e87f4ad0d14a386e8351c723e1392a5c3))
|
|
17
|
-
|
|
42
|
+
* update tests for globalConfiguration, isDevelopment, getHttpServer, serverShutdown ([17b7d92](https://github.com/expressots/adapter-express/commit/17b7d92e87f4ad0d14a386e8351c723e1392a5c3))
|
|
43
|
+
|
|
18
44
|
## [3.0.0-beta.4.2](https://github.com/expressots/adapter-express/compare/3.0.0-beta.3...3.0.0) (2024-12-03)
|
|
19
45
|
|
|
20
46
|
### Code Refactoring
|
|
@@ -292,4 +318,4 @@
|
|
|
292
318
|
|
|
293
319
|
### Bug Fixes
|
|
294
320
|
|
|
295
|
-
- testing commitlint ([0e78653](https://github.com/expressots/<<repo_name>>/commit/0e786539402f69fdca3fe5b684d850e523db7698))
|
|
321
|
+
- testing commitlint ([0e78653](https://github.com/expressots/<<repo_name>>/commit/0e786539402f69fdca3fe5b684d850e523db7698))
|
package/lib/README.md
CHANGED
|
@@ -1,118 +1,61 @@
|
|
|
1
|
-
<a name="readme-top"></a>
|
|
2
|
-
|
|
3
|
-
<!-- PROJECT SHIELDS -->
|
|
4
|
-
|
|
5
|
-
[![Codecov][codecov-shield]][codecov-url]
|
|
6
|
-
[![NPM][npm-shield]][npm-url]
|
|
7
|
-
![Build][build-shield]
|
|
8
|
-
[![Contributors][contributors-shield]][contributors-url]
|
|
9
|
-
[![Forks][forks-shield]][forks-url]
|
|
10
|
-
[![Stargazers][stars-shield]][stars-url]
|
|
11
|
-
[![Issues][issues-shield]][issues-url]
|
|
12
|
-
[![MIT License][license-shield]][license-url]
|
|
13
|
-
[![LinkedIn][linkedin-shield]][linkedin-url]
|
|
14
|
-
|
|
15
|
-
<!-- PROJECT LOGO -->
|
|
16
|
-
<br />
|
|
17
1
|
<div align="center">
|
|
18
|
-
<a href="https://
|
|
19
|
-
<img src="https://github.com/expressots/expressots/blob/main/media/expressots.png" alt="
|
|
2
|
+
<a href="https://expresso-ts.com">
|
|
3
|
+
<img src="https://github.com/expressots/expressots/blob/main/media/expressots.png" alt="ExpressoTS" width="120">
|
|
20
4
|
</a>
|
|
21
5
|
|
|
22
|
-
<
|
|
23
|
-
|
|
24
|
-
<p
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
<a href="https://
|
|
28
|
-
<
|
|
29
|
-
<
|
|
30
|
-
<a href="https://github.com/expressots/expressots/discussions">Let's discuss</a>
|
|
31
|
-
·
|
|
32
|
-
<a href="https://github.com/expressots/expressots/issues">Report Bug</a>
|
|
33
|
-
·
|
|
34
|
-
<a href="https://github.com/expressots/expressots/issues">Request Feature</a>
|
|
6
|
+
<h1>@expressots/adapter-express</h1>
|
|
7
|
+
|
|
8
|
+
<p>Express HTTP adapter for ExpressoTS — connects the framework core to the Express.js server engine.</p>
|
|
9
|
+
|
|
10
|
+
<p>
|
|
11
|
+
<a href="https://www.npmjs.com/package/@expressots/adapter-express"><img src="https://img.shields.io/npm/v/@expressots/adapter-express?style=flat&color=0d0d0d" alt="npm"></a>
|
|
12
|
+
<a href="https://github.com/expressots/adapter-express/blob/main/LICENSE.md"><img src="https://img.shields.io/github/license/expressots/adapter-express?style=flat&color=0d0d0d" alt="License"></a>
|
|
13
|
+
<a href="https://discord.com/invite/PyPJfGK"><img src="https://img.shields.io/badge/Discord-join-0d0d0d?logo=discord&logoColor=white" alt="Discord"></a>
|
|
35
14
|
</p>
|
|
36
|
-
</div>
|
|
37
15
|
|
|
38
|
-
|
|
39
|
-
<
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
<li><a href="#contributing">Contributing</a></li>
|
|
45
|
-
<li><a href="#support-the-project">Support the project</a></li>
|
|
46
|
-
<li><a href="#license">License</a></li>
|
|
47
|
-
</ol>
|
|
48
|
-
</details>
|
|
16
|
+
<p>
|
|
17
|
+
<a href="https://doc.expresso-ts.com">Documentation</a> ·
|
|
18
|
+
<a href="https://doc.expresso-ts.com/docs/core/first-steps">Getting Started</a> ·
|
|
19
|
+
<a href="https://discord.com/invite/PyPJfGK">Community</a>
|
|
20
|
+
</p>
|
|
21
|
+
</div>
|
|
49
22
|
|
|
50
|
-
|
|
23
|
+
---
|
|
51
24
|
|
|
52
|
-
|
|
25
|
+
## Install
|
|
53
26
|
|
|
54
|
-
|
|
27
|
+
```bash
|
|
28
|
+
npm i @expressots/adapter-express
|
|
29
|
+
```
|
|
55
30
|
|
|
56
|
-
##
|
|
31
|
+
## What This Package Does
|
|
57
32
|
|
|
58
|
-
|
|
59
|
-
- You can find our [Documentation here](https://doc.expresso-ts.com/)
|
|
60
|
-
- Checkout our [First Steps documentation](https://doc.expresso-ts.com/docs/overview/first-steps)
|
|
61
|
-
- Our [CLI Documentation](https://doc.expresso-ts.com/docs/cli/overview)
|
|
33
|
+
This adapter bridges ExpressoTS Core and Express.js. It provides the HTTP server implementation, route registration, middleware pipeline, and the `App` class that wires everything together. Install it alongside `@expressots/core` to run ExpressoTS on Express.
|
|
62
34
|
|
|
63
|
-
##
|
|
35
|
+
## Quick Look
|
|
64
36
|
|
|
65
|
-
|
|
66
|
-
|
|
37
|
+
```typescript
|
|
38
|
+
import { ExpressAdapter } from "@expressots/adapter-express";
|
|
67
39
|
|
|
68
|
-
|
|
40
|
+
// Used as the server adapter when bootstrapping your ExpressoTS application
|
|
41
|
+
const app = await AppFactory.create(App, ExpressAdapter);
|
|
42
|
+
await app.listen(3000, "development");
|
|
43
|
+
```
|
|
69
44
|
|
|
70
|
-
|
|
71
|
-
- **Build Your Portfolio**: Contributing to an open-source project like ExpressoTS is a great way to showcase your skills.
|
|
72
|
-
- **Join a Network**: Get to know a community of like-minded developers.
|
|
73
|
-
- **Improve the Product**: Help us fill in the gaps, correct errors, or make complex topics easier to understand.
|
|
45
|
+
## Documentation
|
|
74
46
|
|
|
75
|
-
|
|
47
|
+
For guides, API reference, architecture patterns, and examples visit **[doc.expresso-ts.com](https://doc.expresso-ts.com)**.
|
|
76
48
|
|
|
77
|
-
|
|
78
|
-
- [How to Contribute](https://github.com/expressots/expressots/blob/main/CONTRIBUTING_HOWTO.md)
|
|
79
|
-
- [Coding Guidelines](https://github.com/rsaz/TypescriptCodingGuidelines)
|
|
49
|
+
## Contributing
|
|
80
50
|
|
|
81
|
-
|
|
51
|
+
See the [Contributing Guide](https://github.com/expressots/expressots/blob/main/CONTRIBUTING.md) for how to get involved.
|
|
82
52
|
|
|
83
|
-
|
|
53
|
+
## Support
|
|
84
54
|
|
|
85
|
-
-
|
|
86
|
-
-
|
|
87
|
-
-
|
|
88
|
-
- Join our **[Discord](https://discord.com/invite/PyPJfGK)**
|
|
89
|
-
- Contribute submitting **[issues and pull requests](https://github.com/expressots/expressots/issues)**
|
|
90
|
-
- Share the project with your friends and colleagues
|
|
55
|
+
- [GitHub Sponsors](https://github.com/sponsors/expressots)
|
|
56
|
+
- [Discord](https://discord.com/invite/PyPJfGK)
|
|
57
|
+
- [Report an Issue](https://github.com/expressots/adapter-express/issues)
|
|
91
58
|
|
|
92
59
|
## License
|
|
93
60
|
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
<p align="right">(<a href="#readme-top">back to top</a>)</p>
|
|
97
|
-
|
|
98
|
-
<!-- MARKDOWN LINKS & IMAGES -->
|
|
99
|
-
<!-- https://www.markdownguide.org/basic-syntax/#reference-style-links -->
|
|
100
|
-
|
|
101
|
-
[codecov-url]: https://codecov.io/gh/expressots/adapter-express
|
|
102
|
-
[codecov-shield]: https://img.shields.io/codecov/c/gh/expressots/adapter-express/main?style=for-the-badge&logo=codecov&labelColor=FB9AD1
|
|
103
|
-
[npm-url]: https://www.npmjs.com/package/@expressots/adapter-express
|
|
104
|
-
[npm-shield]: https://img.shields.io/npm/v/@expressots/adapter-express?style=for-the-badge&logo=npm&color=9B3922
|
|
105
|
-
[build-shield]: https://img.shields.io/github/actions/workflow/status/expressots/adapter-express/build.yaml?branch=main&style=for-the-badge&logo=github
|
|
106
|
-
[contributors-shield]: https://img.shields.io/github/contributors/expressots/adapter-express?style=for-the-badge
|
|
107
|
-
[contributors-url]: https://github.com/expressots/adapter-express/graphs/contributors
|
|
108
|
-
[forks-shield]: https://img.shields.io/github/forks/expressots/adapter-express?style=for-the-badge
|
|
109
|
-
[forks-url]: https://github.com/expressots/adapter-express/forks
|
|
110
|
-
[stars-shield]: https://img.shields.io/github/stars/expressots/adapter-express?style=for-the-badge
|
|
111
|
-
[stars-url]: https://github.com/expressots/adapter-express/stargazers
|
|
112
|
-
[issues-shield]: https://img.shields.io/github/issues/expressots/adapter-express?style=for-the-badge
|
|
113
|
-
[issues-url]: https://github.com/expressots/expressadapter-expressots/issues
|
|
114
|
-
[license-shield]: https://img.shields.io/github/license/expressots/adapter-express?style=for-the-badge
|
|
115
|
-
[license-url]: https://github.com/expressots/adapter-express/blob/main/LICENSE
|
|
116
|
-
[linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?style=for-the-badge&logo=linkedin&colorB=555
|
|
117
|
-
[linkedin-url]: https://www.linkedin.com/company/expresso-ts/
|
|
118
|
-
[product-screenshot]: images/screenshot.png
|
|
61
|
+
MIT — see [LICENSE](./LICENSE.md).
|
|
@@ -15,7 +15,9 @@ exports.ApplicationBase = void 0;
|
|
|
15
15
|
* class Application extends ApplicationBase {
|
|
16
16
|
* protected configureServices() { //... }
|
|
17
17
|
* protected postServerInitialization() { //... }
|
|
18
|
-
* protected serverShutdown() {
|
|
18
|
+
* protected serverShutdown(signal) {
|
|
19
|
+
* console.log(`Shutting down due to ${signal}`);
|
|
20
|
+
* }
|
|
19
21
|
* }
|
|
20
22
|
*
|
|
21
23
|
* @export
|