@spinajs/http 2.0.38 → 2.0.45

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 (63) hide show
  1. package/lib/controllers.d.ts +5 -5
  2. package/lib/controllers.js +15 -8
  3. package/lib/controllers.js.map +1 -1
  4. package/lib/decorators.d.ts +2 -2
  5. package/lib/decorators.js.map +1 -1
  6. package/lib/interfaces.d.ts +41 -8
  7. package/lib/interfaces.js +10 -4
  8. package/lib/interfaces.js.map +1 -1
  9. package/lib/response-methods/badRequest.d.ts +1 -1
  10. package/lib/response-methods/badRequest.js +1 -1
  11. package/lib/response-methods/badRequest.js.map +1 -1
  12. package/lib/response-methods/conflict.d.ts +1 -1
  13. package/lib/response-methods/conflict.js +1 -1
  14. package/lib/response-methods/conflict.js.map +1 -1
  15. package/lib/response-methods/cookieResponse.d.ts +1 -2
  16. package/lib/response-methods/cookieResponse.js +1 -1
  17. package/lib/response-methods/cookieResponse.js.map +1 -1
  18. package/lib/response-methods/created.d.ts +1 -1
  19. package/lib/response-methods/created.js +1 -1
  20. package/lib/response-methods/created.js.map +1 -1
  21. package/lib/response-methods/file.d.ts +12 -8
  22. package/lib/response-methods/file.js +85 -35
  23. package/lib/response-methods/file.js.map +1 -1
  24. package/lib/response-methods/forbidden.d.ts +1 -1
  25. package/lib/response-methods/forbidden.js +1 -1
  26. package/lib/response-methods/forbidden.js.map +1 -1
  27. package/lib/response-methods/noContent.d.ts +1 -1
  28. package/lib/response-methods/noContent.js +1 -1
  29. package/lib/response-methods/noContent.js.map +1 -1
  30. package/lib/response-methods/notAllowed.d.ts +1 -1
  31. package/lib/response-methods/notAllowed.js +1 -1
  32. package/lib/response-methods/notAllowed.js.map +1 -1
  33. package/lib/response-methods/notFound.d.ts +1 -1
  34. package/lib/response-methods/notFound.js +1 -1
  35. package/lib/response-methods/notFound.js.map +1 -1
  36. package/lib/response-methods/ok.d.ts +1 -1
  37. package/lib/response-methods/ok.js +1 -1
  38. package/lib/response-methods/ok.js.map +1 -1
  39. package/lib/response-methods/pug.d.ts +1 -2
  40. package/lib/response-methods/pug.js +1 -1
  41. package/lib/response-methods/pug.js.map +1 -1
  42. package/lib/response-methods/redirect.d.ts +1 -1
  43. package/lib/response-methods/redirect.js +2 -2
  44. package/lib/response-methods/redirect.js.map +1 -1
  45. package/lib/response-methods/serverError.d.ts +1 -1
  46. package/lib/response-methods/serverError.js +1 -1
  47. package/lib/response-methods/serverError.js.map +1 -1
  48. package/lib/response-methods/unauthorized.d.ts +1 -1
  49. package/lib/response-methods/unauthorized.js +1 -1
  50. package/lib/response-methods/unauthorized.js.map +1 -1
  51. package/lib/responses.d.ts +0 -6
  52. package/lib/responses.js +1 -7
  53. package/lib/responses.js.map +1 -1
  54. package/lib/route-args/FromDi.d.ts +3 -3
  55. package/lib/route-args/FromDi.js +2 -2
  56. package/lib/route-args/FromDi.js.map +1 -1
  57. package/lib/route-args/FromForm.d.ts +8 -1
  58. package/lib/route-args/FromForm.js +54 -58
  59. package/lib/route-args/FromForm.js.map +1 -1
  60. package/lib/server.d.ts +3 -3
  61. package/lib/server.js +2 -2
  62. package/lib/server.js.map +1 -1
  63. package/package.json +15 -14
@@ -22,67 +22,117 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
25
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.JsonFileResponse = exports.FileResponse = void 0;
26
+ exports.JsonFileResponse = exports.FileResponse = exports.ZipResponse = void 0;
27
+ const di_1 = require("@spinajs/di");
30
28
  const exceptions_1 = require("@spinajs/exceptions");
31
- const fs = __importStar(require("fs"));
32
29
  const _ = __importStar(require("lodash"));
