nestia 6.3.0 → 6.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +39 -21
- package/bin/index.js +17 -7
- package/bin/index.js.map +1 -1
- package/bin/internal/ArgumentParser.js +2 -0
- package/bin/internal/ArgumentParser.js.map +1 -1
- package/bin/internal/PluginConfigurator.js +1 -1
- package/package.json +5 -5
- package/src/internal/ArgumentParser.ts +3 -1
- package/src/internal/PluginConfigurator.ts +1 -1
package/README.md
CHANGED
|
@@ -2,21 +2,28 @@
|
|
|
2
2
|

|
|
3
3
|
|
|
4
4
|
[](https://github.com/samchon/nestia/blob/master/LICENSE)
|
|
5
|
-
[](https://www.npmjs.com/package/@nestia/fetcher)
|
|
6
|
+
[](https://www.npmjs.com/package/@nestia/fetcher)
|
|
7
7
|
[](https://github.com/samchon/nestia/actions?query=workflow%3Abuild)
|
|
8
|
-
[](https://nestia.io/docs/)
|
|
9
|
+
[](https://gurubase.io/g/nestia)
|
|
10
|
+
[](https://discord.gg/E94XhzrUCZ)
|
|
9
11
|
|
|
10
12
|
Nestia is a set of helper libraries for NestJS, supporting below features:
|
|
11
13
|
|
|
12
|
-
- `@nestia/core`:
|
|
14
|
+
- `@nestia/core`:
|
|
15
|
+
- Super-fast/easy decorators
|
|
16
|
+
- Advanced WebSocket routes
|
|
13
17
|
- `@nestia/sdk`:
|
|
14
|
-
- Swagger generator evolved than ever
|
|
18
|
+
- Swagger generator, more evolved than ever
|
|
15
19
|
- SDK library generator for clients
|
|
16
20
|
- Mockup Simulator for client applications
|
|
17
21
|
- Automatic E2E test functions generator
|
|
18
|
-
- `@nestia/
|
|
19
|
-
-
|
|
22
|
+
- `@nestia/e2e`: Test program utilizing e2e test functions
|
|
23
|
+
- `@nestia/benchmark`: Benchmark program using e2e test functions
|
|
24
|
+
- `@nestia/chat`: Super A.I. Chatbot by Swagger document
|
|
25
|
+
- `@nestia/editor`: Swagger-UI with Online TypeScript Editor
|
|
26
|
+
- `nestia`: Just CLI (command line interface) tool
|
|
20
27
|
|
|
21
28
|
> [!NOTE]
|
|
22
29
|
>
|
|
@@ -25,8 +32,8 @@ Nestia is a set of helper libraries for NestJS, supporting below features:
|
|
|
25
32
|
> - Runtime validator is **20,000x faster** than `class-validator`
|
|
26
33
|
> - JSON serialization is **200x faster** than `class-transformer`
|
|
27
34
|
> - Software Development Kit
|
|
28
|
-
> -
|
|
29
|
-
> - Mockup simulator means embedded backend simulator in SDK
|
|
35
|
+
> - Collection of typed `fetch` functions with DTO structures like [tRPC](https://trpc.io/)
|
|
36
|
+
> - Mockup simulator means embedded backend simulator in the SDK
|
|
30
37
|
> - similar with [msw](https://mswjs.io/), but fully automated
|
|
31
38
|
|
|
32
39
|

|
|
@@ -56,19 +63,30 @@ Check out the document in the [website](https://nestia.io/docs/):
|
|
|
56
63
|
|
|
57
64
|
### 📖 Features
|
|
58
65
|
- Core Library
|
|
59
|
-
- [
|
|
60
|
-
- [
|
|
61
|
-
- [
|
|
62
|
-
- [
|
|
63
|
-
- [
|
|
64
|
-
- [
|
|
65
|
-
|
|
66
|
-
- [
|
|
67
|
-
|
|
68
|
-
- [
|
|
69
|
-
- [Mockup Simulator](https://nestia.io/docs/sdk/
|
|
70
|
-
|
|
66
|
+
- [`@WebSocketRoute`](https://nestia.io/docs/core/WebSocketRoute)
|
|
67
|
+
- [`@TypedRoute`](https://nestia.io/docs/core/TypedRoute/)
|
|
68
|
+
- [**`@TypedBody`**](https://nestia.io/docs/core/TypedBody/)
|
|
69
|
+
- [`@TypedParam`](https://nestia.io/docs/core/TypedParam/)
|
|
70
|
+
- [`@TypedQuery`](https://nestia.io/docs/core/TypedQuery/)
|
|
71
|
+
- [`@TypedFormData`](https://nestia.io/docs/core/TypedFormData/)
|
|
72
|
+
- [`@TypedHeaders`](https://nestia.io/docs/core/TypedHeaders/)
|
|
73
|
+
- [`@TypedException`](https://nestia.io/docs/core/TypedException/)
|
|
74
|
+
- Software Development Kit
|
|
75
|
+
- [SDK Builder](https://nestia.io/docs/sdk/)
|
|
76
|
+
- [Mockup Simulator](https://nestia.io/docs/sdk/simulate/)
|
|
77
|
+
- [E2E Test Functions](https://nestia.io/docs/sdk/e2e/)
|
|
78
|
+
- [Distribution](https://nestia.io/docs/sdk/distribute/)
|
|
79
|
+
- Swagger Document
|
|
80
|
+
- [Swagger Builder](https://nestia.io/docs/swagger/)
|
|
81
|
+
- [**AI Chatbot Development**](https://nestia.io/docs/swagger/chat/)
|
|
82
|
+
- [Cloud Swagger Editor](https://nestia.io/docs/swagger/editor/)
|
|
83
|
+
- [Documentation Strategy](https://nestia.io/docs/swagger/strategy/)
|
|
84
|
+
- E2E Testing
|
|
85
|
+
- [Why E2E Test?](https://nestia.io/docs/e2e/why/)
|
|
86
|
+
- [Test Program Development](https://nestia.io/docs/e2e/development/)
|
|
87
|
+
- [Performance Benchmark](https://nestia.io/docs/e2e/benchmark/)
|
|
71
88
|
|
|
72
89
|
### 🔗 Appendix
|
|
90
|
+
- [API Documents](https://nestia.io/api)
|
|
73
91
|
- [⇲ Benchmark Result](https://github.com/samchon/nestia/tree/master/benchmark/results/11th%20Gen%20Intel(R)%20Core(TM)%20i5-1135G7%20%40%202.40GHz)
|
|
74
92
|
- [⇲ `dev.to` Articles](https://dev.to/samchon/series/22751)
|
package/bin/index.js
CHANGED
|
@@ -16,13 +16,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
16
16
|
}) : function(o, v) {
|
|
17
17
|
o["default"] = v;
|
|
18
18
|
});
|
|
19
|
-
var __importStar = (this && this.__importStar) || function (
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
};
|
|
19
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
+
var ownKeys = function(o) {
|
|
21
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
+
var ar = [];
|
|
23
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
+
return ar;
|
|
25
|
+
};
|
|
26
|
+
return ownKeys(o);
|
|
27
|
+
};
|
|
28
|
+
return function (mod) {
|
|
29
|
+
if (mod && mod.__esModule) return mod;
|
|
30
|
+
var result = {};
|
|
31
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
+
__setModuleDefault(result, mod);
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
})();
|
|
26
36
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
27
37
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
28
38
|
return new (P || (P = Promise))(function (resolve, reject) {
|
package/bin/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,MAAM,KAAK,GAAG;;;;;;;;;;;;;CAab,CAAC;AAEF,SAAS,IAAI,CAAC,IAAY;IACxB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;AAED,SAAe,IAAI;;QACjB,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,EAAE,CAAC;YACrB,MAAM,CACJ,wDAAa,iBAAiB,GAAC,CAChC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC3D,CAAC;aAAM,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YAC/B,MAAM,CACJ,wDAAa,kBAAkB,GAAC,CACjC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5D,CAAC;aAAM,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YAC5B,IAAI,CAAC;gBACH,wDAAa,cAAc,GAAC,CAAC;gBAC7B,wDAAa,UAAU,GAAC,CAAC;gBACzB,wDAAa,WAAW,GAAC,CAAC;YAC5B,CAAC;YAAC,WAAM,CAAC;gBACP,IAAI,CAAC,8DAA8D,CAAC,CAAC;YACvE,CAAC;YACD,MAAM,CAAC,wDAAa,qBAAqB,GAAC,CAAC,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;QACxE,CAAC;aAAM,IACL,IAAI,KAAK,cAAc;YACvB,IAAI,KAAK,MAAM;YACf,IAAI,KAAK,KAAK;YACd,IAAI,KAAK,SAAS;YAClB,IAAI,KAAK,KAAK;YACd,IAAI,KAAK,KAAK,EACd,CAAC;YACD,IAAI,CAAC;gBACH,OAAO,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;YACpD,CAAC;YAAC,WAAM,CAAC;gBACP,IAAI,CACF,oEAAoE,CACrE,CAAC;YACJ,CAAC;YACD,wDAAa,gCAAgC,GAAC,CAAC;QACjD,CAAC;;YAAM,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;CAAA;AACD,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC,CAAC,CAAC"}
|
|
@@ -98,6 +98,8 @@ var ArgumentParser;
|
|
|
98
98
|
const result = yield (0, package_manager_detector_1.detect)({ cwd: process.cwd() });
|
|
99
99
|
if ((result === null || result === void 0 ? void 0 : result.name) === "npm")
|
|
100
100
|
return null; // NPM case is still selectable
|
|
101
|
+
else if ((result === null || result === void 0 ? void 0 : result.name) === "deno")
|
|
102
|
+
return null; // Deno case is not supported
|
|
101
103
|
return (_a = result === null || result === void 0 ? void 0 : result.name) !== null && _a !== void 0 ? _a : null;
|
|
102
104
|
});
|
|
103
105
|
})(ArgumentParser || (exports.ArgumentParser = ArgumentParser = {}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ArgumentParser.js","sourceRoot":"","sources":["../../src/internal/ArgumentParser.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,0DAAkC;AAClC,4CAAoB;AACpB,wDAAgC;AAChC,uEAAgE;AAIhE,IAAiB,cAAc,
|
|
1
|
+
{"version":3,"file":"ArgumentParser.js","sourceRoot":"","sources":["../../src/internal/ArgumentParser.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nestia",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.4.0",
|
|
4
4
|
"description": "Nestia CLI tool",
|
|
5
5
|
"main": "bin/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -37,12 +37,12 @@
|
|
|
37
37
|
"package-manager-detector": "^0.2.0"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
|
-
"@nestia/core": "
|
|
41
|
-
"@nestia/sdk": "
|
|
40
|
+
"@nestia/core": "workspace:^",
|
|
41
|
+
"@nestia/sdk": "workspace:^",
|
|
42
42
|
"@types/inquirer": "^9.0.3",
|
|
43
43
|
"@types/node": "^18.11.16",
|
|
44
|
-
"rimraf": "^
|
|
45
|
-
"typescript": "~5.
|
|
44
|
+
"rimraf": "^6.0.1",
|
|
45
|
+
"typescript": "~5.7.2"
|
|
46
46
|
},
|
|
47
47
|
"files": [
|
|
48
48
|
"bin",
|
|
@@ -115,7 +115,9 @@ export namespace ArgumentParser {
|
|
|
115
115
|
"npm" | "pnpm" | "yarn" | "bun" | null
|
|
116
116
|
> => {
|
|
117
117
|
const result: DetectResult | null = await detect({ cwd: process.cwd() });
|
|
118
|
-
if (result?.name === "npm")
|
|
118
|
+
if (result?.name === "npm")
|
|
119
|
+
return null; // NPM case is still selectable
|
|
120
|
+
else if (result?.name === "deno") return null; // Deno case is not supported
|
|
119
121
|
return result?.name ?? null;
|
|
120
122
|
};
|
|
121
123
|
}
|