@deepkit/http 1.0.19 → 1.1.0

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 (85) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/dist/cjs/index.d.ts +2 -0
  3. package/dist/cjs/index.js +2 -0
  4. package/dist/cjs/index.js.map +1 -1
  5. package/dist/cjs/src/decorator.js +11 -7
  6. package/dist/cjs/src/decorator.js.map +1 -1
  7. package/dist/cjs/src/filter.js +1 -1
  8. package/dist/cjs/src/filter.js.map +1 -1
  9. package/dist/cjs/src/http.d.ts +3 -0
  10. package/dist/cjs/src/http.js +90 -61
  11. package/dist/cjs/src/http.js.map +1 -1
  12. package/dist/cjs/src/logger.js +0 -7
  13. package/dist/cjs/src/logger.js.map +1 -1
  14. package/dist/cjs/src/middleware.d.ts +2 -2
  15. package/dist/cjs/src/middleware.js +2 -2
  16. package/dist/cjs/src/mime.d.ts +19 -0
  17. package/dist/cjs/src/mime.js +147 -0
  18. package/dist/cjs/src/mime.js.map +1 -0
  19. package/dist/cjs/src/model.d.ts +7 -0
  20. package/dist/cjs/src/model.js +16 -7
  21. package/dist/cjs/src/model.js.map +1 -1
  22. package/dist/cjs/src/module.js +9 -5
  23. package/dist/cjs/src/module.js.map +1 -1
  24. package/dist/cjs/src/query-string.d.ts +6 -0
  25. package/dist/cjs/src/query-string.js +229 -0
  26. package/dist/cjs/src/query-string.js.map +1 -0
  27. package/dist/cjs/src/request-parser.js +12 -10
  28. package/dist/cjs/src/request-parser.js.map +1 -1
  29. package/dist/cjs/src/router.js +14 -15
  30. package/dist/cjs/src/router.js.map +1 -1
  31. package/dist/cjs/src/static-serving.d.ts +6 -0
  32. package/dist/cjs/src/static-serving.js +232 -28
  33. package/dist/cjs/src/static-serving.js.map +1 -1
  34. package/dist/cjs/src/utils.js +1 -1
  35. package/dist/cjs/src/utils.js.map +1 -1
  36. package/dist/esm/index.d.ts +2 -0
  37. package/dist/esm/index.js +2 -0
  38. package/dist/esm/index.js.map +1 -1
  39. package/dist/esm/src/decorator.js +11 -7
  40. package/dist/esm/src/decorator.js.map +1 -1
  41. package/dist/esm/src/filter.js +1 -1
  42. package/dist/esm/src/filter.js.map +1 -1
  43. package/dist/esm/src/http.d.ts +3 -0
  44. package/dist/esm/src/http.js +55 -60
  45. package/dist/esm/src/http.js.map +1 -1
  46. package/dist/esm/src/logger.js +0 -7
  47. package/dist/esm/src/logger.js.map +1 -1
  48. package/dist/esm/src/middleware.d.ts +2 -2
  49. package/dist/esm/src/middleware.js +2 -2
  50. package/dist/esm/src/mime.d.ts +19 -0
  51. package/dist/esm/src/mime.js +142 -0
  52. package/dist/esm/src/mime.js.map +1 -0
  53. package/dist/esm/src/model.d.ts +7 -0
  54. package/dist/esm/src/model.js +16 -7
  55. package/dist/esm/src/model.js.map +1 -1
  56. package/dist/esm/src/module.js +9 -5
  57. package/dist/esm/src/module.js.map +1 -1
  58. package/dist/esm/src/query-string.d.ts +6 -0
  59. package/dist/esm/src/query-string.js +226 -0
  60. package/dist/esm/src/query-string.js.map +1 -0
  61. package/dist/esm/src/request-parser.js +12 -10
  62. package/dist/esm/src/request-parser.js.map +1 -1
  63. package/dist/esm/src/router.js +14 -12
  64. package/dist/esm/src/router.js.map +1 -1
  65. package/dist/esm/src/static-serving.d.ts +6 -0
  66. package/dist/esm/src/static-serving.js +234 -27
  67. package/dist/esm/src/static-serving.js.map +1 -1
  68. package/dist/esm/src/utils.js +1 -1
  69. package/dist/esm/src/utils.js.map +1 -1
  70. package/index.ts +2 -0
  71. package/package.json +22 -25
  72. package/src/http.ts +40 -6
  73. package/src/middleware.ts +2 -2
  74. package/src/mime.ts +141 -0
  75. package/src/model.ts +10 -2
  76. package/src/module.ts +4 -2
  77. package/src/query-string.ts +228 -0
  78. package/src/request-parser.ts +6 -4
  79. package/src/router.ts +3 -3
  80. package/src/static-serving.ts +221 -8
  81. package/tsconfig.json +3 -17
  82. package/tsconfig.spec.json +4 -1
  83. package/LICENSE +0 -21
  84. package/dist/cjs/tsconfig.tsbuildinfo +0 -1
  85. package/dist/esm/tsconfig.esm.tsbuildinfo +0 -1