33
30
  const mime_1 = require("mime");
34
- const responses_1 = require("../responses");
35
- const tempfile_1 = __importDefault(require("tempfile"));
36
- class FileResponse extends responses_1.Response {
31
+ const interfaces_1 = require("./../interfaces");
32
+ class ZipResponse extends interfaces_1.Response {
37
33
  /**
38
- * Sends file to client at given path & filename. If file exists
34
+ * Sends zipped to client at given path & filename. If file exists
39
35
  * it will send file with 200 OK, if not exists 404 NOT FOUND
40
- * @param path - server full path to file
41
- * @param filename - real filename send to client
42
- * @param mimeType - optional mimetype. If not set, server will try to guess.
43
36
  */
44
- constructor(path, filename, mimeType) {
37
+ constructor(Options) {
38
+ var _a;
45
39
  super(null);
46
- this.mimeType = mimeType ? mimeType : (0, mime_1.getType)(filename);
47
- this.filename = filename;
48
- this.path = path;
49
- if (!fs.existsSync(path)) {
50
- throw new exceptions_1.ResourceNotFound(`File ${path} not exists`);
40
+ this.Options = Options;
41
+ this.Options.mimeType = (_a = Options.mimeType) !== null && _a !== void 0 ? _a : (0, mime_1.getType)(Options.filename);
42
+ }
43
+ async execute(_req, res) {
44
+ const provider = await di_1.DI.resolve('__file_provider__', [this.Options.provider]);
45
+ const exists = await provider.exists(this.Options.path);
46
+ if (!exists) {
47
+ throw new exceptions_1.ResourceNotFound(`File ${this.Options.path} not exists`);
51
48
  }
49
+ const file = (await provider.zip(this.Options.path)).asFilePath();
50
+ return new Promise((resolve, reject) => {
51
+ res.download(file, this.Options.filename, (err) => {
52
+ provider
53
+ .unlink(this.Options.path, true)
54
+ .then(() => {
55
+ return provider.unlink(file);
56
+ })
57
+ .then(() => {
58
+ if (!_.isNil(err)) {
59
+ reject(err);
60
+ }
61
+ else {
62
+ resolve();
63
+ }
64
+ })
65
+ .catch((err) => {
66
+ reject(err);
67
+ });
68
+ });
69
+ });
70
+ }
71
+ }
72
+ exports.ZipResponse = ZipResponse;
73
+ class FileResponse extends interfaces_1.Response {
74
+ /**
75
+ * Sends file to client at given path & filename. If file exists
76
+ * it will send file with 200 OK, if not exists 404 NOT FOUND
77
+ */
78
+ constructor(Options) {
79
+ var _a;
80
+ super(null);
81
+ this.Options = Options;
82
+ this.Options.mimeType = (_a = Options.mimeType) !== null && _a !== void 0 ? _a : (0, mime_1.getType)(Options.filename);
52
83
  }
53
84
  async execute(_req, res) {
85
+ const provider = await di_1.DI.resolve('__file_provider__', [this.Options.provider]);
86
+ const exists = await provider.exists(this.Options.path);
87
+ if (!exists) {
88
+ throw new exceptions_1.ResourceNotFound(`File ${this.Options.path} not exists`);
89
+ }
90
+ const file = await provider.download(this.Options.path);
54
91
  return new Promise((resolve, reject) => {
55
- res.download(this.path, this.filename, (err) => {
56
- if (!_.isNil(err)) {
92
+ res.download(file, this.Options.filename, (err) => {
93
+ provider
94
+ .unlink(this.Options.path, true)
95
+ .then(() => {
96
+ if (!_.isNil(err)) {
97
+ reject(err);
98
+ }
99
+ else {
100
+ resolve();
101
+ }
102
+ })
103
+ .catch((err) => {
57
104
  reject(err);
58
- }
59
- else {
60
- resolve();
61
- }
105
+ });
62
106
  });
63
107
  });
64
108
  }
65
109
  }
66
110
  exports.FileResponse = FileResponse;
67
- class JsonFileResponse extends responses_1.Response {
111
+ class JsonFileResponse extends interfaces_1.Response {
68
112
  constructor(data, filename) {
69
113
  super(null);
70
114
  this.data = data;
71
115
  this.filename = filename;
72
116
  }
73
117
  async execute(_req, res) {
74
- const tempPath = (0, tempfile_1.default)('.json');
75
- const file = await fs.promises.open(tempPath, 'w');
76
- await file.writeFile(JSON.stringify(this.data));
118
+ const provider = await di_1.DI.resolve('__file_provider__', ['fs-temp']);
119
+ const tmpPath = provider.tmppath();
120
+ provider.write(tmpPath, JSON.stringify(this.data));
77
121
  return new Promise((resolve, reject) => {
78
- res.download(tempPath, this.filename, (err) => {
79
- if (err) {
122
+ res.download(tmpPath, this.filename, (err) => {
123
+ provider
124
+ .unlink(tmpPath)
125
+ .then(() => {
126
+ if (err) {
127
+ reject(err);
128
+ }
129
+ else {
130
+ resolve();
131
+ }
132
+ })
133
+ .catch((err) => {
80
134
  reject(err);
81
- }
82
- else {
83
- resolve();
84
- }
85
- fs.unlink(tempPath, null);
135
+ });
86
136
  });
87
137
  });
88
138
  }
@@ -1 +1 @@
1
- {"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/response-methods/file.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAuD;AAEvD,uCAAyB;AACzB,0CAA4B;AAC5B,+BAA+B;AAC/B,4CAAwC;AACxC,wDAAgC;AAEhC,MAAa,YAAa,SAAQ,oBAAQ;IAKxC;;;;;;OAMG;IACH,YAAY,IAAY,EAAE,QAAgB,EAAE,QAAiB;QAC3D,KAAK,CAAC,IAAI,CAAC,CAAC;QAEZ,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAA,cAAO,EAAC,QAAQ,CAAC,CAAC;QACxD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YACxB,MAAM,IAAI,6BAAgB,CAAC,QAAQ,IAAI,aAAa,CAAC,CAAC;SACvD;IACH,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,GAAqB;QAC/D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAU,EAAE,EAAE;gBACpD,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBACjB,MAAM,CAAC,GAAG,CAAC,CAAC;iBACb;qBAAM;oBACL,OAAO,EAAE,CAAC;iBACX;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAnCD,oCAmCC;AAED,MAAa,gBAAiB,SAAQ,oBAAQ;IAC5C,YAAsB,IAAS,EAAY,QAAgB;QACzD,KAAK,CAAC,IAAI,CAAC,CAAC;QADQ,SAAI,GAAJ,IAAI,CAAK;QAAY,aAAQ,GAAR,QAAQ,CAAQ;IAE3D,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,GAAqB;QAC/D,MAAM,QAAQ,GAAG,IAAA,kBAAQ,EAAC,OAAO,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QAEnD,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEhD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAU,EAAE,EAAE;gBACnD,IAAI,GAAG,EAAE;oBACP,MAAM,CAAC,GAAG,CAAC,CAAC;iBACb;qBAAM;oBACL,OAAO,EAAE,CAAC;iBACX;gBAED,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAvBD,4CAuBC"}
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/response-methods/file.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as express from 'express';
2
- import { Response } from '../responses';
2
+ import { Response } from '../interfaces';
3
3
  /**
4
4
  * Internall response function.
5
5
  * Returns HTTP 403 FORBIDDEN ERROR
@@ -8,7 +8,7 @@ const responses_1 = require("../responses");
8
8
  * Returns HTTP 403 FORBIDDEN ERROR
9
9
  * @param err - error to send
10
10
  */
11
- class Forbidden extends responses_1.Response {
11
+ class Forbidden extends interfaces_1.Response {
12
12
  constructor(data) {
13
13
  super(data);
14
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"forbidden.js","sourceRoot":"","sources":["../../src/response-methods/forbidden.ts"],"names":[],"mappings":";;;AACA,8CAAiD;AACjD,4CAAsD;AAEtD;;;;GAIG;AAEH,MAAa,SAAU,SAAQ,oBAAQ;IACrC,YAAY,IAAS;QACnB,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,IAAsB;QAChE,OAAO,MAAM,IAAA,wBAAY,EAAC,IAAI,CAAC,YAAY,EAAE,6BAAgB,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IAClG,CAAC;CACF;AARD,8BAQC"}
1
+ {"version":3,"file":"forbidden.js","sourceRoot":"","sources":["../../src/response-methods/forbidden.ts"],"names":[],"mappings":";;;AACA,8CAA2D;AAC3D,4CAA4C;AAE5C;;;;GAIG;AAEH,MAAa,SAAU,SAAQ,qBAAQ;IACrC,YAAY,IAAS;QACnB,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,IAAsB;QAChE,OAAO,MAAM,IAAA,wBAAY,EAAC,IAAI,CAAC,YAAY,EAAE,6BAAgB,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IAClG,CAAC;CACF;AARD,8BAQC"}
@@ -1,5 +1,5 @@
1
1
  import * as express from 'express';
2
- import { Response } from '../responses';
2
+ import { Response } from '../interfaces';
3
3
  /**
4
4
  * Internall response function.
5
5
  * Returns HTTP 204 NO CONTENT
@@ -8,7 +8,7 @@ const responses_1 = require("../responses");
8
8
  * Returns HTTP 204 NO CONTENT
9
9
  * @param err - error to send
10
10
  */
11
- class NoContent extends responses_1.Response {
11
+ class NoContent extends interfaces_1.Response {
12
12
  constructor(data) {
13
13
  super(data);
14
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"noContent.js","sourceRoot":"","sources":["../../src/response-methods/noContent.ts"],"names":[],"mappings":";;;AACA,8CAAiD;AACjD,4CAAsD;AAEtD;;;;GAIG;AACH,MAAa,SAAU,SAAQ,oBAAQ;IACrC,YAAY,IAAS;QACnB,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,IAAsB;QAChE,OAAO,MAAM,IAAA,wBAAY,EAAC,IAAI,CAAC,YAAY,EAAE,6BAAgB,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAAC;IACnG,CAAC;CACF;AARD,8BAQC"}
1
+ {"version":3,"file":"noContent.js","sourceRoot":"","sources":["../../src/response-methods/noContent.ts"],"names":[],"mappings":";;;AACA,8CAA2D;AAC3D,4CAA4C;AAE5C;;;;GAIG;AACH,MAAa,SAAU,SAAQ,qBAAQ;IACrC,YAAY,IAAS;QACnB,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,IAAsB;QAChE,OAAO,MAAM,IAAA,wBAAY,EAAC,IAAI,CAAC,YAAY,EAAE,6BAAgB,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAAC;IACnG,CAAC;CACF;AARD,8BAQC"}
@@ -1,5 +1,5 @@
1
1
  import * as express from 'express';
2
- import { Response } from '../responses';
2
+ import { Response } from '../interfaces';
3
3
  /**
4
4
  * Internall response function.
5
5
  * Returns HTTP 403 FORBIDDEN ERROR
@@ -8,7 +8,7 @@ const responses_1 = require("../responses");
8
8
  * Returns HTTP 403 FORBIDDEN ERROR
9
9
  * @param err - error to send
10
10
  */
11
- class NotAllowed extends responses_1.Response {
11
+ class NotAllowed extends interfaces_1.Response {
12
12
  constructor(data) {
13
13
  super(data);
14
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"notAllowed.js","sourceRoot":"","sources":["../../src/response-methods/notAllowed.ts"],"names":[],"mappings":";;;AACA,8CAAiD;AACjD,4CAAsD;AAEtD;;;;GAIG;AAEH,MAAa,UAAW,SAAQ,oBAAQ;IACtC,YAAY,IAAS;QACnB,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,IAAsB;QAChE,OAAO,MAAM,IAAA,wBAAY,EAAC,IAAI,CAAC,YAAY,EAAE,6BAAgB,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC;IACtG,CAAC;CACF;AARD,gCAQC"}
1
+ {"version":3,"file":"notAllowed.js","sourceRoot":"","sources":["../../src/response-methods/notAllowed.ts"],"names":[],"mappings":";;;AACA,8CAA2D;AAC3D,4CAA4C;AAE5C;;;;GAIG;AAEH,MAAa,UAAW,SAAQ,qBAAQ;IACtC,YAAY,IAAS;QACnB,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,IAAsB;QAChE,OAAO,MAAM,IAAA,wBAAY,EAAC,IAAI,CAAC,YAAY,EAAE,6BAAgB,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC;IACtG,CAAC;CACF;AARD,gCAQC"}
@@ -1,5 +1,5 @@
1
1
  import * as express from 'express';
2
- import { Response } from '../responses';
2
+ import { Response } from '../interfaces';
3
3
  /**
4
4
  * Internall response function.
5
5
  * Returns HTTP 404 NOT FOUND ERROR
@@ -8,7 +8,7 @@ const responses_1 = require("../responses");
8
8
  * Returns HTTP 404 NOT FOUND ERROR
9
9
  * @param err - error to send
10
10
  */
11
- class NotFound extends responses_1.Response {
11
+ class NotFound extends interfaces_1.Response {
12
12
  constructor(data) {
13
13
  super(data);
14
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"notFound.js","sourceRoot":"","sources":["../../src/response-methods/notFound.ts"],"names":[],"mappings":";;;AACA,8CAAiD;AACjD,4CAAsD;AAEtD;;;;GAIG;AACH,MAAa,QAAS,SAAQ,oBAAQ;IACpC,YAAY,IAAU;QACpB,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,IAAsB;QAChE,OAAO,MAAM,IAAA,wBAAY,EAAC,IAAI,CAAC,YAAY,EAAE,6BAAgB,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;IACjG,CAAC;CACF;AARD,4BAQC"}
1
+ {"version":3,"file":"notFound.js","sourceRoot":"","sources":["../../src/response-methods/notFound.ts"],"names":[],"mappings":";;;AACA,8CAA2D;AAC3D,4CAA4C;AAE5C;;;;GAIG;AACH,MAAa,QAAS,SAAQ,qBAAQ;IACpC,YAAY,IAAU;QACpB,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,IAAsB;QAChE,OAAO,MAAM,IAAA,wBAAY,EAAC,IAAI,CAAC,YAAY,EAAE,6BAAgB,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;IACjG,CAAC;CACF;AARD,4BAQC"}
@@ -1,5 +1,5 @@
1
1
  import * as express from 'express';
2
- import { Response } from '../responses';
2
+ import { Response } from '../interfaces';
3
3
  /**
4
4
  * Internall response function.
5
5
  * Returns HTTP 200 OK response with json content
@@ -8,7 +8,7 @@ const responses_1 = require("../responses");
8
8
  * Returns HTTP 200 OK response with json content
9
9
  * @param data - data to send
10
10
  */
11
- class Ok extends responses_1.Response {
11
+ class Ok extends interfaces_1.Response {
12
12
  constructor(data) {
13
13
  super(data);
14
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ok.js","sourceRoot":"","sources":["../../src/response-methods/ok.ts"],"names":[],"mappings":";;;AACA,8CAAiD;AACjD,4CAAsD;AAEtD;;;;GAIG;AACH,MAAa,EAAG,SAAQ,oBAAQ;IAC9B,YAAY,IAAU;QACpB,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,IAAsB;QAChE,OAAO,MAAM,IAAA,wBAAY,EAAC,IAAI,CAAC,YAAY,EAAE,6BAAgB,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;IACpF,CAAC;CACF;AARD,gBAQC"}
1
+ {"version":3,"file":"ok.js","sourceRoot":"","sources":["../../src/response-methods/ok.ts"],"names":[],"mappings":";;;AACA,8CAA2D;AAC3D,4CAA4C;AAE5C;;;;GAIG;AACH,MAAa,EAAG,SAAQ,qBAAQ;IAC9B,YAAY,IAAU;QACpB,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,IAAsB;QAChE,OAAO,MAAM,IAAA,wBAAY,EAAC,IAAI,CAAC,YAAY,EAAE,6BAAgB,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;IACpF,CAAC;CACF;AARD,gBAQC"}
@@ -1,6 +1,5 @@
1
1
  import * as express from 'express';
2
- import { HTTP_STATUS_CODE } from '../interfaces';
3
- import { Response } from '../responses';
2
+ import { HTTP_STATUS_CODE, Response } from '../interfaces';
4
3
  /**
5
4
  * HTML resposne with HTML from pug file
6
5
  */
@@ -6,7 +6,7 @@ const responses_1 = require("../responses");
6
6
  /**
7
7
  * HTML resposne with HTML from pug file
8
8
  */
9
- class TemplateResponse extends responses_1.Response {
9
+ class TemplateResponse extends interfaces_1.Response {
10
10
  constructor(file, model, status) {
11
11
  super(model);
12
12
  this.status = null;
@@ -1 +1 @@
1
- {"version":3,"file":"pug.js","sourceRoot":"","sources":["../../src/response-methods/pug.ts"],"names":[],"mappings":";;;AACA,8CAAiD;AACjD,4CAAsD;AAEtD;;GAEG;AACH,MAAa,gBAAiB,SAAQ,oBAAQ;IAI5C,YAAY,IAAY,EAAE,KAAU,EAAE,MAAyB;QAC7D,KAAK,CAAC,KAAK,CAAC,CAAC;QAHL,WAAM,GAAqB,IAAI,CAAC;QAKxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,IAAsB;QAChE,OAAO,MAAM,IAAA,wBAAY,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,6BAAgB,CAAC,EAAE,CAAC,CAAC;IAC3G,CAAC;CACF;AAdD,4CAcC"}
1
+ {"version":3,"file":"pug.js","sourceRoot":"","sources":["../../src/response-methods/pug.ts"],"names":[],"mappings":";;;AACA,8CAA2D;AAC3D,4CAA4C;AAE5C;;GAEG;AACH,MAAa,gBAAiB,SAAQ,qBAAQ;IAI5C,YAAY,IAAY,EAAE,KAAU,EAAE,MAAyB;QAC7D,KAAK,CAAC,KAAK,CAAC,CAAC;QAHL,WAAM,GAAqB,IAAI,CAAC;QAKxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,IAAsB;QAChE,OAAO,MAAM,IAAA,wBAAY,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,6BAAgB,CAAC,EAAE,CAAC,CAAC;IAC3G,CAAC;CACF;AAdD,4CAcC"}
@@ -1,5 +1,5 @@
1
1
  import * as express from 'express';
2
- import { Response } from '../responses';
2
+ import { Response } from '../interfaces';
3
3
  /**
4
4
  * Redirects to another route ( simple alias for request.redirect for api consistency)
5
5
  *
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Redirect = void 0;
4
- const responses_1 = require("../responses");
4
+ const interfaces_1 = require("../interfaces");
5
5
  /**
6
6
  * Redirects to another route ( simple alias for request.redirect for api consistency)
7
7
  *
8
8
  * @param url - url path to another location
9
9
  */
10
- class Redirect extends responses_1.Response {
10
+ class Redirect extends interfaces_1.Response {
11
11
  constructor(url) {
12
12
  super(null);
13
13
  this.url = url;
@@ -1 +1 @@
1
- {"version":3,"file":"redirect.js","sourceRoot":"","sources":["../../src/response-methods/redirect.ts"],"names":[],"mappings":";;;AACA,4CAAwC;AAExC;;;;GAIG;AACH,MAAa,QAAS,SAAQ,oBAAQ;IAGpC,YAAY,GAAQ;QAClB,KAAK,CAAC,IAAI,CAAC,CAAC;QAEZ,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,GAAqB;QAC/D,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;CACF;AAZD,4BAYC"}
1
+ {"version":3,"file":"redirect.js","sourceRoot":"","sources":["../../src/response-methods/redirect.ts"],"names":[],"mappings":";;;AACA,8CAAyC;AAEzC;;;;GAIG;AACH,MAAa,QAAS,SAAQ,qBAAQ;IAGpC,YAAY,GAAQ;QAClB,KAAK,CAAC,IAAI,CAAC,CAAC;QAEZ,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,GAAqB;QAC/D,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;CACF;AAZD,4BAYC"}
@@ -1,5 +1,5 @@
1
1
  import * as express from 'express';
2
- import { Response } from '../responses';
2
+ import { Response } from '../interfaces';
3
3
  /**
4
4
  * Internall response function.
5
5
  * Returns HTTP 500 INTERNAL SERVER ERROR
@@ -8,7 +8,7 @@ const responses_1 = require("../responses");
8
8
  * Returns HTTP 500 INTERNAL SERVER ERROR
9
9
  * @param err - error to send
10
10
  */
11
- class ServerError extends responses_1.Response {
11
+ class ServerError extends interfaces_1.Response {
12
12
  constructor(data) {
13
13
  super(data);
14
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"serverError.js","sourceRoot":"","sources":["../../src/response-methods/serverError.ts"],"names":[],"mappings":";;;AACA,8CAAiD;AACjD,4CAAsD;AAEtD;;;;GAIG;AAEH,MAAa,WAAY,SAAQ,oBAAQ;IACvC,YAAY,IAAS;QACnB,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,IAAsB;QAChE,OAAO,MAAM,IAAA,wBAAY,EAAC,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,6BAAgB,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAC;IACpH,CAAC;CACF;AARD,kCAQC"}
1
+ {"version":3,"file":"serverError.js","sourceRoot":"","sources":["../../src/response-methods/serverError.ts"],"names":[],"mappings":";;;AACA,8CAA2D;AAC3D,4CAA4C;AAE5C;;;;GAIG;AAEH,MAAa,WAAY,SAAQ,qBAAQ;IACvC,YAAY,IAAS;QACnB,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,IAAsB;QAChE,OAAO,MAAM,IAAA,wBAAY,EAAC,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,6BAAgB,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAC;IACpH,CAAC;CACF;AARD,kCAQC"}
@@ -1,5 +1,5 @@
1
1
  import * as express from 'express';
2
- import { Response } from '../responses';
2
+ import { Response } from '../interfaces';
3
3
  /**
4
4
  * Internall response function.
5
5
  * Returns HTTP 401 UNAHTORIZED response with json content
@@ -8,7 +8,7 @@ const responses_1 = require("../responses");
8
8
  * Returns HTTP 401 UNAHTORIZED response with json content
9
9
  * @param data - data to send
10
10
  */
11
- class Unauthorized extends responses_1.Response {
11
+ class Unauthorized extends interfaces_1.Response {
12
12
  constructor(data) {
13
13
  super(data);
14
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"unauthorized.js","sourceRoot":"","sources":["../../src/response-methods/unauthorized.ts"],"names":[],"mappings":";;;AACA,8CAAiD;AACjD,4CAAsD;AAEtD;;;;GAIG;AAEH,MAAa,YAAa,SAAQ,oBAAQ;IACxC,YAAY,IAAS;QACnB,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,IAAsB;QAChE,OAAO,MAAM,IAAA,wBAAY,EAAC,IAAI,CAAC,YAAY,EAAE,6BAAgB,CAAC,YAAY,EAAE,wBAAwB,CAAC,CAAC;IACxG,CAAC;CACF;AARD,oCAQC"}
1
+ {"version":3,"file":"unauthorized.js","sourceRoot":"","sources":["../../src/response-methods/unauthorized.ts"],"names":[],"mappings":";;;AACA,8CAA2D;AAC3D,4CAA4C;AAE5C;;;;GAIG;AAEH,MAAa,YAAa,SAAQ,qBAAQ;IACxC,YAAY,IAAS;QACnB,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAqB,EAAE,IAAsB;QAChE,OAAO,MAAM,IAAA,wBAAY,EAAC,IAAI,CAAC,YAAY,EAAE,6BAAgB,CAAC,YAAY,EAAE,wBAAwB,CAAC,CAAC;IACxG,CAAC;CACF;AARD,oCAQC"}
@@ -1,11 +1,5 @@
1
1
  import * as express from 'express';
2
2
  import { HTTP_STATUS_CODE } from './interfaces';
3
- export declare type ResponseFunction = (req: express.Request, res: express.Response) => void;
4
- export declare abstract class Response {
5
- protected responseData: any;
6
- constructor(responseData: any);
7
- abstract execute(req: express.Request, res: express.Response, next?: express.NextFunction): Promise<ResponseFunction | void>;
8
- }
9
3
  /**
10
4
  * Sends data & sets proper header as json
11
5
  *
package/lib/responses.js CHANGED
@@ -23,19 +23,13 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.httpResponse = exports.htmlResponse = exports.textResponse = exports.jsonResponse = exports.Response = void 0;
26
+ exports.httpResponse = exports.htmlResponse = exports.textResponse = exports.jsonResponse = void 0;
27
27
  const interfaces_1 = require("./interfaces");
28
28
  const configuration_1 = require("@spinajs/configuration");
29
29
  const di_1 = require("@spinajs/di");
30
30
  const log_1 = require("@spinajs/log");
31
31
  const randomstring = __importStar(require("randomstring"));
32
32
  const templates_1 = require("@spinajs/templates");
33
- class Response {
34
- constructor(responseData) {
35
- this.responseData = responseData;
36
- }
37
- }
38
- exports.Response = Response;
39
33
  /**
40
34
  * Sends data & sets proper header as json
41
35
  *
@@ -1 +1 @@
1
- {"version":3,"file":"responses.js","sourceRoot":"","sources":["../src/responses.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"responses.js","sourceRoot":"","sources":["../src/responses.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import { IRouteArgs } from './RouteArgs';
2
2
  import { IRouteParameter, ParameterType, IRouteCall, Request } from '../interfaces';
3
- import { AsyncModule, IContainer } from '@spinajs/di';
4
- export declare class FromDi extends AsyncModule implements IRouteArgs {
3
+ import { AsyncService, IContainer } from '@spinajs/di';
4
+ export declare class FromDi extends AsyncService implements IRouteArgs {
5
5
  protected Container: IContainer;
6
6
  constructor(c: IContainer);
7
- resolveAsync(): Promise<void>;
7
+ resolve(): Promise<void>;
8
8
  get SupportedType(): ParameterType;
9
9
  extract(callData: IRouteCall, param: IRouteParameter, _req: Request): Promise<{
10
10
  CallData: IRouteCall;
@@ -12,12 +12,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.FromDi = void 0;
13
13
  const interfaces_1 = require("../interfaces");
14
14
  const di_1 = require("@spinajs/di");
15
- let FromDi = class FromDi extends di_1.AsyncModule {
15
+ let FromDi = class FromDi extends di_1.AsyncService {
16
16
  constructor(c) {
17
17
  super();
18
18
  this.Container = c;
19
19
  }
20
- async resolveAsync() { }
20
+ async resolve() { }
21
21
  get SupportedType() {
22
22
  return interfaces_1.ParameterType.FromDi;
23
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FromDi.js","sourceRoot":"","sources":["../../src/route-args/FromDi.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,8CAAoF;AACpF,oCAAqF;AAIrF,IAAa,MAAM,GAAnB,MAAa,MAAO,SAAQ,gBAAW;IAGrC,YAAY,CAAa;QACvB,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,YAAY,KAAmB,CAAC;IAEtC,IAAW,aAAa;QACtB,OAAO,0BAAa,CAAC,MAAM,CAAC;IAC9B,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,QAAoB,EAAE,KAAsB,EAAE,IAAa;QAC9E,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3E,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;IAC3C,CAAC;CACF,CAAA;AAnBY,MAAM;IAFlB,IAAA,eAAU,GAAE;IACZ,IAAA,WAAM,EAAC,cAAS,CAAC;;GACL,MAAM,CAmBlB;AAnBY,wBAAM"}
1
+ {"version":3,"file":"FromDi.js","sourceRoot":"","sources":["../../src/route-args/FromDi.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,8CAAoF;AACpF,oCAAsF;AAItF,IAAa,MAAM,GAAnB,MAAa,MAAO,SAAQ,iBAAY;IAGtC,YAAY,CAAa;QACvB,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,OAAO,KAAmB,CAAC;IAEjC,IAAW,aAAa;QACtB,OAAO,0BAAa,CAAC,MAAM,CAAC;IAC9B,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,QAAoB,EAAE,KAAsB,EAAE,IAAa;QAC9E,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3E,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;IAC3C,CAAC;CACF,CAAA;AAnBY,MAAM;IAFlB,IAAA,eAAU,GAAE;IACZ,IAAA,WAAM,EAAC,cAAS,CAAC;;GACL,MAAM,CAmBlB;AAnBY,wBAAM"}
@@ -3,6 +3,7 @@ import { IRouteParameter, ParameterType, IRouteCall, Request } from '../interfac
3
3
  import * as express from 'express';
4
4
  import { Fields, Files } from 'formidable';
5
5
  import { Configuration } from '@spinajs/configuration';
6
+ import { fs } from '@spinajs/fs';
6
7
  interface FormData {
7
8
  Fields: Fields;
8
9
  Files: Files;
@@ -10,7 +11,12 @@ interface FormData {
10
11
  export declare type FormOptionsCallback = (conf: Configuration) => Promise<FormOptions>;
11
12
  export interface FormOptions {
12
13
  encoding?: string;
13
- uploadDir?: string | FormOptionsCallback;
14
+ /**
15
+ * Wchitch service is handling incoming file storage
16
+ * fs file provider, defaults to default provider set in configuration
17
+ * can be local, remote, aws s3, ftp, etc
18
+ */
19
+ fileProvider?: string;
14
20
  keepExtensions?: boolean;
15
21
  maxFileSize?: number;
16
22
  maxFieldsSize?: number;
@@ -21,6 +27,7 @@ export interface FormOptions {
21
27
  }
22
28
  export declare abstract class FromFormBase extends RouteArgs {
23
29
  Data: FormData;
30
+ protected FileService: fs;
24
31
  protected parseForm(callData: IRouteCall, param: IRouteParameter, req: Request): Promise<void>;
25
32
  protected parse(req: express.Request, options: FormOptions): Promise<void>;
26
33
  private _parse;