@nxtedition/lib 23.8.0 → 23.8.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.
Files changed (2) hide show
  1. package/http.js +10 -7
  2. package/package.json +1 -1
package/http.js CHANGED
@@ -746,11 +746,14 @@ export async function request(ctx, next) {
746
746
  }
747
747
 
748
748
  export function createServer(options, ctx, middleware) {
749
- middleware = [middleware].flat(16).filter(Boolean)
750
- middleware = middleware.includes(requestMiddleware)
751
- ? middleware
752
- : [requestMiddleware, ...middleware]
753
- middleware = compose(middleware)
749
+ if (middleware) {
750
+ middleware = [middleware].flat(16).filter(Boolean)
751
+ middleware = middleware.includes(requestMiddleware)
752
+ ? middleware
753
+ : [requestMiddleware, ...middleware]
754
+ middleware = compose(middleware)
755
+ middleware = middleware.length === 0 ? null : middleware
756
+ }
754
757
 
755
758
  let factory
756
759
  if (typeof ctx === 'function') {
@@ -766,7 +769,7 @@ export function createServer(options, ctx, middleware) {
766
769
  if (opaque) {
767
770
  Object.assign(context, opaque)
768
771
  }
769
- return middleware(context)
772
+ return context
770
773
  }
771
774
  }
772
775
 
@@ -779,7 +782,7 @@ export function createServer(options, ctx, middleware) {
779
782
  requestTimeout: 0,
780
783
  ...options,
781
784
  },
782
- (req, res) => middleware(factory(req, res)),
785
+ (req, res) => (middleware ? middleware(factory(req, res)) : factory(req, res)),
783
786
  )
784
787
 
785
788
  server.setTimeout(options.socketTimeout ?? options.timeout ?? 2 * 60e3)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nxtedition/lib",
3
- "version": "23.8.0",
3
+ "version": "23.8.1",
4
4
  "license": "MIT",
5
5
  "author": "Robert Nagy <robert.nagy@boffins.se>",
6
6
  "type": "module",