@@ -0,0 +1,229 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseQueryString = parseQueryString;
4
+ const __ΩRecord = ['K', 'T', 'Record', 'l\'e#"Rb!b"Pde"!N#!w#y'];
5
+ function __assignType(fn, args) {
6
+ fn.__type = args;
7
+ return fn;
8
+ }
9
+ decode.__type = ['str', 'decode', 'P&2!&/"'];
10
+ parseFlat.__type = ['str', () => __ΩRecord, 'parseFlat', 'P&2!&"o"#/#'];
11
+ parseValues.__type = ['str', () => __ΩRecord, 'parseValues', 'P&2!&"o"#/#'];
12
+ parseObject.__type = ['chain', 'val', 'parseObject', 'P&F2!"2""/#'];
13
+ parseKeys.__type = ['key', 'val', 'parseKeys', 'P&2!"2""/#'];
14
+ arrayToObject.__type = ['source', () => __ΩRecord, 'arrayToObject', 'P"F2!&"o"#/#'];
15
+ merge.__type = ['target', 'source', 'merge', 'P"2!"2""/#'];
16
+ compact.__type = [() => __ΩRecord, 'value', () => __ΩRecord, 'compact', 'P&"o!#2"&"o##/$'];
17
+ parseQueryString.__type = ['str', () => __ΩRecord, 'parseQueryString', 'P&2!&"o"#/#'];
18
+ /*
19
+ * Deepkit Framework
20
+ * Copyright (C) 2021 Deepkit UG, Marc J. Schmidt
21
+ *
22
+ * This program is free software: you can redistribute it and/or modify
23
+ * it under the terms of the MIT License.
24
+ *
25
+ * You should have received a copy of the MIT License along with this program.
26
+ */
27
+ /**
28
+ * Query string parser compatible with the default behavior of `qs.parse`.
29
+ *
30
+ * Supports nested objects (`a[b]=1`), arrays (`a[]=1`, `a[0]=1`) and duplicate keys (`a=1&a=2` becomes an array).
31
+ *
32
+ * Limits:
33
+ * - at most 1000 parameters are parsed, the rest is ignored
34
+ * - at most 5 levels of nesting, the remainder is used as literal key (`a[b][c][d][e][f][g]` → `a.b.c.d.e.f['[g]']`)
35
+ * - array indices above 20 create object keys instead of sparse arrays (`a[100]=1` → `{a: {100: '1'}}`)
36
+ *
37
+ * Keys that exist on Object.prototype (`__proto__`, `constructor`, `toString`, `hasOwnProperty`, ...) are dropped.
38
+ */
39
+ const parameterLimit = 1000;
40
+ const depthLimit = 5;
41
+ const arrayLimit = 20;
42
+ const has = Object.prototype.hasOwnProperty;
43
+ const isArray = Array.isArray;
44
+ function decode(str) {
45
+ if (str.indexOf('+') !== -1)
46
+ str = str.replace(/\+/g, ' ');
47
+ if (str.indexOf('%') === -1)
48
+ return str;
49
+ try {
50
+ return decodeURIComponent(str);
51
+ }
52
+ catch {
53
+ return str;
54
+ }
55
+ }
56
+ /**
57
+ * Query strings without brackets, the common case: `a=1&b=2&a=3` → `{a: ['1', '3'], b: '2'}`.
58
+ * Same result as the general parser, without its nesting and compaction steps.
59
+ */
60
+ function parseFlat(str) {
61
+ const obj = {};
62
+ for (const part of str.split('&', parameterLimit)) {
63
+ const pos = part.indexOf('=');
64
+ const key = decode(pos === -1 ? part : part.slice(0, pos));
65
+ if (!key || has.call(Object.prototype, key))
66
+ continue;
67
+ const val = pos === -1 ? '' : decode(part.slice(pos + 1));
68
+ obj[key] = has.call(obj, key) ? [].concat(obj[key], val) : val;
69
+ }
70
+ return obj;
71
+ }
72
+ const nesting = /[[\]]|%5[bd]/i;
73
+ function parseValues(str) {
74
+ const obj = Object.create(null);
75
+ const parts = str.replace(/%5B/gi, '[').replace(/%5D/gi, ']').split('&', parameterLimit);
76
+ for (const part of parts) {
77
+ const bracketEqualsPos = part.indexOf(']=');
78
+ const pos = bracketEqualsPos === -1 ? part.indexOf('=') : bracketEqualsPos + 1;
79
+ const key = decode(pos === -1 ? part : part.slice(0, pos));
80
+ const val = pos === -1 ? '' : decode(part.slice(pos + 1));
81
+ obj[key] = has.call(obj, key) ? [].concat(obj[key], val) : val;
82
+ }
83
+ return obj;
84
+ }
85
+ function parseObject(chain, val) {
86
+ let leaf = val;
87
+ for (let i = chain.length - 1; i >= 0; --i) {
88
+ let obj;
89
+ const root = chain[i];
90
+ if (root === '[]') {
91
+ obj = [].concat(leaf);
92
+ }
93
+ else {
94
+ obj = {};
95
+ const cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root;
96
+ const index = parseInt(cleanRoot, 10);
97
+ if (!isNaN(index) &&
98
+ root !== cleanRoot &&
99
+ String(index) === cleanRoot &&
100
+ index >= 0 &&
101
+ index <= arrayLimit) {
102
+ obj = [];
103
+ obj[index] = leaf;
104
+ }
105
+ else if (cleanRoot !== '__proto__') {
106
+ obj[cleanRoot] = leaf;
107
+ }
108
+ }
109
+ leaf = obj;
110
+ }
111
+ return leaf;
112
+ }
113
+ function parseKeys(key, val) {
114
+ if (!key)
115
+ return;
116
+ const brackets = /(\[[^[\]]*])/;
117
+ const child = /(\[[^[\]]*])/g;
118
+ let segment = brackets.exec(key);
119
+ const parent = segment ? key.slice(0, segment.index) : key;
120
+ const keys = [];
121
+ if (parent) {
122
+ if (has.call(Object.prototype, parent))
123
+ return;
124
+ keys.push(parent);
125
+ }
126
+ let i = 0;
127
+ while ((segment = child.exec(key)) !== null && i < depthLimit) {
128
+ i += 1;
129
+ if (has.call(Object.prototype, segment[1].slice(1, -1)))
130
+ return;
131
+ keys.push(segment[1]);
132
+ }
133
+ // depth limit reached, the remainder is used as literal key
134
+ if (segment)
135
+ keys.push('[' + key.slice(segment.index) + ']');
136
+ return parseObject(keys, val);
137
+ }
138
+ function arrayToObject(source) {
139
+ const obj = {};
140
+ for (let i = 0; i < source.length; ++i) {
141
+ if (source[i] !== undefined)
142
+ obj[i] = source[i];
143
+ }
144
+ return obj;
145
+ }
146
+ function merge(target, source) {
147
+ if (!source)
148
+ return target;
149
+ if (typeof source !== 'object') {
150
+ if (isArray(target)) {
151
+ target.push(source);
152
+ }
153
+ else if (target && typeof target === 'object') {
154
+ if (!has.call(Object.prototype, source))
155
+ target[source] = true;
156
+ }
157
+ else {
158
+ return [target, source];
159
+ }
160
+ return target;
161
+ }
162
+ if (!target || typeof target !== 'object') {
163
+ return [target].concat(source);
164
+ }
165
+ if (isArray(target) && isArray(source)) {
166
+ source.forEach(__assignType((item, i) => {
167
+ if (has.call(target, i)) {
168
+ const targetItem = target[i];
169
+ if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') {
170
+ target[i] = merge(targetItem, item);
171
+ }
172
+ else {
173
+ target.push(item);
174
+ }
175
+ }
176
+ else {
177
+ target[i] = item;
178
+ }
179
+ }, ['item', 'i', '', 'P"2!"2""/#']));
180
+ return target;
181
+ }
182
+ const mergeTarget = isArray(target) && !isArray(source) ? arrayToObject(target) : target;
183
+ for (const key of Object.keys(source)) {
184
+ mergeTarget[key] = has.call(mergeTarget, key) ? merge(mergeTarget[key], source[key]) : source[key];
185
+ }
186
+ return mergeTarget;
187
+ }
188
+ /**
189
+ * Removes holes from (sparse) arrays, e.g. `a[1]=x` results in `['x']`, not `[undefined, 'x']`.
190
+ */
191
+ function compact(value) {
192
+ const queue = [{ obj: { o: value }, prop: 'o' }];
193
+ const refs = [];
194
+ for (let i = 0; i < queue.length; ++i) {
195
+ const obj = queue[i].obj[queue[i].prop];
196
+ for (const key of Object.keys(obj)) {
197
+ const val = obj[key];
198
+ if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {
199
+ queue.push({ obj, prop: key });
200
+ refs.push(val);
201
+ }
202
+ }
203
+ }
204
+ while (queue.length > 1) {
205
+ const item = queue.pop();
206
+ const obj = item.obj[item.prop];
207
+ if (isArray(obj))
208
+ item.obj[item.prop] = obj.filter(__assignType(v => v !== undefined, ['v', '', 'P"2!"/"']));
209
+ }
210
+ return value;
211
+ }
212
+ /**
213
+ * Parses a query string (without leading `?`) into an object.
214
+ *
215
+ * `a=1&b[c]=2&d[]=3&d[]=4` → `{a: '1', b: {c: '2'}, d: ['3', '4']}`
216
+ */
217
+ function parseQueryString(str) {
218
+ if (!str)
219
+ return {};
220
+ if (!nesting.test(str))
221
+ return parseFlat(str);
222
+ const values = parseValues(str);
223
+ let obj = {};
224
+ for (const key of Object.keys(values)) {
225
+ obj = merge(obj, parseKeys(key, values[key]));
226
+ }
227
+ return compact(obj);
228
+ }
229
+ //# sourceMappingURL=query-string.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-string.js","sourceRoot":"","sources":["../../../src/query-string.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,12 @@ function __assignType(fn, args) {
12
12
  fn.__type = args;
