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.
- package/README.md +46 -75
- package/dist/cli/app.d.ts +1 -1
- package/dist/cli/app.js +7 -3
- package/dist/cli/app.js.map +1 -1
- package/dist/cli/client.d.ts +1 -0
- package/dist/cli/client.js +30 -0
- package/dist/cli/client.js.map +1 -0
- package/dist/cli/controller.d.ts +1 -1
- package/dist/cli/controller.js +12 -1
- package/dist/cli/controller.js.map +1 -1
- package/dist/cli/generators/app/index.d.ts +1 -0
- package/dist/cli/generators/app/index.js +124 -0
- package/dist/cli/generators/app/index.js.map +1 -0
- package/dist/cli/generators/app/template.d.ts +1 -0
- package/dist/cli/generators/app/template.js +42 -0
- package/dist/cli/generators/app/template.js.map +1 -0
- package/dist/cli/generators/client/template.d.ts +1 -0
- package/dist/cli/generators/client/template.js +30 -0
- package/dist/cli/generators/client/template.js.map +1 -0
- package/dist/cli/generators/controller/index.d.ts +1 -0
- package/dist/cli/generators/controller/index.js +78 -0
- package/dist/cli/generators/controller/index.js.map +1 -0
- package/dist/cli/generators/controller/template.d.ts +1 -0
- package/dist/cli/generators/controller/template.js +99 -0
- package/dist/cli/generators/controller/template.js.map +1 -0
- package/dist/cli/generators/dto/index.d.ts +1 -0
- package/dist/cli/generators/dto/index.js +55 -0
- package/dist/cli/generators/dto/index.js.map +1 -0
- package/dist/cli/generators/dto/template.d.ts +1 -0
- package/dist/cli/generators/dto/template.js +32 -0
- package/dist/cli/generators/dto/template.js.map +1 -0
- package/dist/cli/generators/middleware/index.d.ts +1 -0
- package/dist/cli/generators/middleware/index.js +38 -0
- package/dist/cli/generators/middleware/index.js.map +1 -0
- package/dist/cli/generators/middleware/template.d.ts +1 -0
- package/dist/cli/generators/middleware/template.js +16 -0
- package/dist/cli/generators/middleware/template.js.map +1 -0
- package/dist/cli/generators/module/index.d.ts +1 -0
- package/dist/cli/generators/module/index.js +173 -0
- package/dist/cli/generators/module/index.js.map +1 -0
- package/dist/cli/generators/service/index.d.ts +1 -0
- package/dist/cli/generators/service/index.js +53 -0
- package/dist/cli/generators/service/index.js.map +1 -0
- package/dist/cli/generators/service/template.d.ts +1 -0
- package/dist/cli/generators/service/template.js +74 -0
- package/dist/cli/generators/service/template.js.map +1 -0
- package/dist/cli/generators/shared/index.d.ts +3 -0
- package/dist/cli/generators/shared/index.js +22 -0
- package/dist/cli/generators/shared/index.js.map +1 -0
- package/dist/cli/index.js +52 -96
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/middleware.d.ts +1 -0
- package/dist/cli/middleware.js +16 -0
- package/dist/cli/middleware.js.map +1 -0
- package/dist/client.d.ts +1 -0
- package/dist/client.js +17 -0
- package/dist/client.js.map +1 -0
- package/dist/common/middlewares/log.middleware.d.ts +2 -0
- package/dist/common/middlewares/log.middleware.js +12 -0
- package/dist/common/middlewares/log.middleware.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +32 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/core/compiler/generator.js +20 -2
- package/dist/lib/core/compiler/generator.js.map +1 -1
- package/dist/lib/core/decorators/context.d.ts +78 -8
- package/dist/lib/core/decorators/context.js +74 -7
- package/dist/lib/core/decorators/context.js.map +1 -1
- package/dist/lib/core/package/index.d.ts +11 -0
- package/dist/lib/core/package/index.js +42 -0
- package/dist/lib/core/package/index.js.map +1 -0
- package/dist/modules/cats/cat.controller.d.ts +58 -0
- package/dist/modules/cats/cat.controller.js +90 -0
- package/dist/modules/cats/cat.controller.js.map +1 -0
- package/dist/modules/cats/cat.dto.d.ts +8 -0
- package/dist/modules/cats/cat.dto.js +44 -0
- package/dist/modules/cats/cat.dto.js.map +1 -0
- package/dist/modules/cats/cat.service.d.ts +23 -0
- package/dist/modules/cats/cat.service.js +56 -0
- package/dist/modules/cats/cat.service.js.map +1 -0
- package/dist/tests/e2e..test.d.ts +1 -0
- package/dist/tests/e2e..test.js +16 -0
- package/dist/tests/e2e..test.js.map +1 -0
- 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
|
-
* @
|
|
187
|
-
* Defaults to `"body"`.
|
|
191
|
+
* @property options.target - Request source to validate. defaults to `"body"`.
|
|
188
192
|
*
|
|
189
|
-
* @
|
|
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
|
-
* @
|
|
199
|
-
* Default: `false`
|
|
202
|
+
* @property options.required.allowNull - Allow `null` values. Default: `false`
|
|
200
203
|
*
|
|
201
|
-
* @
|
|
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":"
|
|
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,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.
|
|
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
|
-
"
|
|
11
|
+
"spear": "./dist/cli/index.js"
|
|
12
12
|
},
|
|
13
13
|
"type": "commonjs",
|
|
14
14
|
"repository": {
|