tspace-spear 1.2.7 → 1.2.8

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 (84) hide show
  1. package/README.md +46 -75
  2. package/dist/cli/app.d.ts +1 -1
  3. package/dist/cli/app.js +7 -3
  4. package/dist/cli/app.js.map +1 -1
  5. package/dist/cli/client.d.ts +1 -0
  6. package/dist/cli/client.js +30 -0
  7. package/dist/cli/client.js.map +1 -0
  8. package/dist/cli/controller.d.ts +1 -1
  9. package/dist/cli/controller.js +12 -1
  10. package/dist/cli/controller.js.map +1 -1
  11. package/dist/cli/generators/app/index.d.ts +1 -0
  12. package/dist/cli/generators/app/index.js +124 -0
  13. package/dist/cli/generators/app/index.js.map +1 -0
  14. package/dist/cli/generators/app/template.d.ts +1 -0
  15. package/dist/cli/generators/app/template.js +42 -0
  16. package/dist/cli/generators/app/template.js.map +1 -0
  17. package/dist/cli/generators/client/template.d.ts +1 -0
  18. package/dist/cli/generators/client/template.js +30 -0
  19. package/dist/cli/generators/client/template.js.map +1 -0
  20. package/dist/cli/generators/controller/index.d.ts +1 -0
  21. package/dist/cli/generators/controller/index.js +78 -0
  22. package/dist/cli/generators/controller/index.js.map +1 -0
  23. package/dist/cli/generators/controller/template.d.ts +1 -0
  24. package/dist/cli/generators/controller/template.js +99 -0
  25. package/dist/cli/generators/controller/template.js.map +1 -0
  26. package/dist/cli/generators/dto/index.d.ts +1 -0
  27. package/dist/cli/generators/dto/index.js +55 -0
  28. package/dist/cli/generators/dto/index.js.map +1 -0
  29. package/dist/cli/generators/dto/template.d.ts +1 -0
  30. package/dist/cli/generators/dto/template.js +32 -0
  31. package/dist/cli/generators/dto/template.js.map +1 -0
  32. package/dist/cli/generators/middleware/index.d.ts +1 -0
  33. package/dist/cli/generators/middleware/index.js +38 -0
  34. package/dist/cli/generators/middleware/index.js.map +1 -0
  35. package/dist/cli/generators/middleware/template.d.ts +1 -0
  36. package/dist/cli/generators/middleware/template.js +16 -0
  37. package/dist/cli/generators/middleware/template.js.map +1 -0
  38. package/dist/cli/generators/module/index.d.ts +1 -0
  39. package/dist/cli/generators/module/index.js +173 -0
  40. package/dist/cli/generators/module/index.js.map +1 -0
  41. package/dist/cli/generators/service/index.d.ts +1 -0
  42. package/dist/cli/generators/service/index.js +53 -0
  43. package/dist/cli/generators/service/index.js.map +1 -0
  44. package/dist/cli/generators/service/template.d.ts +1 -0
  45. package/dist/cli/generators/service/template.js +74 -0
  46. package/dist/cli/generators/service/template.js.map +1 -0
  47. package/dist/cli/generators/shared/index.d.ts +3 -0
  48. package/dist/cli/generators/shared/index.js +22 -0
  49. package/dist/cli/generators/shared/index.js.map +1 -0
  50. package/dist/cli/index.js +52 -96
  51. package/dist/cli/index.js.map +1 -1
  52. package/dist/cli/middleware.d.ts +1 -0
  53. package/dist/cli/middleware.js +16 -0
  54. package/dist/cli/middleware.js.map +1 -0
  55. package/dist/client.d.ts +1 -0
  56. package/dist/client.js +17 -0
  57. package/dist/client.js.map +1 -0
  58. package/dist/common/middlewares/log.middleware.d.ts +2 -0
  59. package/dist/common/middlewares/log.middleware.js +12 -0
  60. package/dist/common/middlewares/log.middleware.js.map +1 -0
  61. package/dist/index.d.ts +4 -0
  62. package/dist/index.js +32 -0
  63. package/dist/index.js.map +1 -0
  64. package/dist/lib/core/compiler/generator.js +20 -2
  65. package/dist/lib/core/compiler/generator.js.map +1 -1
  66. package/dist/lib/core/decorators/context.d.ts +78 -8
  67. package/dist/lib/core/decorators/context.js +74 -7
  68. package/dist/lib/core/decorators/context.js.map +1 -1
  69. package/dist/lib/core/package/index.d.ts +11 -0
  70. package/dist/lib/core/package/index.js +42 -0
  71. package/dist/lib/core/package/index.js.map +1 -0
  72. package/dist/modules/cats/cat.controller.d.ts +58 -0
  73. package/dist/modules/cats/cat.controller.js +90 -0
  74. package/dist/modules/cats/cat.controller.js.map +1 -0
  75. package/dist/modules/cats/cat.dto.d.ts +8 -0
  76. package/dist/modules/cats/cat.dto.js +44 -0
  77. package/dist/modules/cats/cat.dto.js.map +1 -0
  78. package/dist/modules/cats/cat.service.d.ts +23 -0
  79. package/dist/modules/cats/cat.service.js +56 -0
  80. package/dist/modules/cats/cat.service.js.map +1 -0
  81. package/dist/tests/e2e..test.d.ts +1 -0
  82. package/dist/tests/e2e..test.js +16 -0
  83. package/dist/tests/e2e..test.js.map +1 -0
  84. package/package.json +2 -2