13
13
  return fn;
14
14
  }
15
+ extractValues.__type = ['IncomingForm', 'form', 'fields', () => __ΩRecord, 'extractValues', 'P"w!2"!2#&#o$#/%'];
16
+ parseBody.__type = [() => __ΩHttpParserOptions, 'options', () => model_js_1.HttpRequest, 'req', () => router_js_1.UploadedFile, 'foundFiles', 'parseBody', 'Pn!2"P7#2$P&P7%LM2&"/\''];
17
+ parseRoutePathToRegex.__type = ['path', () => type_1.ReflectionParameter, 'params', 'regex', 'parameterNames', 'parseRoutePathToRegex', 'P&2!P7"F2#P&4$P&\'LM4%M/&'];
18
+ isTypeUnknown.__type = ['Type', 'type', 'isTypeUnknown', 'P"w!2")/#'];
19
+ buildRequestParser.__type = [() => __ΩHttpParserOptions, 'parseOptions', () => type_1.ReflectionParameter, 'parameters', () => router_js_1.RouteConfig, 'routeConfig', () => model_js_1.HttpRequest, 'request', '', 'buildRequestParser', 'Pn!2"P7#F2$P7%2&8PP7\'2("F/)/*'];
20
+ getRequestParserCodeForParameters.__type = [() => core_1.CompilerContext, 'compiler', () => __ΩHttpParserOptions, 'parseOptions', () => ParameterForRequestParser, 'parameters', () => injector_1.InjectorModule, 'module', () => __ΩClassType, 'resolverForParameterName', () => __ΩClassType, 'resolverForToken', 'pathParameterNames', () => router_js_1.RouteConfig, 'routeConfig', 'config', 'getRequestParserCodeForParameters', 'PP7!2"n#2$P7%F2&PP"7\'4(8&n)E4*8"n+E4,8P&\'LM4-8P7.4/8M20"/1'];
15
21
  /*@ts-ignore*/
