minimalistic-server 0.0.51 → 0.0.53

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/index.mjs +19 -6
  2. package/package.json +1 -1
package/index.mjs CHANGED
@@ -9,6 +9,19 @@ const keepAliveTimeout = 20000;
9
9
 
10
10
  let currentFsPromiseModule = fs;
11
11
 
12
+ function setObjectProperty(object, name, value, enumerable = true, writable = true, configurable = true) {
13
+ Object.defineProperty(
14
+ object,
15
+ name,
16
+ {
17
+ value,
18
+ enumerable,
19
+ writable,
20
+ configurable,
21
+ },
22
+ )
23
+ }
24
+
12
25
  function safePrint(data, isError = false) {
13
26
  try {
14
27
  if (isError) {
@@ -814,13 +827,13 @@ export class Request {
814
827
  this.#method = request.method.toUpperCase();
815
828
 
816
829
  for (const k in request.headers) {
817
- Object.defineProperty(this.#headers, k.toLowerCase(), { value: request.headers[k] });
830
+ setObjectProperty(this.#headers, k.toLowerCase(), request.headers[k]);
818
831
  }
819
832
 
820
833
  this.#path = url.pathname.split('/').filter(x => x).join('/');
821
834
 
822
835
  url.searchParams.forEach((v, k) => {
823
- Object.defineProperty(this.#queryParams, k, { value: v });
836
+ setObjectProperty(this.#queryParams, k, v);
824
837
  });
825
838
  }
826
839
 
@@ -998,7 +1011,7 @@ export class Request {
998
1011
  parent[index] = nextParent;
999
1012
  }
1000
1013
  } else if (!(parent instanceof Array) && !curFragment.match(/^-?\d+$/gm)) {
1001
- Object.defineProperty(parent, curFragment, { value: nextFragment });
1014
+ setObjectProperty(parent, curFragment, nextParent);
1002
1015
  } else {
1003
1016
  break;
1004
1017
  }
@@ -1100,7 +1113,7 @@ export class Request {
1100
1113
  }
1101
1114
 
1102
1115
  if (name in data && !Array.isArray(data[name])) {
1103
- Object.defineProperty(data, name, { value: [data[name]] });
1116
+ setObjectProperty(data, name, [data[name]]);
1104
1117
  }
1105
1118
 
1106
1119
  if (Array.isArray(data[name])) {
@@ -1109,7 +1122,7 @@ export class Request {
1109
1122
  }
1110
1123
 
1111
1124
  } else {
1112
- Object.defineProperty(data, name, { value });
1125
+ setObjectProperty(data, name, value);
1113
1126
  }
1114
1127
  }
1115
1128
 
@@ -2376,7 +2389,7 @@ async function handleRequest(req, routes, staticFileDirectories, handleNotFoundE
2376
2389
  if (!newRouteHandler) {
2377
2390
  for (let k in routeHandler) {
2378
2391
  if (k.match(/^{\w+}$/gm)) {
2379
- Object.defineProperty(pathParams, k.replace(/[{}]/gm, ''), { value: decodeURIComponent(fragment) });
2392
+ setObjectProperty(pathParams, k.replace(/[{}]/gm, ''), decodeURIComponent(fragment));
2380
2393
  newRouteHandler = routeHandler[k];
2381
2394
  break;
2382
2395
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "minimalistic-server",
3
- "version": "0.0.51",
3
+ "version": "0.0.53",
4
4
  "engines" : {
5
5
  "npm" : ">=8.6.0",
6
6
  "node" : ">=22.0.0"