nestia 4.0.0 → 4.0.2
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 +11 -7
- package/bin/NestiaSetupWizard.d.ts +0 -1
- package/bin/NestiaSetupWizard.js +8 -7
- package/bin/NestiaSetupWizard.js.map +1 -1
- package/bin/index.js +2 -1
- package/bin/index.js.map +1 -1
- package/package.json +44 -44
package/README.md
CHANGED
|
@@ -33,7 +33,7 @@ When you want to use `nestia` in orindary project, just type above command.
|
|
|
33
33
|
|
|
34
34
|
All installation and configuration processes would be automatically done.
|
|
35
35
|
|
|
36
|
-
Also, you can specify package manager by `--
|
|
36
|
+
Also, you can specify package manager by `--manager` argument like below:
|
|
37
37
|
|
|
38
38
|
```bash
|
|
39
39
|
npx nestia setup --manager npm
|
|
@@ -63,17 +63,19 @@ If you want to install and configure `nestia` manually, read [Guide Documents -
|
|
|
63
63
|
|
|
64
64
|
Super-fast validation decorators for NestJS.
|
|
65
65
|
|
|
66
|
-
|
|
66
|
+
- 15,000x faster request body validation
|
|
67
|
+
- 10x faster JSON response, even type safe
|
|
68
|
+
- Do not need DTO class definition, just fine with interface
|
|
67
69
|
|
|
68
|
-
|
|
70
|
+
`@nestia/core` is a transformer library of NestJS, supporting super-fast validation decorators, by wrapping [typia](https://github.com/samchon/typia). Comparing validation speed with `class-validator`, [typia](https://github.com/samchon/typia) is maximum **15,000x times faster** and it is even much safer.
|
|
69
71
|
|
|
70
|
-
|
|
72
|
+
Furthermore, `@nestia/core` can use pure interface typed DTO with **only one line**. With `@nestia/core`, you don't need any extra dedication like defining JSON schema (`@nestjs/swagger`), or using class definition with decorator function calls (`class-validator`). Just enjoy the superfast decorators with pure TypeScript type.
|
|
71
73
|
|
|
72
74
|
```typescript
|
|
73
75
|
import { Controller } from "@nestjs/common";
|
|
74
76
|
import { TypedBody, TypedRoute } from "@nestia/core";
|
|
75
77
|
|
|
76
|
-
import { IBbsArticle } from "@bbs-api/structures/IBbsArticle";
|
|
78
|
+
import type { IBbsArticle } from "@bbs-api/structures/IBbsArticle";
|
|
77
79
|
|
|
78
80
|
@Controller("bbs/articles")
|
|
79
81
|
export class BbsArticlesController {
|
|
@@ -85,8 +87,10 @@ export class BbsArticlesController {
|
|
|
85
87
|
*/
|
|
86
88
|
@TypedRoute.Post() // 10x faster and safer JSON.stringify()
|
|
87
89
|
public async store(
|
|
88
|
-
@TypedBody() input: IBbsArticle.IStore //
|
|
89
|
-
): Promise<IBbsArticle>;
|
|
90
|
+
@TypedBody() input: IBbsArticle.IStore // super-fast validator
|
|
91
|
+
): Promise<IBbsArticle>;
|
|
92
|
+
// do not need DTO class definition,
|
|
93
|
+
// just fine with interface
|
|
90
94
|
}
|
|
91
95
|
```
|
|
92
96
|
|
package/bin/NestiaSetupWizard.js
CHANGED
|
@@ -42,30 +42,31 @@ var NestiaSetupWizard;
|
|
|
42
42
|
(function (NestiaSetupWizard) {
|
|
43
43
|
function ttypescript(manager) {
|
|
44
44
|
return __awaiter(this, void 0, void 0, function* () {
|
|
45
|
-
yield prepare(manager);
|
|
46
|
-
|
|
47
|
-
CoreSetupWizard.ttypescript(manager);
|
|
45
|
+
const wizard = yield prepare(manager);
|
|
46
|
+
yield wizard.ttypescript(manager);
|
|
48
47
|
});
|
|
49
48
|
}
|
|
50
49
|
NestiaSetupWizard.ttypescript = ttypescript;
|
|
51
50
|
function tsPatch(manager) {
|
|
52
51
|
return __awaiter(this, void 0, void 0, function* () {
|
|
53
|
-
yield prepare(manager);
|
|
54
|
-
|
|
55
|
-
CoreSetupWizard.tsPatch(manager);
|
|
52
|
+
const wizard = yield prepare(manager);
|
|
53
|
+
yield wizard.tsPatch(manager);
|
|
56
54
|
});
|
|
57
55
|
}
|
|
58
56
|
NestiaSetupWizard.tsPatch = tsPatch;
|
|
59
57
|
function prepare(manager) {
|
|
60
58
|
return __awaiter(this, void 0, void 0, function* () {
|
|
59
|
+
var _a;
|
|
61
60
|
if (fs_1.default.existsSync("package.json") === false)
|
|
62
61
|
halt(() => { })("make package.json file or move to it.");
|
|
63
62
|
const pack = JSON.parse(yield fs_1.default.promises.readFile("package.json", "utf8"));
|
|
64
63
|
add(manager)(pack)("@nestia/core", false);
|
|
65
64
|
add(manager)(pack)("@nestia/sdk", false);
|
|
65
|
+
const modulo = yield (_a = process.cwd() +
|
|
66
|
+
"/node_modules/@nestia/core/lib/executable/internal/CoreSetupWizard", Promise.resolve().then(() => __importStar(require(_a))));
|
|
67
|
+
return modulo.CoreSetupWizard;
|
|
66
68
|
});
|
|
67
69
|
}
|
|
68
|
-
NestiaSetupWizard.prepare = prepare;
|
|
69
70
|
})(NestiaSetupWizard = exports.NestiaSetupWizard || (exports.NestiaSetupWizard = {}));
|
|
70
71
|
const add = (manager) => (pack) => (modulo, devOnly) => {
|
|
71
72
|
const exists = (devOnly === false
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NestiaSetupWizard.js","sourceRoot":"","sources":["../src/NestiaSetupWizard.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kEAA+B;AAC/B,4CAAoB;AAEpB,IAAiB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"NestiaSetupWizard.js","sourceRoot":"","sources":["../src/NestiaSetupWizard.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kEAA+B;AAC/B,4CAAoB;AAEpB,IAAiB,iBAAiB,CA4BjC;AA5BD,WAAiB,iBAAiB;IAC9B,SAAsB,WAAW,CAAC,OAAe;;YAC7C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;YACtC,MAAM,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;KAAA;IAHqB,6BAAW,cAGhC,CAAA;IAED,SAAsB,OAAO,CAAC,OAAe;;YACzC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;YACtC,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;KAAA;IAHqB,yBAAO,UAG5B,CAAA;IAED,SAAe,OAAO,CAAC,OAAe;;;YAClC,IAAI,YAAE,CAAC,UAAU,CAAC,cAAc,CAAC,KAAK,KAAK;gBACvC,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,uCAAuC,CAAC,CAAC;YAE5D,MAAM,IAAI,GAAQ,IAAI,CAAC,KAAK,CACxB,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,CACrD,CAAC;YACF,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;YAC1C,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;YAEzC,MAAM,MAAM,GACR,YACI,OAAO,CAAC,GAAG,EAAE;gBACT,oEAAoE,0DAC3E,CAAC;YACN,OAAO,MAAM,CAAC,eAAe,CAAC;QAClC,CAAC;KAAA;AACL,CAAC,EA5BgB,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QA4BjC;AAED,MAAM,GAAG,GACL,CAAC,OAAe,EAAE,EAAE,CACpB,CAAC,IAAS,EAAE,EAAE,CACd,CAAC,MAAc,EAAE,OAAgB,EAAQ,EAAE;IACvC,MAAM,MAAM,GACR,CAAC,OAAO,KAAK,KAAK;QACd,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;QACpD,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC/D,YAAE,CAAC,UAAU,CAAC,eAAe,GAAG,MAAM,CAAC,CAAC;IAC5C,MAAM,MAAM,GACR,OAAO,KAAK,MAAM;QACd,CAAC,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;QAC9B,CAAC,CAAC,WAAW,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACzD,IAAI,MAAM,KAAK,KAAK;QAAE,OAAO,CAAC,GAAG,OAAO,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC,CAAC;AACpE,CAAC,CAAC;AAEN,MAAM,IAAI,GACN,CAAC,MAAiB,EAAE,EAAE,CACtB,CAAC,IAAY,EAAS,EAAE;IACpB,MAAM,EAAE,CAAC;IACT,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC,CAAC;AAEN,SAAS,OAAO,CAAC,OAAe;IAC5B,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACrB,uBAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;AAC/C,CAAC"}
|
package/bin/index.js
CHANGED
|
@@ -45,7 +45,8 @@ npx nestia [command] [options?]
|
|
|
45
45
|
- npx nestia start project --manager pnpm
|
|
46
46
|
2. npx nestia setup \\
|
|
47
47
|
--compiler (ttypescript|ts-patch) \\
|
|
48
|
-
--manager (npm|pnpm|yarn)
|
|
48
|
+
--manager (npm|pnpm|yarn) \\
|
|
49
|
+
--project {tsconfig.json file path}
|
|
49
50
|
- npx nestia setup
|
|
50
51
|
- npx nestia setup --compiler ttypescript
|
|
51
52
|
- npx nestia setup --compiler ts-patch
|
package/bin/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,mDAAgD;AAChD,2DAAwD;AACxD,mDAAgD;AAEhD,MAAM,KAAK,GAAG
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,mDAAgD;AAChD,2DAAwD;AACxD,mDAAgD;AAEhD,MAAM,KAAK,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2Bb,CAAC;AAEF,SAAS,IAAI,CAAC,IAAY;IACtB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC;AAED,SAAe,KAAK;;;QAChB,MAAM,OAAO,GAA2B,6BAAa,CAAC,KAAK,CACvD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CACxB,CAAC;QACF,MAAM,OAAO,GAAW,MAAA,OAAO,CAAC,OAAO,mCAAI,KAAK,CAAC;QACjD,MAAM,QAAQ,GAAW,MAAA,OAAO,CAAC,QAAQ,mCAAI,aAAa,CAAC;QAE3D,IACI,CAAC,QAAQ,KAAK,aAAa,IAAI,QAAQ,KAAK,UAAU,CAAC;YACvD,CAAC,OAAO,KAAK,KAAK,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,MAAM,CAAC;YAE/D,IAAI,CAAC,KAAK,CAAC,CAAC;aACX,IAAI,QAAQ,KAAK,aAAa;YAC/B,MAAM,qCAAiB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;;YAC5C,MAAM,qCAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;;CACjD;AAED,SAAe,IAAI;;QACf,MAAM,IAAI,GAAuB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjD,MAAM,IAAI,GAAa,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE7C,IAAI,IAAI,KAAK,OAAO;YAChB,MAAM,6BAAa,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aAC5D,IAAI,IAAI,KAAK,OAAO;YAAE,MAAM,KAAK,EAAE,CAAC;aACpC,IACD,IAAI,KAAK,cAAc;YACvB,IAAI,KAAK,MAAM;YACf,IAAI,KAAK,KAAK;YACd,IAAI,KAAK,SAAS,EACpB;YACE,IAAI;gBACA,wDAAa,aAAa,GAAC,CAAC;aAC/B;YAAC,WAAM;gBACJ,IAAI,CACA,oEAAoE,CACvE,CAAC;aACL;YACD,wDAAa,gCAAgC,GAAC,CAAC;SAClD;;YAAM,IAAI,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;CAAA;AACD,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACjB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,44 +1,44 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "nestia",
|
|
3
|
-
"version": "4.0.
|
|
4
|
-
"description": "Nestia CLI",
|
|
5
|
-
"main": "bin/index.js",
|
|
6
|
-
"bin": {
|
|
7
|
-
"nestia": "bin/index.js"
|
|
8
|
-
},
|
|
9
|
-
"scripts": {
|
|
10
|
-
"build": "rimraf bin && tsc"
|
|
11
|
-
},
|
|
12
|
-
"repository": {
|
|
13
|
-
"type": "git",
|
|
14
|
-
"url": "https://github.com/samchon/nestia"
|
|
15
|
-
},
|
|
16
|
-
"keywords": [
|
|
17
|
-
"nestia",
|
|
18
|
-
"cli",
|
|
19
|
-
"sdk",
|
|
20
|
-
"swagger",
|
|
21
|
-
"generator",
|
|
22
|
-
"nestjs",
|
|
23
|
-
"typia"
|
|
24
|
-
],
|
|
25
|
-
"author": "Jeongho Nam",
|
|
26
|
-
"license": "MIT",
|
|
27
|
-
"bugs": {
|
|
28
|
-
"url": "https://github.com/samchon/nestia/issues"
|
|
29
|
-
},
|
|
30
|
-
"homepage": "https://github.com/samchon/nestia",
|
|
31
|
-
"devDependencies": {
|
|
32
|
-
"@nestia/core": "^1.0.
|
|
33
|
-
"@nestia/sdk": "^1.0.
|
|
34
|
-
"@types/node": "^18.11.16",
|
|
35
|
-
"rimraf": "^3.0.2",
|
|
36
|
-
"typescript": "^4.9.4"
|
|
37
|
-
},
|
|
38
|
-
"files": [
|
|
39
|
-
"bin",
|
|
40
|
-
"README.md",
|
|
41
|
-
"LICENSE",
|
|
42
|
-
"package-json"
|
|
43
|
-
]
|
|
44
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "nestia",
|
|
3
|
+
"version": "4.0.2",
|
|
4
|
+
"description": "Nestia CLI",
|
|
5
|
+
"main": "bin/index.js",
|
|
6
|
+
"bin": {
|
|
7
|
+
"nestia": "bin/index.js"
|
|
8
|
+
},
|
|
9
|
+
"scripts": {
|
|
10
|
+
"build": "rimraf bin && tsc"
|
|
11
|
+
},
|
|
12
|
+
"repository": {
|
|
13
|
+
"type": "git",
|
|
14
|
+
"url": "https://github.com/samchon/nestia"
|
|
15
|
+
},
|
|
16
|
+
"keywords": [
|
|
17
|
+
"nestia",
|
|
18
|
+
"cli",
|
|
19
|
+
"sdk",
|
|
20
|
+
"swagger",
|
|
21
|
+
"generator",
|
|
22
|
+
"nestjs",
|
|
23
|
+
"typia"
|
|
24
|
+
],
|
|
25
|
+
"author": "Jeongho Nam",
|
|
26
|
+
"license": "MIT",
|
|
27
|
+
"bugs": {
|
|
28
|
+
"url": "https://github.com/samchon/nestia/issues"
|
|
29
|
+
},
|
|
30
|
+
"homepage": "https://github.com/samchon/nestia",
|
|
31
|
+
"devDependencies": {
|
|
32
|
+
"@nestia/core": "^1.0.5",
|
|
33
|
+
"@nestia/sdk": "^1.0.1",
|
|
34
|
+
"@types/node": "^18.11.16",
|
|
35
|
+
"rimraf": "^3.0.2",
|
|
36
|
+
"typescript": "^4.9.4"
|
|
37
|
+
},
|
|
38
|
+
"files": [
|
|
39
|
+
"bin",
|
|
40
|
+
"README.md",
|
|
41
|
+
"LICENSE",
|
|
42
|
+
"package-json"
|
|
43
|
+
]
|
|
44
|
+
}
|