16
22
  var { __ΩClassType } = require('@deepkit/core');
17
23
  const core_1 = require("@deepkit/core");
@@ -19,7 +25,7 @@ const injector_1 = require("@deepkit/injector");
19
25
  const type_1 = require("@deepkit/type");
20
26
  const model_js_1 = require("./model.js");
21
27
  const router_js_1 = require("./router.js");
22
- const qs_1 = __importDefault(require("qs"));
28
+ const query_string_js_1 = require("./query-string.js");
23
29
  const formidable_1 = __importDefault(require("formidable"));
24
30
  /*@ts-ignore*/
25
31
  var { __ΩHttpParserOptions } = require('./module.config.js');
@@ -43,7 +49,6 @@ function extractValues(form, fields) {
43
49
  }
44
50
  }, ['param0', '', 'P"2!"/"'])));
45
51
  }
46
- extractValues.__type = ['IncomingForm', 'form', 'fields', () => __ΩRecord, 'extractValues', 'P"w!2"!2#&#o$#/%'];
47
52
  function parseBody(options, req, foundFiles) {
48
53
  const { multipartJsonKey, ...formidableOptions } = options;
49
54
  const form = (0, formidable_1.default)(Object.assign({
@@ -110,7 +115,6 @@ function parseBody(options, req, foundFiles) {
110
115
  parseData(fields, files);
111
116
  }, ['resolve', 'reject', '', 'P"2!"2""/#']));
112
117
  }
113
- parseBody.__type = [() => __ΩHttpParserOptions, 'options', () => model_js_1.HttpRequest, 'req', () => router_js_1.UploadedFile, 'foundFiles', 'parseBody', 'Pn!2"P7#2$P&P7%LM2&"/\''];
114
118
  class ParameterForRequestParser {
115
119
  constructor(parameter) {
116
120
  this.parameter = parameter;
@@ -186,14 +190,12 @@ function parseRoutePathToRegex(path, params) {
186
190
  }, ['a', 'name', '', 'P"2!"2""/#']));
187
191
  return { regex: path, parameterNames };
188
192
  }