@@ -1,8 +1,13 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.Validate = exports.Cookies = exports.Query = exports.Params = exports.Files = exports.Body = void 0;
4
7
  exports.createDtoDecorator = createDtoDecorator;
5
8
  exports.createContextDecorator = createContextDecorator;
9
+ exports.ValidateDto = ValidateDto;
10
+ const package_1 = __importDefault(require("../package"));
6
11
  function createDtoDecorator(validator, onError) {
7
12
  return (_target, _key, descriptor) => {
8
13
  const original = descriptor.value;
@@ -183,10 +188,9 @@ exports.Cookies = Cookies;
183
188
  *
184
189
  * @param keys - List of required field names.
185
190
  * @param options - Validation options.
186
- * @param options.target - Request source to validate.
187
- * Defaults to `"body"`.
191
+ * @property options.target - Request source to validate. defaults to `"body"`.
188
192
  *
189
- * @param options.required - Enables required-value validation.
193
+ * @property options.required - Enables required-value validation.
190
194
  *
191
195
  * - `true`
192
196
  * - Rejects `null`
@@ -195,11 +199,9 @@ exports.Cookies = Cookies;
195
199
  * - `object`
196
200
  * - Allows customizing required rules.
197
201
  *
198
- * @param options.required.allowNull - Allow `null` values.
199
- * Default: `false`
202
+ * @property options.required.allowNull - Allow `null` values. Default: `false`
200
203
  *
201
- * @param options.required.allowEmptyString - Allow empty string values.
202
- * Default: `false`
204
+ * @property options.required.allowEmptyString - Allow empty string values. Default: `false`
203
205
  * @returns {MethodDecorator}
204
206
  *
205
207
  * @throws {Object} Throws a validation error object when
@@ -262,4 +264,69 @@ const Validate = (keys, { target, required } = {}) => {
262
264
  });
263
265
  };
264
266
  exports.Validate = Validate;
