@webtypen/webframez-core 0.1.2 → 0.1.4

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.
@@ -9,6 +9,7 @@ export declare class Request {
9
9
  body: any;
10
10
  bodyPlain: any;
11
11
  query: any;
12
+ queryRaw: any;
12
13
  params: any;
13
14
  files: any;
14
15
  socket: any;
@@ -10,6 +10,7 @@ class Request {
10
10
  this.body = null;
11
11
  this.bodyPlain = null;
12
12
  this.query = {};
13
+ this.queryRaw = "";
13
14
  this.params = {};
14
15
  this.files = {};
15
16
  this.socket = undefined;
@@ -17,6 +17,7 @@ const http_1 = require("http");
17
17
  const Response_1 = require("./Response");
18
18
  const Request_1 = require("./Request");
19
19
  const querystring_1 = __importDefault(require("querystring"));
20
+ const url_1 = __importDefault(require("url"));
20
21
  class RouterFacade {
21
22
  constructor() {
22
23
  /**
@@ -185,7 +186,6 @@ class RouterFacade {
185
186
  */
186
187
  dissolveRoute(routes, url, request) {
187
188
  if (routes[url]) {
188
- // If url matches directly -> instant return
189
189
  return Object.assign(Object.assign({}, routes[url]), { params: {} });
190
190
  }
191
191
  else {
@@ -284,6 +284,9 @@ class RouterFacade {
284
284
  }
285
285
  else if (req && req instanceof http_1.IncomingMessage) {
286
286
  const parsedBody = yield this.parseRequestBody(req);
287
+ const parsedUrl = req.url ? url_1.default.parse(req.url) : null;
288
+ const searchParams = parsedUrl && parsedUrl.query ? new URLSearchParams(parsedUrl.query) : null;
289
+ const queryParams = searchParams ? Object.fromEntries(searchParams.entries()) : {};
287
290
  request.message = req;
288
291
  request.bodyPlain = parsedBody ? parsedBody.plain : "";
289
292
  request.body = parsedBody ? parsedBody.parsed : {};
@@ -292,6 +295,9 @@ class RouterFacade {
292
295
  request.url = req.url ? req.url : "";
293
296
  request.method = req.method ? req.method : "";
294
297
  request.socket = req.socket;
298
+ request.query = queryParams;
299
+ request.queryRaw = parsedUrl && parsedUrl.query ? parsedUrl.query : "";
300
+ request.pathname = parsedUrl ? parsedUrl.pathname : "";
295
301
  }
296
302
  return request;
297
303
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webtypen/webframez-core",
3
- "version": "0.1.2",
3
+ "version": "0.1.4",
4
4
  "description": "The core package of the typescript based webframez (web-framework) by webtypen.de",
5
5
  "homepage": "https://webtypen.de/",
6
6
  "license": "MIT",
@@ -9,6 +9,7 @@ export class Request {
9
9
  body: any = null;
10
10
  bodyPlain: any = null;
11
11
  query: any = {};
12
+ queryRaw: any = "";
12
13
  params: any = {};
13
14
  files: any = {};
14
15
  socket: any = undefined;
@@ -2,6 +2,7 @@ import { IncomingMessage, ServerResponse } from "http";
2
2
  import { Response } from "./Response";
3
3
  import { Request } from "./Request";
4
4
  import querystring from "querystring";
5
+ import url from "url";
5
6
 
6
7
  type RouteObject = {
7
8
  path: string;
@@ -218,7 +219,6 @@ class RouterFacade {
218
219
  */
219
220
  dissolveRoute(routes: any, url: string, request?: Request) {
220
221
  if (routes[url]) {
221
- // If url matches directly -> instant return
222
222
  return { ...routes[url], params: {} };
223
223
  } else {
224
224
  for (const route in routes) {
@@ -321,6 +321,10 @@ class RouterFacade {
321
321
  request.bodyPlain = options && options.event && options.event.body ? options.event.body : "";
322
322
  } else if (req && req instanceof IncomingMessage) {
323
323
  const parsedBody: any = await this.parseRequestBody(req);
324
+ const parsedUrl = req.url ? url.parse(req.url) : null;
325
+ const searchParams = parsedUrl && parsedUrl.query ? new URLSearchParams(parsedUrl.query) : null;
326
+ const queryParams = searchParams ? Object.fromEntries(searchParams.entries()) : {};
327
+
324
328
  request.message = req;
325
329
  request.bodyPlain = parsedBody ? parsedBody.plain : "";
326
330
  request.body = parsedBody ? parsedBody.parsed : {};
@@ -329,6 +333,9 @@ class RouterFacade {
329
333
  request.url = req.url ? req.url : "";
330
334
  request.method = req.method ? req.method : "";
331
335
  request.socket = req.socket;
336
+ request.query = queryParams;
337
+ request.queryRaw = parsedUrl && parsedUrl.query ? parsedUrl.query : "";
338
+ request.pathname = parsedUrl ? parsedUrl.pathname : "";
332
339
  }
333
340
  return request;
334
341
  }