189
- parseRoutePathToRegex.__type = ['path', () => type_1.ReflectionParameter, 'params', 'regex', 'parameterNames', 'parseRoutePathToRegex', 'P&2!P7"F2#P&4$P&\'LM4%M/&'];
190
193
  function isTypeUnknown(type) {
191
194
  if (type.id)
192
195
  return false; //if is has an id we treat it as nominal type
193
196
  return type.kind === type_1.ReflectionKind.unknown || type.kind === type_1.ReflectionKind.any
194
197
  || type.kind === type_1.ReflectionKind.never;
195
198
  }
196
- isTypeUnknown.__type = ['Type', 'type', 'isTypeUnknown', 'P"w!2")/#'];
197
199
  function buildRequestParser(parseOptions, parameters, routeConfig) {
198
200
  const compiler = new core_1.CompilerContext();
199
201
  const params = parameters.map(__assignType(v => new ParameterForRequestParser(v), ['v', '', 'P"2!"/"']));
@@ -213,9 +215,9 @@ function buildRequestParser(parseOptions, parameters, routeConfig) {
213
215
  routeConfig
214
216
  });
215
217
  compiler.context.set('ValidationError', type_1.ValidationError);
216
- compiler.context.set('qs', qs_1.default);
218
+ compiler.context.set('parseQueryString', query_string_js_1.parseQueryString);
217
219
  let needsQueryString = !!params.find(__assignType(v => v.query || v.queries || v.requestParser, ['v', '', 'P"2!"/"']));
218
- const query = needsQueryString ? '_qPosition === -1 ? {} : qs.parse(_url.substr(_qPosition + 1))' : '{}';
220
+ const query = needsQueryString ? '_qPosition === -1 ? {} : parseQueryString(_url.substr(_qPosition + 1))' : '{}';
219
221
  const regexVar = compiler.reserveVariable('regex', new RegExp('^' + pathRegex + '$'));
220
222
  return compiler.build(`
221
223
  const _method = request.method || 'GET';
@@ -229,7 +231,6 @@ function buildRequestParser(parseOptions, parameters, routeConfig) {
229
231
  return ${code}
230
232
  `, 'request');
231
233
  }