267
+ function ValidateDto(schema, options) {
268
+ const status = options?.status ?? 422;
269
+ const message = options?.message ?? "Validation failed";
270
+ const adaptor = options?.adaptor ?? "class-validator";
271
+ const target = options?.target ?? "body";
272
+ return createDtoDecorator(async (ctx) => {
273
+ if (adaptor === "zod") {
274
+ const result = await schema.safeParseAsync(ctx[target]);
275
+ if (result.success) {
276
+ ctx[target] = result.data;
277
+ return;
278
+ }
279
+ const issues = result.error?.issues;
280
+ const errors = Object
281
+ .values(issues.reduce((acc, issue) => {
282
+ const key = issue.path.join(".");
283
+ if (!acc[key]) {
284
+ acc[key] = {
285
+ path: key,
286
+ constraints: {
287
+ [issue.code]: issue.message
288
+ },
289
+ message: issue.message
290
+ };
291
+ }
292
+ else {
293
+ acc[key].constraints[issue.code] = issue.message;
294
+ acc[key].message += `, ${issue.message}`;
295
+ }
296
+ return acc;
297
+ }, {}));
298
+ return ctx.res.status(status).json({
299
+ message: message,
300
+ issues: errors
301
+ });
302
+ }
303
+ if (adaptor === "class-validator") {
304
+ const dto = package_1.default
305
+ .classTransformer
306
+ .plainToInstance(schema, ctx[target]);
307
+ const errors = await package_1.default
308
+ .classValidator
309
+ .validate(dto);
310
+ if (!errors.length) {
311
+ ctx[target] = dto;
312
+ return;
313
+ }
314
+ const issues = errors.flatMap((error) => {
315
+ const constraints = error.constraints ?? {};
316
+ return {
317
+ path: error.property,
318
+ constraints,
319
+ message: Object.values(constraints).join(","),
320
+ };
321
+ });
322
+ return ctx.res
323
+ .status(status)
324
+ .json({
325
+ message: message,
326
+ issues: issues
327
+ });
328
+ }
329
+ throw new Error("Invalid validation adaptor specified");
330
+ });
331
+ }
265
332
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../../src/lib/core/decorators/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../../src/lib/core/decorators/context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ declare class Package {
2
+ static import(name: string): any;
3
+ static get classTransformer(): {
4
+ plainToInstance: <T>(cls: new (...args: any[]) => T, plain: object) => any;
5
+ };
6
+ static get classValidator(): {
7
+ validate: <T extends object>(dto: T) => Promise<any>;
8
+ };
9
+ }
10
+ export { Package };
11
+ export default Package;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Package = void 0;
4
+ class Package {
5
+ static import(name) {
6
+ try {
7
+ return require(name);
8
+ }
9
+ catch (err) {
10
+ throw new Error(`The package '${name}' caused by '${err.message}'. Please try installing the package using : npm install ${name} --save`);
11
+ }
12
+ }
13
+ static get classTransformer() {
14
+ try {
15
+ const { plainToInstance } = require('class-transformer');
16
+ return {
17
+ plainToInstance: (cls, plain) => {
18
+ return plainToInstance(cls, plain);
19
+ }
20
+ };
21
+ }
22
+ catch (err) {
23
+ throw new Error(`The package 'class-transformer' caused by '${err.message}'. Please try installing the package using : npm install class-transformer --save`);
24
+ }
25
+ }
26
+ static get classValidator() {
27
+ try {
28
+ const { validate } = require('class-validator');
29
+ return {
30
+ validate: async (dto) => {
31
+ return await validate(dto);
32
+ }
33
+ };
34
+ }
35
+ catch (err) {
36
+ throw new Error(`The package 'class-validator' caused by '${err.message}'. Please try installing the package using : npm install class-validator --save`);
37
+ }
38
+ }
39
+ }
40
+ exports.Package = Package;
41
+ exports.default = Package;
42
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/core/package/index.ts"],"names":[],"mappings":";;;AAAA,MAAM,OAAO;IACT,MAAM,CAAC,MAAM,CAAC,IAAa;QACvB,IAAI,CAAC;YACD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAA;QACxB,CAAC;QACD,OAAO,GAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,gBAAgB,IAAI,gBAAgB,GAAG,CAAC,OAAO,4DAA4D,IAAI,SAAS,CAAC,CAAA;QAC7I,CAAC;IACL,CAAC;IAED,MAAM,KAAK,gBAAgB;QACvB,IAAI,CAAC;YAED,MAAM,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;YAIzD,OAAO;gBACH,eAAe,EAAE,CAAI,GAAwB,EAAE,KAAa,EAAE,EAAE;oBAC5D,OAAO,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBACvC,CAAC;aACJ,CAAA;QAEL,CAAC;QAAC,OAAO,GAAO,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,8CAA8C,GAAG,CAAC,OAAO,mFAAmF,CAAC,CAAA;QACjK,CAAC;IACL,CAAC;IAED,MAAM,KAAK,cAAc;QACrB,IAAI,CAAC;YAED,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;YAEhD,OAAO;gBACH,QAAQ,EAAE,KAAK,EAAoB,GAAM,EAAE,EAAE;oBACzC,OAAO,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC/B,CAAC;aACJ,CAAA;QAEL,CAAC;QAAC,OAAO,GAAO,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,4CAA4C,GAAG,CAAC,OAAO,iFAAiF,CAAC,CAAA;QAC7J,CAAC;IACL,CAAC;CACJ;AAEQ,0BAAO;AAChB,kBAAe,OAAO,CAAA"}
@@ -0,0 +1,58 @@
1
+ import { type T } from "tspace-spear";
2
+ import { CatService } from "./cat.service.ts";
3
+ import { CreateCatDto, UpdateCatDto } from "./cat.dto.ts";
4
+ declare class CatController {
5
+ private catService;
6
+ constructor(catService?: CatService);
7
+ index(): Promise<{
8
+ id: number;
9
+ name: string;
10
+ age: number;
11
+ }[]>;
12
+ show({ params }: T.Context<{
13
+ params: {
14
+ id: number;
15
+ };
16
+ }>): Promise<{
17
+ id: number;
18
+ name: string;
19
+ age: number;
20
+ } | undefined>;
21
+ create({ body }: T.Context<{
22
+ body: CreateCatDto;
23
+ }>): Promise<{
24
+ message: string;
25
+ cat: {
26
+ id: number;
27
+ name: string;
28
+ age: number;
29
+ };
30
+ }>;
31
+ update({ params, body }: T.Context<{
32
+ params: {
33
+ id: number;
34
+ };
35
+ body: UpdateCatDto;
36
+ }>): Promise<{
37
+ message: string;
38
+ cat: {
39
+ id: number;
40
+ name: string;
41
+ age: number;
42
+ };
43
+ }>;
44
+ remove({ params }: T.Context<{
45
+ params: {
46
+ id: number;
47
+ };
48
+ }>): Promise<{
49
+ message: string;
50
+ cat: {
51
+ id: number;
52
+ name: string;
53
+ age: number;
54
+ };
55
+ }>;
56
+ }
57
+ export { CatController };
58
+ export default CatController;
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
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
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CatController = void 0;
13
+ const tspace_spear_1 = require("tspace-spear");
14
+ const cat_service_ts_1 = require("./cat.service.ts");
15
+ const cat_dto_ts_1 = require("./cat.dto.ts");
16
+ const log_middleware_1 = require("../../common/middlewares/log.middleware");
17
+ let CatController = class CatController {
18
+ catService;
19
+ constructor(catService = new cat_service_ts_1.CatService()) {
20
+ this.catService = catService;
21
+ }
22
+ async index() {
23
+ return this.catService.index();
24
+ }
25
+ async show({ params }) {
26
+ return this.catService.show(params.id);
27
+ }
28
+ async create({ body }) {
29
+ return this.catService
30
+ .create({
31
+ name: body.name,
32
+ age: body.age
33
+ });
34
+ }
35
+ async update({ params, body }) {
36
+ return this.catService
37
+ .update(params.id, {
38
+ name: body.name,
39
+ age: body.age
40
+ });
41
+ }
42
+ async remove({ params }) {
43
+ return this.catService
44
+ .remove(params.id);
45
+ }
46
+ };
47
+ exports.CatController = CatController;
48
+ __decorate([
49
+ (0, tspace_spear_1.Get)("/"),
50
+ (0, tspace_spear_1.Middleware)(log_middleware_1.LogMiddleware),
51
+ __metadata("design:type", Function),
52
+ __metadata("design:paramtypes", []),
53
+ __metadata("design:returntype", Promise)
54
+ ], CatController.prototype, "index", null);
55
+ __decorate([
56
+ (0, tspace_spear_1.Get)("/:id"),
57
+ (0, tspace_spear_1.Middleware)(log_middleware_1.LogMiddleware),
58
+ __metadata("design:type", Function),
59
+ __metadata("design:paramtypes", [Object]),
60
+ __metadata("design:returntype", Promise)
61
+ ], CatController.prototype, "show", null);
62
+ __decorate([
63
+ (0, tspace_spear_1.Post)("/"),
64
+ (0, tspace_spear_1.ValidateDto)(cat_dto_ts_1.CreateCatDto),
65
+ (0, tspace_spear_1.Middleware)(log_middleware_1.LogMiddleware),
66
+ __metadata("design:type", Function),
67
+ __metadata("design:paramtypes", [Object]),
68
+ __metadata("design:returntype", Promise)
69
+ ], CatController.prototype, "create", null);
70
+ __decorate([
71
+ (0, tspace_spear_1.Put)("/:id"),
72
+ (0, tspace_spear_1.ValidateDto)(cat_dto_ts_1.UpdateCatDto),
73
+ (0, tspace_spear_1.Middleware)(log_middleware_1.LogMiddleware),
74
+ __metadata("design:type", Function),
75
+ __metadata("design:paramtypes", [Object]),
76
+ __metadata("design:returntype", Promise)
77
+ ], CatController.prototype, "update", null);
78
+ __decorate([
79
+ (0, tspace_spear_1.Delete)("/:id"),
80
+ (0, tspace_spear_1.Middleware)(log_middleware_1.LogMiddleware),
81
+ __metadata("design:type", Function),
82
+ __metadata("design:paramtypes", [Object]),
83
+ __metadata("design:returntype", Promise)
84
+ ], CatController.prototype, "remove", null);
85
+ exports.CatController = CatController = __decorate([
86
+ (0, tspace_spear_1.Controller)("/cats"),
87
+ __metadata("design:paramtypes", [cat_service_ts_1.CatService])
88
+ ], CatController);
89
+ exports.default = CatController;
90
+ //# sourceMappingURL=cat.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cat.controller.js","sourceRoot":"","sources":["../../../src/modules/cats/cat.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,+CASsB;AACtB,qDAAiD;AACjD,6CAA4D;AAC5D,4EAAwE;AAExE,IACM,aAAa,GADnB,MACM,aAAa;IAGP;IADV,YACU,aAAyB,IAAI,2BAAU,EAAE;QAAzC,eAAU,GAAV,UAAU,CAA+B;IAChD,CAAC;IAIE,AAAN,KAAK,CAAC,KAAK;QACT,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAIK,AAAN,KAAK,CAAC,IAAI,CAAC,EACT,MAAM,EAKN;QAEA,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC;IAKK,AAAN,KAAK,CAAC,MAAM,CAAC,EACX,IAAI,EAGJ;QAEA,OAAO,IAAI,CAAC,UAAU;aACrB,MAAM,CAAC;YACN,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,GAAG,EAAE,IAAI,CAAC,GAAG;SACd,CAAC,CAAC;IACL,CAAC;IAKK,AAAN,KAAK,CAAC,MAAM,CAAC,EACX,MAAM,EACN,IAAI,EAMJ;QAEA,OAAO,IAAI,CAAC,UAAU;aACrB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,GAAG,EAAE,IAAI,CAAC,GAAG;SACd,CAAC,CAAC;IACL,CAAC;IAIK,AAAN,KAAK,CAAC,MAAM,CAAC,EACX,MAAM,EAKN;QAEA,OAAO,IAAI,CAAC,UAAU;aACrB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC;CACF,CAAA;AAEQ,sCAAa;AApEd;IAFL,IAAA,kBAAG,EAAC,GAAG,CAAC;IACR,IAAA,yBAAU,EAAC,8BAAa,CAAC;;;;0CAGzB;AAIK;IAFL,IAAA,kBAAG,EAAC,MAAM,CAAC;IACX,IAAA,yBAAU,EAAC,8BAAa,CAAC;;;;yCAUzB;AAKK;IAHL,IAAA,mBAAI,EAAC,GAAG,CAAC;IACT,IAAA,0BAAW,EAAC,yBAAY,CAAC;IACzB,IAAA,yBAAU,EAAC,8BAAa,CAAC;;;;2CAYzB;AAKK;IAHL,IAAA,kBAAG,EAAC,MAAM,CAAC;IACX,IAAA,0BAAW,EAAC,yBAAY,CAAC;IACzB,IAAA,yBAAU,EAAC,8BAAa,CAAC;;;;2CAgBzB;AAIK;IAFL,IAAA,qBAAM,EAAC,MAAM,CAAC;IACd,IAAA,yBAAU,EAAC,8BAAa,CAAC;;;;2CAWzB;wBAzEG,aAAa;IADlB,IAAA,yBAAU,EAAC,OAAO,CAAC;qCAII,2BAAU;GAH5B,aAAa,CA0ElB;AAGD,kBAAe,aAAa,CAAC"}
@@ -0,0 +1,8 @@
1
+ export declare class CreateCatDto {
2
+ name: string;
3
+ age: number;
4
+ }
5
+ export declare class UpdateCatDto {
6
+ name: string;
7
+ age: number;
8
+ }
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
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
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.UpdateCatDto = exports.CreateCatDto = void 0;
13
+ const class_validator_1 = require("class-validator");
14
+ class CreateCatDto {
15
+ name;
16
+ age;
17
+ }
18
+ exports.CreateCatDto = CreateCatDto;
19
+ __decorate([
20
+ (0, class_validator_1.IsString)(),
21
+ (0, class_validator_1.IsNotEmpty)(),
22
+ __metadata("design:type", String)
23
+ ], CreateCatDto.prototype, "name", void 0);
24
+ __decorate([
25
+ (0, class_validator_1.IsNumber)(),
26
+ (0, class_validator_1.Min)(0.1),
27
+ __metadata("design:type", Number)
28
+ ], CreateCatDto.prototype, "age", void 0);
29
+ class UpdateCatDto {
30
+ name;
31
+ age;
32
+ }
33
+ exports.UpdateCatDto = UpdateCatDto;
34
+ __decorate([
35
+ (0, class_validator_1.IsString)(),
36
+ (0, class_validator_1.IsNotEmpty)(),
37
+ __metadata("design:type", String)
38
+ ], UpdateCatDto.prototype, "name", void 0);
39
+ __decorate([
40
+ (0, class_validator_1.IsNumber)(),
41
+ (0, class_validator_1.Min)(0.1),
42
+ __metadata("design:type", Number)
43
+ ], UpdateCatDto.prototype, "age", void 0);
44
+ //# sourceMappingURL=cat.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cat.dto.js","sourceRoot":"","sources":["../../../src/modules/cats/cat.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,qDAKyB;AAEzB,MAAa,YAAY;IAGvB,IAAI,CAAU;IAId,GAAG,CAAU;CACd;AARD,oCAQC;AALC;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;0CACC;AAId;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,qBAAG,EAAC,GAAG,CAAC;;yCACI;AAGf,MAAa,YAAY;IAGvB,IAAI,CAAU;IAId,GAAG,CAAU;CACd;AARD,oCAQC;AALC;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;0CACC;AAId;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,qBAAG,EAAC,GAAG,CAAC;;yCACI"}
@@ -0,0 +1,23 @@
1
+ type Cat = {
2
+ id: number;
3
+ name: string;
4
+ age: number;
5
+ };
6
+ export declare class CatService {
7
+ private cats;
8
+ index(): Promise<Cat[]>;
9
+ show(id: number): Promise<Cat | undefined>;
10
+ create({ name, age }: Omit<Cat, "id">): Promise<{
11
+ message: string;
12
+ cat: Cat;
13
+ }>;
14
+ update(id: number, { name, age }: Omit<Cat, "id">): Promise<{
15
+ message: string;
16
+ cat: Cat;
17
+ }>;
18
+ remove(id: number): Promise<{
19
+ message: string;
20
+ cat: Cat;
21
+ }>;
22
+ }
23
+ export {};
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CatService = void 0;
4
+ class CatService {
5
+ cats = [
6
+ { id: 1, name: 'cat1', age: 1.6 },
7
+ { id: 2, name: 'cat2', age: 1.8 },
8
+ ];
9
+ async index() {
10
+ return this.cats;
11
+ }
12
+ ;
13
+ async show(id) {
14
+ return this.cats.find(cat => cat.id === id);
15
+ }
16
+ ;
17
+ async create({ name, age }) {
18
+ const cat = {
19
+ id: this.cats.length + 1,
20
+ name: name,
21
+ age: age
22
+ };
23
+ this.cats.push(cat);
24
+ return {
25
+ message: "Created",
26
+ cat
27
+ };
28
+ }
29
+ async update(id, { name, age }) {
30
+ const index = this.cats.findIndex(d => d.id === id);
31
+ if (index === -1) {
32
+ throw new Error("Cat not found");
33
+ }
34
+ this.cats[index] = {
35
+ ...this.cats[index],
36
+ ...{ name, age }
37
+ };
38
+ return {
39
+ message: "Updated",
40
+ cat: this.cats[index]
41
+ };
42
+ }
43
+ async remove(id) {
44
+ const index = this.cats.findIndex(d => d.id === id);
45
+ if (index === -1) {
46
+ throw new Error("Cat not found");
47
+ }
48
+ const [removedCat] = this.cats.splice(index, 1);
49
+ return {
50
+ message: "Deleted",
51
+ cat: removedCat
52
+ };
53
+ }
54
+ }
55
+ exports.CatService = CatService;
56
+ //# sourceMappingURL=cat.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cat.service.js","sourceRoot":"","sources":["../../../src/modules/cats/cat.service.ts"],"names":[],"mappings":";;;AAOA,MAAa,UAAU;IACX,IAAI,GAAU;QAClB,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE;QACjC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE;KACpC,CAAC;IACK,KAAK,CAAC,KAAK;QACd,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAAA,CAAC;IAEK,KAAK,CAAC,IAAI,CAAC,EAAU;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAChD,CAAC;IAAA,CAAC;IAEK,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,EAAmB;QAE9C,MAAM,GAAG,GAAQ;YACb,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;YACxB,IAAI,EAAE,IAAI;YACV,GAAG,EAAE,GAAG;SACX,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEpB,OAAO;YACH,OAAO,EAAE,SAAS;YAClB,GAAG;SACN,CAAC;IACN,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,EAAE,IAAI,EAAE,GAAG,EAAmB;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAEpD,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;QACrC,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG;YACf,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACnB,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE;SACnB,CAAC;QAEF,OAAO;YACH,OAAO,EAAE,SAAS;YAClB,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;SACxB,CAAC;IACN,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,EAAU;QAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAEpD,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;QACrC,CAAC;QAED,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAEhD,OAAO;YACH,OAAO,EAAE,SAAS;YAClB,GAAG,EAAE,UAAU;SAClB,CAAC;IACN,CAAC;CACJ;AA7DD,gCA6DC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const chai_1 = __importDefault(require("chai"));
7
+ const mocha_1 = require("mocha");
8
+ const chai_json_schema_1 = __importDefault(require("chai-json-schema"));
9
+ chai_1.default.use(chai_json_schema_1.default);
10
+ (0, mocha_1.describe)('Testing Driver', function () {
11
+ /* ##################################################### */
12
+ (0, mocha_1.it)(`Driver: Using driver in ['mysql','postgres' ,'mariadb','mssql','sqlite'] ?`, async function () {
13
+ });
14
+ /* ###################################################### */
15
+ });
16
+ //# sourceMappingURL=e2e..test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"e2e..test.js","sourceRoot":"","sources":["../../src/tests/e2e..test.ts"],"names":[],"mappings":";;;;;AAAA,gDAAoC;AACpC,iCAAoC;AACpC,wEAA6C;AAE7C,cAAI,CAAC,GAAG,CAAC,0BAAc,CAAC,CAAA;AAExB,IAAA,gBAAQ,EAAC,gBAAgB,EAAE;IACzB,2DAA2D;IAC3D,IAAA,UAAE,EAAC,4EAA4E,EAC/E,KAAK;IACL,CAAC,CAAC,CAAA;IACF,4DAA4D;AAC9D,CAAC,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tspace-spear",
3
- "version": "1.2.7",
3
+ "version": "1.2.8",
4
4
  "description": "tspace-spear is a lightweight, high-performance API framework for Node.js that leverages the native HTTP server and supports uWebSockets.js (C++) for maximum speed and efficiency.",
5
5
  "main": "./dist/lib/index.js",
6
6
  "types": "./dist/lib/index.d.ts",
@@ -8,7 +8,7 @@
8
8
  "dist"
9
9
  ],
10
10
  "bin": {
11
- "tspace-spear": "./dist/cli/index.js"
11
+ "spear": "./dist/cli/index.js"
12
12
  },
13
13
  "type": "commonjs",
14
14
  "repository": {