@nxtedition/lib 26.3.6 → 26.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/http.js CHANGED
@@ -10,6 +10,9 @@ import tp from 'timers/promises'
10
10
 
11
11
  export const kAbortController = Symbol('abortController')
12
12
 
13
+ const kEmptyObj = Object.freeze({})
14
+ const kEmptyArr = Object.freeze([])
15
+
13
16
  const ERR_HEADER_EXPR =
14
17
  /^(content-length|content-type|te|host|upgrade|trailers|connection|keep-alive|http2-settings|transfer-encoding|proxy-connection|proxy-authenticate|proxy-authorization)$/i
15
18
 
@@ -483,12 +486,23 @@ export class ServerResponse extends http.ServerResponse {
483
486
  if (this.#headersObj === null) {
484
487
  throw new Error('headers already sent')
485
488
  } else if (this.#headersObj === undefined) {
486
- return []
489
+ return kEmptyArr
487
490
  } else {
488
491
  return Object.keys(this.#headersObj)
489
492
  }
490
493
  }
491
494
 
495
+ /**
496
+ * @returns {Record<string, string>}
497
+ */
498
+ getHeaders() {
499
+ if (this.#headersObj === undefined) {
500
+ return kEmptyObj
501
+ } else {
502
+ return this.#headersObj
503
+ }
504
+ }
505
+
492
506
  /**
493
507
  * @returns {boolean}
494
508
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nxtedition/lib",
3
- "version": "26.3.6",
3
+ "version": "26.3.7",
4
4
  "license": "MIT",
5
5
  "author": "Robert Nagy <robert.nagy@boffins.se>",
6
6
  "type": "module",
package/serializers.js CHANGED
@@ -72,10 +72,10 @@ function getTiming(obj) {
72
72
  return undefined
73
73
  }
74
74
  return {
75
- connect: timing.connect > 0 ? Math.ceil(timing.connect * 1e3) : undefined,
76
- headers: timing.headers > 0 ? Math.ceil(timing.headers * 1e3) : undefined,
77
- data: timing.data > 0 ? Math.ceil(timing.data * 1e3) : undefined,
78
- end: timing.end > 0 ? Math.ceil(timing.end * 1e3) : undefined,
75
+ connect: timing.connect > 0 ? Math.ceil(timing.connect) : undefined,
76
+ headers: timing.headers > 0 ? Math.ceil(timing.headers) : undefined,
77
+ data: timing.data > 0 ? Math.ceil(timing.data) : undefined,
78
+ end: timing.end > 0 ? Math.ceil(timing.end) : undefined,
79
79
  }
80
80
  }
81
81
 
@@ -115,7 +115,7 @@ export default {
115
115
  req: (req) =>
116
116
  req && {
117
117
  method: req.method,
118
- headers: getHeaders(req),
118
+ headers: req.headers,
119
119
  target: getTarget(req),
120
120
  timing: getTiming(req),
121
121
  bytesRead: req.bytesRead >= 0 ? req.bytesRead : undefined,
@@ -132,7 +132,7 @@ export default {
132
132
  },
133
133
  res: (res) =>
134
134
  res && {
135
- headers: getHeaders(res),
135
+ headers: res.getHeaders(),
136
136
  statusCode: res.statusCode || res.status,
137
137
  timing: getTiming(res),
138
138
  bytesWritten: res.bytesWritten >= 0 ? res.bytesWritten : undefined,