232
- buildRequestParser.__type = [() => __ΩHttpParserOptions, 'parseOptions', () => type_1.ReflectionParameter, 'parameters', () => router_js_1.RouteConfig, 'routeConfig', () => model_js_1.HttpRequest, 'request', '', 'buildRequestParser', 'Pn!2"P7#F2$P7%2&8PP7\'2("F/)/*'];
233
234
  function getRequestParserCodeForParameters(compiler, parseOptions, parameters, config) {
234
235
  compiler.set({ DependenciesUnmetError: injector_1.DependenciesUnmetError });
235
236
  let enableParseBody = false;
@@ -294,7 +295,9 @@ function getRequestParserCodeForParameters(compiler, parseOptions, parameters, c
294
295
  const validatorVar = compiler.reserveVariable('argumentValidator', validator);
295
296
  const queryPath = parameter.typePath === undefined && !parameter.queries ? parameter.parameter.name : parameter.typePath;
296
297
  const accessor = queryPath ? `['` + (queryPath.replace(/\./g, `']['`)) + `']` : '';
297
- const queryAccessor = parameter.header ? `_headers${accessor}` : queryPath ? `_query${accessor}` : '_query';
298
+ // header names are case-insensitive, Node lowercases them in request.headers
299
+ const headerAccessor = queryPath ? `_headers[${JSON.stringify(queryPath.toLowerCase())}]` : '_headers';
300
+ const queryAccessor = parameter.header ? headerAccessor : queryPath ? `_query${accessor}` : '_query';
298
301
  if ((0, type_1.isOptional)(parameter.parameter.parameter) || (0, type_1.hasDefaultValue)(parameter.parameter.parameter)) {
299
302
  setParameters.push(`parameters.${parameter.parameter.name} = ${queryAccessor} === undefined ? undefined : ${converterVar}(${queryAccessor}, {loosely: true});`);
300
303
  }
@@ -413,5 +416,4 @@ function getRequestParserCodeForParameters(compiler, parseOptions, parameters, c
413
416
  }
414
417
  return parametersLoader;
415
418
  }
416
- getRequestParserCodeForParameters.__type = [() => core_1.CompilerContext, 'compiler', () => __ΩHttpParserOptions, 'parseOptions', () => ParameterForRequestParser, 'parameters', () => injector_1.InjectorModule, 'module', () => __ΩClassType, 'resolverForParameterName', () => __ΩClassType, 'resolverForToken', 'pathParameterNames', () => router_js_1.RouteConfig, 'routeConfig', 'config', 'getRequestParserCodeForParameters', 'PP7!2"n#2$P7%F2&PP"7\'4(8&n)E4*8"n+E4,8P&\'LM4-8P7.4/8M20"/1'];
417
419
  //# sourceMappingURL=request-parser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"request-parser.js","sourceRoot":"","sources":["../../../src/request-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request-parser.js","sourceRoot":"","sources":["../../../src/request-parser.ts"],"names":[],"mappings":"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"}
@@ -5,9 +5,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
- var __importDefault = (this && this.__importDefault) || function (mod) {
9
- return (mod && mod.__esModule) ? mod : { "default": mod };
10
- };
11
8
  Object.defineProperty(exports, "__esModule", { value: true });
12
9
  exports.HttpRouter = exports.HttpRouterRegistry = exports.HttpRouterRegistryFunctionRegistrar = exports.__ΩHttpRouterFunctionOptions = exports.__ΩRouteParameterResolverContext = exports.__ΩRouteParameterResolver = exports.ParsedRoute = exports.RouteConfig = exports.__ΩRouteClassControllerAction = exports.__ΩRouteFunctionControllerAction = exports.UploadedFile = exports.UploadedFileSymbol = exports.__ΩRouteParameterResolverForInjector = void 0;
13
10
  exports.getRouteActionLabel = getRouteActionLabel;
@@ -19,6 +16,15 @@ function __assignType(fn, args) {
19
16
  fn.__type = args;
20
17
  return fn;
21
18
  }
19
+ getRouteActionLabel.__type = [() => __ΩRouteClassControllerAction, () => __ΩRouteFunctionControllerAction, 'action', 'getRouteActionLabel', 'PPn!n"J2#&/$'];
20
+ parseRouteControllerAction.__type = [() => RouteConfig, 'routeConfig', () => ParsedRoute, 'parseRouteControllerAction', 'PP7!2"P7#/$'];
21
+ dotToUrlPath.__type = ['dotPath', 'dotToUrlPath', 'P&2!&/"'];
22
+ filterMiddlewaresForRoute.__type = [() => __ΩMiddlewareRegistryEntry, 'middlewareRawConfigs', () => RouteConfig, 'routeConfig', 'fullPath', () => middleware_js_1.HttpMiddlewareConfig, 'config', () => injector_1.InjectorModule, 'module', 'filterMiddlewaresForRoute', 'Pn!F2"P7#2$&2%PP7&4\'P"7(4)MF/*'];
23
+ convertOptions.__type = ['methods', () => __ΩHttpRouterFunctionOptions, 'pathOrOptions', () => __ΩPartial, () => __ΩHttpRouterFunctionOptions, 'defaultOptions', () => __ΩHttpRouterFunctionOptions, 'convertOptions', 'P&F2!P&n"J2#n%o$"2&n\'/('];
24
+ filterValidReturnType.__type = ['Type', 'type', 'filterValidReturnType', 'P"w!2"P"w!-J/#'];
25
+ createRouteConfigFromHttpAction.__type = [() => __ΩRouteClassControllerAction, () => __ΩRouteFunctionControllerAction, 'routeAction', () => decorator_js_1.HttpAction, 'action', () => injector_1.InjectorModule, 'module', () => decorator_js_1.HttpController, 'controller', 'createRouteConfigFromHttpAction', 'PPn!n"J2#P7$2%P"7&2\'8P7(2)8"/*'];
26
+ const Ωt0 = ['"'];
27
+ const Ωt1 = ['"'];
22
28
  /*@ts-ignore*/
23
29
  var { __ΩClassType } = require('@deepkit/core');
24
30
  /*
@@ -52,7 +58,7 @@ const app_1 = require("@deepkit/app");
52
58
  var { __ΩHttpMiddlewareFn } = require('./middleware.js');
53
59
  const middleware_js_1 = require("./middleware.js");
54
60
  //@ts-ignore
55
- const qs_1 = __importDefault(require("qs"));
61
+ const query_string_js_1 = require("./query-string.js");
56
62
  const http_js_1 = require("./http.js");
57
63
  const request_parser_js_1 = require("./request-parser.js");
58
64
  const module_config_js_1 = require("./module.config.js");
@@ -80,7 +86,6 @@ function getRouteActionLabel(action) {
80
86
  return `${(0, core_1.getClassName)(action.controller)}.${action.methodName}`;
81
87
  return action.fn.name;
82
88
  }
83
- getRouteActionLabel.__type = [() => __ΩRouteClassControllerAction, () => __ΩRouteFunctionControllerAction, 'action', 'getRouteActionLabel', 'PPn!n"J2#&/$'];
84
89
  class RouteConfig {
85
90
  constructor(name, httpMethods, path, action, internal = false) {
86
91
  this.name = name;
@@ -99,7 +104,7 @@ class RouteConfig {
99
104
  /**
100
105
  * An arbitrary data container the user can use to store app specific settings/values.
101
106
  */
102
- this.data = (Map.Ω = [['"'], ['"']], new Map());
107
+ this.data = (Map.Ω = [Ωt0, Ωt1], new Map());
103
108
  }
104
109
  getReflectionFunction() {
105
110
  return this.action.type === 'controller' ?
@@ -123,7 +128,7 @@ class RouteConfig {
123
128
  }
124
129
  }
125
130
  exports.RouteConfig = RouteConfig;
126
- RouteConfig.__type = ['baseUrl', function () { return ''; }, 'statusCode', 'description', 'Type', 'type', 'responses', function () { return []; }, function () { return ''; }, 'groups', function () { return []; }, 'category', function () { return ''; }, 'returnType', () => __ΩSerializationOptions, 'serializationOptions', () => type_1.Serializer, 'serializer', () => injector_1.InjectorModule, 'module', () => __ΩClassType, 'resolverForToken', function () { return new Map(); }, () => middleware_js_1.HttpMiddlewareConfig, 'config', () => injector_1.InjectorModule, 'middlewares', function () { return []; }, () => __ΩClassType, 'resolverForParameterName', function () { return new Map(); }, 'data', function () { return (Map.Ω = [['"'], ['"']], new Map()); }, 'name', 'httpMethods', 'path', () => __ΩRouteClassControllerAction, () => __ΩRouteFunctionControllerAction, 'action', 'internal', () => false, 'constructor', () => type_1.ReflectionFunction, 'getReflectionFunction', 'getSchemaForResponse', 'getFullPath', 'RouteConfig', '&3!>"P\'4#&4$"w%4&8MF3\'>(&3$>)&F3*>+&3,>-"w%3.8n/308P71328P"73348"n5E36>7PP7849P"7:448MF3;><&n=E3>>?!3@>AP&2B:9&F2C:9&2D:9PnEnFJ2G:9)2H:>I"0JPP7K0LP\'2#P"w%-J0MP&0N5wO'];
131
+ RouteConfig.__type = ['baseUrl', function () { return ''; }, 'statusCode', 'description', 'Type', 'type', 'responses', function () { return []; }, function () { return ''; }, 'groups', function () { return []; }, 'category', function () { return ''; }, 'returnType', () => __ΩSerializationOptions, 'serializationOptions', () => type_1.Serializer, 'serializer', () => injector_1.InjectorModule, 'module', () => __ΩClassType, 'resolverForToken', function () { return new Map(); }, () => middleware_js_1.HttpMiddlewareConfig, 'config', () => injector_1.InjectorModule, 'middlewares', function () { return []; }, () => __ΩClassType, 'resolverForParameterName', function () { return new Map(); }, 'data', function () { return (Map.Ω = [Ωt0, Ωt1], new Map()); }, 'name', 'httpMethods', 'path', () => __ΩRouteClassControllerAction, () => __ΩRouteFunctionControllerAction, 'action', 'internal', () => false, 'constructor', () => type_1.ReflectionFunction, 'getReflectionFunction', 'getSchemaForResponse', 'getFullPath', 'RouteConfig', '&3!>"P\'4#&4$"w%4&8MF3\'>(&3$>)&F3*>+&3,>-"w%3.8n/308P71328P"73348"n5E36>7PP7849P"7:448MF3;><&n=E3>>?!3@>AP&2B:9&F2C:9&2D:9PnEnFJ2G:9)2H:>I"0JPP7K0LP\'2#P"w%-J0MP&0N5wO'];
127
132
  class ParsedRoute {
128
133
  constructor(routeConfig) {
129
134
  this.routeConfig = routeConfig;
@@ -160,13 +165,11 @@ function parseRouteControllerAction(routeConfig) {
160
165
  }
161
166
  return parsedRoute;
162
167
  }
163
- parseRouteControllerAction.__type = [() => RouteConfig, 'routeConfig', () => ParsedRoute, 'parseRouteControllerAction', 'PP7!2"P7#/$'];
164
168
  function dotToUrlPath(dotPath) {
165
169
  if (-1 === dotPath.indexOf('.'))
166
170
  return dotPath;
167
171
  return dotPath.replace(/\./g, '][').replace('][', '[') + ']';
168
172
  }
169
- dotToUrlPath.__type = ['dotPath', 'dotToUrlPath', 'P&2!&/"'];
170
173
  const __ΩRouteParameterResolver = [() => __ΩRouteParameterResolverContext, 'context', 'resolve', 'RouteParameterResolver', 'PPn!2"P""`J1#Mw$y'];
171
174
  exports.__ΩRouteParameterResolver = __ΩRouteParameterResolver;
172
175
  const __ΩRouteParameterResolverContext = [() => __ΩClassType, 'token', () => RouteConfig, 'route', () => model_js_1.HttpRequest, 'request', 'name', 'value', () => __ΩHttpRequestQuery, 'query', () => __ΩHttpRequestResolvedParameters, 'parameters', () => type_1.ReflectionParameter, 'type', 'RouteParameterResolverContext', 'PPn!&+"J4"P7#4$P7%4&"4\'"4(n)4*n+4,P7-4.Mw/y'];
@@ -248,7 +251,6 @@ function filterMiddlewaresForRoute(middlewareRawConfigs, routeConfig, fullPath)
248
251
  }, ['a', 'b', '', 'P"2!"2""/#']));
249
252
  return middlewareConfigs;
250
253
  }
251
- filterMiddlewaresForRoute.__type = [() => __ΩMiddlewareRegistryEntry, 'middlewareRawConfigs', () => RouteConfig, 'routeConfig', 'fullPath', () => middleware_js_1.HttpMiddlewareConfig, 'config', () => injector_1.InjectorModule, 'module', 'filterMiddlewaresForRoute', 'Pn!F2"P7#2$&2%PP7&4\'P"7(4)MF/*'];
252
254
  const __ΩHttpRouterFunctionOptions = ['path', 'name', 'methods', 'description', 'category', 'groups', () => __ΩRecord, 'data', 'baseUrl', () => middleware_js_1.HttpMiddlewareConfig, '', 'middlewares', () => type_1.Serializer, 'serializer', () => __ΩSerializationOptions, 'serializationOptions', () => __ΩClassType, 'resolverForToken', () => __ΩClassType, 'resolverForParameterName', 'statusCode', 'Type', 'type', 'responses', 'HttpRouterFunctionOptions', 'P&4!&4"8&F4#8&4$8&4%8&F4&8""o\'#4(8&4)8PP7*/+F4,8P7-4.8n/408"n1E428&n3E448P\'45&4$"w6478MF488Mw9y'];
253
255
  exports.__ΩHttpRouterFunctionOptions = __ΩHttpRouterFunctionOptions;
254
256
  function convertOptions(methods, pathOrOptions, defaultOptions) {
@@ -257,7 +259,6 @@ function convertOptions(methods, pathOrOptions, defaultOptions) {
257
259
  return options;
258
260
  return { ...options, methods };
259
261
  }
260
- convertOptions.__type = ['methods', () => __ΩHttpRouterFunctionOptions, 'pathOrOptions', () => __ΩPartial, () => __ΩHttpRouterFunctionOptions, 'defaultOptions', () => __ΩHttpRouterFunctionOptions, 'convertOptions', 'P&F2!P&n"J2#n%o$"2&n\'/('];
261
262
  /**
262
263
  * Annotated types like HTMLResponse/JSONResponse are not used for serialization.
263
264
  */
@@ -266,7 +267,6 @@ function filterValidReturnType(type) {
266
267
  return;
267
268
  return type;
268
269
  }
269
- filterValidReturnType.__type = ['Type', 'type', 'filterValidReturnType', 'P"w!2"P"w!-J/#'];
270
270
  class HttpRouterRegistryFunctionRegistrar {
271
271
  constructor() {
272
272
  this.defaultOptions = {};
@@ -417,7 +417,6 @@ function createRouteConfigFromHttpAction(routeAction, action, module, controller
417
417
  routeConfig.serializationOptions = action.serializationOptions;
418
418
  return routeConfig;
419
419
  }
420
- createRouteConfigFromHttpAction.__type = [() => __ΩRouteClassControllerAction, () => __ΩRouteFunctionControllerAction, 'routeAction', () => decorator_js_1.HttpAction, 'action', () => injector_1.InjectorModule, 'module', () => decorator_js_1.HttpController, 'controller', 'createRouteConfigFromHttpAction', 'PPn!n"J2#P7$2%P"7&2\'8P7(2)8"/*'];
421
420
  class HttpRouterRegistry extends HttpRouterRegistryFunctionRegistrar {
422
421
  constructor() {
423
422
  super(...arguments);
@@ -574,7 +573,7 @@ class HttpRouter {
574
573
  this.buildId = this.registry.getBuildId();
575
574
  const compiler = new core_1.CompilerContext;
576
575
  compiler.context.set('ValidationError', type_1.ValidationError);
577
- compiler.context.set('qs', qs_1.default);
576
+ compiler.context.set('parseQueryString', query_string_js_1.parseQueryString);
578
577
  const code = [];
579
578
  for (const route of this.getRoutes()) {
580
579
  code.push(this.getRouteCode(compiler, route));
@@ -587,7 +586,7 @@ class HttpRouter {
587
586
  const _qPosition = _url.indexOf('?');
588
587
  let uploadedFiles = {};
589
588
  const _path = _qPosition === -1 ? _url : _url.substr(0, _qPosition);
590
- const _query = _qPosition === -1 ? {} : qs.parse(_url.substr(_qPosition + 1));
589
+ const _query = _qPosition === -1 ? {} : parseQueryString(_url.substr(_qPosition + 1));
591
590
  ${code.join('\n')}
592
591
  `, 'request');
593
592
  }