@nestia/migrate 0.21.3 → 0.21.4-dev.20241208-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 +19 -6
- package/lib/bundles/NEST_TEMPLATE.js +2 -2
- package/lib/bundles/NEST_TEMPLATE.js.map +1 -1
- package/lib/bundles/SDK_TEMPLATE.js +1 -1
- package/lib/bundles/SDK_TEMPLATE.js.map +1 -1
- package/lib/index.mjs +3 -3
- package/package.json +92 -92
- package/src/bundles/NEST_TEMPLATE.ts +2 -2
- package/src/bundles/SDK_TEMPLATE.ts +1 -1
- package/src/executable/bundle.js +125 -0
- package/lib/executable/bundle.d.ts +0 -1
- package/lib/executable/bundle.js +0 -106
- package/lib/executable/bundle.js.map +0 -1
- package/src/executable/bundle.ts +0 -111
package/README.md
CHANGED
@@ -2,21 +2,27 @@
|
|
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
8
|
[](https://nestia.io/docs/)
|
9
|
+
[](https://discord.gg/E94XhzrUCZ)
|
9
10
|
|
10
11
|
Nestia is a set of helper libraries for NestJS, supporting below features:
|
11
12
|
|
12
|
-
- `@nestia/core`:
|
13
|
+
- `@nestia/core`:
|
14
|
+
- Super-fast/easy decorators
|
15
|
+
- Advanced WebSocket routes
|
13
16
|
- `@nestia/sdk`:
|
14
17
|
- Swagger generator evolved than ever
|
15
18
|
- SDK library generator for clients
|
16
19
|
- Mockup Simulator for client applications
|
17
20
|
- Automatic E2E test functions generator
|
18
|
-
- `@nestia/
|
19
|
-
-
|
21
|
+
- `@nestia/e2e`: Test program utilizing e2e test functions
|
22
|
+
- `@nestia/benchmark`: Benchmark program using e2e test functions
|
23
|
+
- `@nestia/migrate`: OpenAPI generator from Swagger to NestJS/SDK
|
24
|
+
- `@nestia/editor`: Swagger-UI with Online TypeScript Editor
|
25
|
+
- `nestia`: Just CLI (command line interface) tool
|
20
26
|
|
21
27
|
> [!NOTE]
|
22
28
|
>
|
@@ -56,6 +62,7 @@ Check out the document in the [website](https://nestia.io/docs/):
|
|
56
62
|
|
57
63
|
### 📖 Features
|
58
64
|
- Core Library
|
65
|
+
- [WebSocketRoute](https://nestia.io/docs/core/WebSocketRoute)
|
59
66
|
- [TypedRoute](https://nestia.io/docs/core/TypedRoute/)
|
60
67
|
- [TypedBody](https://nestia.io/docs/core/TypedBody/)
|
61
68
|
- [TypedParam](https://nestia.io/docs/core/TypedParam/)
|
@@ -64,11 +71,17 @@ Check out the document in the [website](https://nestia.io/docs/):
|
|
64
71
|
- [TypedException](https://nestia.io/docs/core/TypedException/)
|
65
72
|
- Generators
|
66
73
|
- [Swagger Documents](https://nestia.io/docs/sdk/swagger/)
|
67
|
-
- [
|
74
|
+
- [Software Development Kit](https://nestia.io/docs/sdk/sdk/)
|
68
75
|
- [E2E Functions](https://nestia.io/docs/sdk/e2e/)
|
69
76
|
- [Mockup Simulator](https://nestia.io/docs/sdk/simulator/)
|
77
|
+
- E2E Testing
|
78
|
+
- [Why E2E Test?](https://nestia.io/docs/e2e/why/)
|
79
|
+
- [Test Program Development](https://nestia.io/docs/e2e/development/)
|
80
|
+
- [Performance Benchmark](https://nestia.io/docs/e2e/benchmark/)
|
70
81
|
- [Swagger to NestJS](https://nestia.io/docs/migrate/)
|
82
|
+
- [TypeScript Swagger Editor](https://nestia.io/docs/editor/)
|
71
83
|
|
72
84
|
### 🔗 Appendix
|
85
|
+
- [API Documents](https://nestia.io/api)
|
73
86
|
- [⇲ Benchmark Result](https://github.com/samchon/nestia/tree/master/benchmark/results/11th%20Gen%20Intel(R)%20Core(TM)%20i5-1135G7%20%40%202.40GHz)
|
74
87
|
- [⇲ `dev.to` Articles](https://dev.to/samchon/series/22751)
|
@@ -55,7 +55,7 @@ exports.NEST_TEMPLATE = [
|
|
55
55
|
{
|
56
56
|
"location": "",
|
57
57
|
"file": "package.json",
|
58
|
-
"content": "{\
|
58
|
+
"content": "{\n \"private\": true,\n \"name\": \"@ORGANIZATION/PROJECT\",\n \"version\": \"0.1.0\",\n \"description\": \"Starter kit of Nestia\",\n \"main\": \"lib/index.js\",\n \"scripts\": {\n \"benchmark\": \"node bin/test/benchmark\",\n \"test\": \"node bin/test\",\n \"test:webpack\": \"npm run webpack && node bin/test/webpack.js\",\n \"------------------------BUILDS------------------------\": \"\",\n \"build\": \"npm run build:sdk && npm run build:main && npm run build:test\",\n \"build:api\": \"rimraf packages/api/lib && nestia all && rimraf packages/api/lib && tsc -p packages/api/tsconfig.json && rollup -c packages/api/rollup.config.js\",\n \"build:main\": \"rimraf lib && tsc\",\n \"build:sdk\": \"rimraf src/api/functional && nestia sdk\",\n \"build:swagger\": \"npx nestia swagger\",\n \"build:test\": \"rimraf bin && tsc -p test/tsconfig.json\",\n \"dev\": \"npm run build:test -- --watch\",\n \"eslint\": \"eslint src && eslint test\",\n \"eslint:fix\": \"eslint --fix src && eslint --fix test\",\n \"prepare\": \"ts-patch install && typia patch\",\n \"prettier\": \"prettier src --write && prettier test --write\",\n \"------------------------WEBPACK------------------------\": \"\",\n \"webpack\": \"rimraf dist && webpack\",\n \"webpack:start\": \"cd dist && node dist/server\",\n \"webpack:test\": \"npm run webpack && node bin/test/webpack.js\",\n \"------------------------DEPLOYS------------------------\": \"\",\n \"package:api\": \"npm run build:api && cd packages/api && npm publish\",\n \"start\": \"node lib/executable/server\",\n \"start:swagger\": \"ts-node src/executable/swagger.ts\"\n },\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/samchon/nestia-start\"\n },\n \"keywords\": [\n \"nestia\",\n \"template\",\n \"boilerplate\"\n ],\n \"author\": \"AUTHOR\",\n \"license\": \"MIT\",\n \"bugs\": {\n \"url\": \"https://github.com/samchon/nestia-start/issues\"\n },\n \"homepage\": \"https://github.com/samchon/nestia-start#readme\",\n \"devDependencies\": {\n \"@nestia/benchmark\": \"^0.3.0\",\n \"@nestia/e2e\": \"^0.7.0\",\n \"@nestia/sdk\": \"^4.0.5-dev.20241208-3\",\n \"@rollup/plugin-terser\": \"^0.4.4\",\n \"@rollup/plugin-typescript\": \"^11.1.6\",\n \"@trivago/prettier-plugin-sort-imports\": \"^4.3.0\",\n \"@types/cli\": \"^0.11.21\",\n \"@types/cli-progress\": \"^3.11.5\",\n \"@types/express\": \"^4.17.21\",\n \"@types/inquirer\": \"^8.2.5\",\n \"@types/node\": \"^18.11.0\",\n \"@types/uuid\": \"^8.3.4\",\n \"@typescript-eslint/eslint-plugin\": \"^8.1.0\",\n \"@typescript-eslint/parser\": \"^8.1.0\",\n \"chalk\": \"^4.1.2\",\n \"cli\": \"^1.0.1\",\n \"cli-progress\": \"^3.12.0\",\n \"copy-webpack-plugin\": \"^11.0.0\",\n \"eslint-plugin-deprecation\": \"^3.0.0\",\n \"express\": \"^4.18.2\",\n \"nestia\": \"^6.3.1\",\n \"prettier\": \"^3.2.4\",\n \"prettier-plugin-prisma\": \"^5.0.0\",\n \"rimraf\": \"^3.0.2\",\n \"rollup\": \"^4.18.0\",\n \"source-map-support\": \"^0.5.21\",\n \"swagger-ui-express\": \"^5.0.0\",\n \"ts-loader\": \"^9.5.1\",\n \"ts-node\": \"^10.9.1\",\n \"ts-patch\": \"^3.3.0\",\n \"typescript\": \"~5.7.2\",\n \"typescript-transform-paths\": \"^3.5.2\",\n \"webpack\": \"^5.89.0\",\n \"webpack-cli\": \"^5.1.4\",\n \"write-file-webpack-plugin\": \"^4.5.1\"\n },\n \"dependencies\": {\n \"@nestia/core\": \"^4.0.5-dev.20241208-3\",\n \"@nestia/fetcher\": \"^4.0.5-dev.20241208-3\",\n \"@nestjs/common\": \"^10.4.13\",\n \"@nestjs/core\": \"^10.4.13\",\n \"@nestjs/platform-express\": \"^10.4.13\",\n \"commander\": \"10.0.0\",\n \"dotenv\": \"^16.3.1\",\n \"dotenv-expand\": \"^10.0.0\",\n \"inquirer\": \"8.2.5\",\n \"serialize-error\": \"^4.1.0\",\n \"tgrid\": \"^1.0.2\",\n \"tstl\": \"^3.0.0\",\n \"typia\": \"^7.0.2\",\n \"uuid\": \"^9.0.0\"\n },\n \"stackblitz\": {\n \"startCommand\": \"npm run prepare && npm run build:test && npm run test\"\n }\n}"
|
59
59
|
},
|
60
60
|
{
|
61
61
|
"location": "packages/api",
|
@@ -70,7 +70,7 @@ exports.NEST_TEMPLATE = [
|
|
70
70
|
{
|
71
71
|
"location": "packages/api",
|
72
72
|
"file": "package.json",
|
73
|
-
"content": "{\
|
73
|
+
"content": "{\n \"name\": \"@ORGANIZATION/PROJECT-api\",\n \"version\": \"0.1.0\",\n \"description\": \"SDK library generated by Nestia\",\n \"main\": \"lib/index.js\",\n \"module\": \"lib/index.mjs\",\n \"typings\": \"lib/index.d.ts\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/samchon/nestia\"\n },\n \"author\": \"Jeongho Nam\",\n \"license\": \"MIT\",\n \"bugs\": {\n \"url\": \"https://github.com/samchon/nestia/issues\"\n },\n \"homepage\": \"https://nestia.io\",\n \"files\": [\n \"lib\",\n \"package.json\",\n \"swagger.json\",\n \"openai.json\",\n \"README.md\"\n ],\n \"dependencies\": {\n \"@nestia/fetcher\": \"^4.0.5-dev.20241208-3\",\n \"tgrid\": \"^1.1.0\",\n \"typia\": \"^7.0.2\"\n }\n}"
|
74
74
|
},
|
75
75
|
{
|
76
76
|
"location": "packages/api",
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"NEST_TEMPLATE.js","sourceRoot":"","sources":["../../src/bundles/NEST_TEMPLATE.ts"],"names":[],"mappings":";;;AAAa,QAAA,aAAa,GAAG;IAC3B;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,MAAM;QACd,SAAS,EAAE,+CAA+C;KAC3D;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,gqCAAgqC;KAC5qC;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,MAAM,EAAE,WAAW;QACnB,SAAS,EAAE,k+BAAk+B;KAC9+B;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,iHAAiH;KAC7H;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,iBAAiB;QACzB,SAAS,EAAE,iIAAiI;KAC7I;IACD;QACE,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,aAAa;QACrB,SAAS,EAAE,irCAAirC;KAC7rC;IACD;QACE,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,qRAAqR;KACjS;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,8CAA8C;QACtD,SAAS,EAAE,owGAAowG;KAChxG;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,inCAAinC;KAC7nC;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,kBAAkB;QAC1B,SAAS,EAAE,woBAAwoB;KACppB;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,cAAc;QACtB,SAAS,EAAE,
|
1
|
+
{"version":3,"file":"NEST_TEMPLATE.js","sourceRoot":"","sources":["../../src/bundles/NEST_TEMPLATE.ts"],"names":[],"mappings":";;;AAAa,QAAA,aAAa,GAAG;IAC3B;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,MAAM;QACd,SAAS,EAAE,+CAA+C;KAC3D;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,gqCAAgqC;KAC5qC;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,MAAM,EAAE,WAAW;QACnB,SAAS,EAAE,k+BAAk+B;KAC9+B;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,iHAAiH;KAC7H;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,iBAAiB;QACzB,SAAS,EAAE,iIAAiI;KAC7I;IACD;QACE,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,aAAa;QACrB,SAAS,EAAE,irCAAirC;KAC7rC;IACD;QACE,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,qRAAqR;KACjS;IACD;QACE,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,8CAA8C;QACtD,SAAS,EAAE,owGAAowG;KAChxG;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,inCAAinC;KAC7nC;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,kBAAkB;QAC1B,SAAS,EAAE,woBAAwoB;KACppB;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,cAAc;QACtB,SAAS,EAAE,khIAAkhI;KAC9hI;IACD;QACE,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,0DAA0D;KACtE;IACD;QACE,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,8mCAA8mC;KAC1nC;IACD;QACE,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,cAAc;QACtB,SAAS,EAAE,swBAAswB;KAClxB;IACD;QACE,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,WAAW;QACnB,SAAS,EAAE,mmEAAmmE;KAC/mE;IACD;QACE,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,kBAAkB;QAC1B,SAAS,EAAE,itBAAitB;KAC7tB;IACD;QACE,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,qyWAAqyW;KACjzW;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,oBAAoB;QAC5B,SAAS,EAAE,yhBAAyhB;KACriB;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,WAAW;QACnB,SAAS,EAAE,86NAA86N;KAC17N;IACD;QACE,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,cAAc;QACtB,SAAS,EAAE,oDAAoD;KAChE;IACD;QACE,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,gBAAgB;QACxB,SAAS,EAAE,2DAA2D;KACvE;IACD;QACE,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,UAAU;QAClB,SAAS,EAAE,kGAAkG;KAC9G;IACD;QACE,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,WAAW;QACnB,SAAS,EAAE,kIAAkI;KAC9I;IACD;QACE,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,cAAc;QACtB,SAAS,EAAE,+CAA+C;KAC3D;IACD;QACE,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,aAAa;QACrB,SAAS,EAAE,8CAA8C;KAC1D;IACD;QACE,UAAU,EAAE,wBAAwB;QACpC,MAAM,EAAE,gBAAgB;QACxB,SAAS,EAAE,k8FAAk8F;KAC98F;IACD;QACE,UAAU,EAAE,2BAA2B;QACvC,MAAM,EAAE,oBAAoB;QAC5B,SAAS,EAAE,4QAA4Q;KACxR;IACD;QACE,UAAU,EAAE,2BAA2B;QACvC,MAAM,EAAE,UAAU;QAClB,SAAS,EAAE,+hDAA+hD;KAC3iD;IACD;QACE,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,WAAW;QACnB,SAAS,EAAE,8jBAA8jB;KAC1kB;IACD;QACE,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,8+BAA8+B;KAC1/B;IACD;QACE,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,cAAc;QACtB,SAAS,EAAE,2nCAA2nC;KACvoC;IACD;QACE,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,oBAAoB;QAC5B,SAAS,EAAE,ikBAAikB;KAC7kB;IACD;QACE,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,aAAa;QACrB,SAAS,EAAE,mpBAAmpB;KAC/pB;IACD;QACE,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,cAAc;QACtB,SAAS,EAAE,4QAA4Q;KACxR;IACD;QACE,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,kVAAkV;KAC9V;IACD;QACE,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,UAAU;QAClB,SAAS,EAAE,i9HAAi9H;KAC79H;IACD;QACE,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,ucAAuc;KACnd;IACD;QACE,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,mBAAmB;QAC3B,SAAS,EAAE,smFAAsmF;KAClnF;IACD;QACE,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,UAAU;QAClB,SAAS,EAAE,o3GAAo3G;KACh4G;IACD;QACE,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,yJAAyJ;KACrK;IACD;QACE,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,ozDAAozD;KACh0D;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,y8XAAy8X;KACr9X;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,mBAAmB;QAC3B,SAAS,EAAE,g1DAAg1D;KAC51D;CACF,CAAA"}
|
@@ -30,7 +30,7 @@ exports.SDK_TEMPLATE = [
|
|
30
30
|
{
|
31
31
|
"location": "",
|
32
32
|
"file": "package.json",
|
33
|
-
"content": "{\
|
33
|
+
"content": "{\n \"name\": \"@ORGANIZATION/PROJECT-api\",\n \"version\": \"0.1.0\",\n \"description\": \"SDK library generated by Nestia\",\n \"main\": \"lib/index.js\",\n \"module\": \"lib/index.mjs\",\n \"typings\": \"lib/index.d.ts\",\n \"scripts\": {\n \"build\": \"rimraf lib && tsc && rollup -c\",\n \"build:test\": \"rimraf bin && tsc --project test/tsconfig.json\",\n \"deploy\": \"npm run build && npm publish\",\n \"dev\": \"npm run build:test -- --watch\",\n \"hello\": \"node hello\",\n \"prepare\": \"ts-patch install && typia patch\",\n \"start\": \"ts-node test/start.ts\",\n \"swagger\": \"ts-node test/swagger.ts\",\n \"test\": \"ts-node test/index.ts\",\n \"test:simulate\": \"ts-node test/index.ts --simulate true\",\n \"test:manual\": \"ts-node test/manual.ts\"\n },\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/samchon/nestia\"\n },\n \"author\": \"Jeongho Nam\",\n \"license\": \"MIT\",\n \"bugs\": {\n \"url\": \"https://github.com/samchon/nestia/issues\"\n },\n \"homepage\": \"https://nestia.io\",\n \"files\": [\n \"lib\",\n \"swagger.json\",\n \"package.json\",\n \"README.md\"\n ],\n \"dependencies\": {\n \"@nestia/fetcher\": \"^4.0.5-dev.20241208-3\",\n \"tgrid\": \"^1.1.0\",\n \"typia\": \"^7.0.2\"\n },\n \"devDependencies\": {\n \"@nestia/e2e\": \"^0.7.0\",\n \"@rollup/plugin-terser\": \"^0.4.4\",\n \"@rollup/plugin-typescript\": \"^11.1.6\",\n \"@trivago/prettier-plugin-sort-imports\": \"^4.3.0\",\n \"@types/express\": \"^4.17.21\",\n \"@types/inquirer\": \"8.2.5\",\n \"@types/swagger-ui-express\": \"^4.1.6\",\n \"chalk\": \"4.1.2\",\n \"commander\": \"^10.0.0\",\n \"express\": \"^4.19.2\",\n \"inquirer\": \"8.2.5\",\n \"prettier\": \"^3.2.5\",\n \"rimraf\": \"^5.0.5\",\n \"rollup\": \"^4.13.2\",\n \"swagger-ui-express\": \"^5.0.0\",\n \"ts-node\": \"^10.9.2\",\n \"ts-patch\": \"^3.3.0\",\n \"typescript\": \"~5.7.2\",\n \"typescript-transform-paths\": \"^3.5.2\"\n }\n}"
|
34
34
|
},
|
35
35
|
{
|
36
36
|
"location": "",
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"SDK_TEMPLATE.js","sourceRoot":"","sources":["../../src/bundles/SDK_TEMPLATE.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG;IAC1B;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,mFAAmF;KAC/F;IACD;QACE,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,aAAa;QACrB,SAAS,EAAE,oxBAAoxB;KAChyB;IACD;QACE,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,sRAAsR;KAClS;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,UAAU;QAClB,SAAS,EAAE,4rBAA4rB;KACxsB;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,inCAAinC;KAC7nC;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,cAAc;QACtB,SAAS,EAAE,
|
1
|
+
{"version":3,"file":"SDK_TEMPLATE.js","sourceRoot":"","sources":["../../src/bundles/SDK_TEMPLATE.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG;IAC1B;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,mFAAmF;KAC/F;IACD;QACE,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,aAAa;QACrB,SAAS,EAAE,oxBAAoxB;KAChyB;IACD;QACE,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,sRAAsR;KAClS;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,UAAU;QAClB,SAAS,EAAE,4rBAA4rB;KACxsB;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,inCAAinC;KAC7nC;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,cAAc;QACtB,SAAS,EAAE,0hEAA0hE;KACtiE;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,oBAAoB;QAC5B,SAAS,EAAE,geAAge;KAC5e;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,WAAW;QACnB,SAAS,EAAE,oyHAAoyH;KAChzH;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,kBAAkB;QAC1B,SAAS,EAAE,wqBAAwqB;KACprB;IACD;QACE,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,cAAc;QACtB,SAAS,EAAE,oDAAoD;KAChE;IACD;QACE,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,gBAAgB;QACxB,SAAS,EAAE,2DAA2D;KACvE;IACD;QACE,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,UAAU;QAClB,SAAS,EAAE,kGAAkG;KAC9G;IACD;QACE,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,WAAW;QACnB,SAAS,EAAE,kIAAkI;KAC9I;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,cAAc;QACtB,SAAS,EAAE,0hsDAA0hsD;KACtisD;IACD;QACE,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,UAAU;QAClB,SAAS,EAAE,24FAA24F;KACv5F;IACD;QACE,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,UAAU;QAClB,SAAS,EAAE,uxBAAuxB;KACnyB;IACD;QACE,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,+lBAA+lB;KAC3mB;IACD;QACE,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,uMAAuM;KACnN;IACD;QACE,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,odAAod;KAChe;IACD;QACE,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,mBAAmB;QAC3B,SAAS,EAAE,gtEAAgtE;KAC5tE;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,24WAA24W;KACv5W;CACF,CAAA"}
|
package/lib/index.mjs
CHANGED
@@ -80,7 +80,7 @@ const NEST_TEMPLATE = [ {
|
|
80
80
|
}, {
|
81
81
|
location: "",
|
82
82
|
file: "package.json",
|
83
|
-
content: '{\
|
83
|
+
content: '{\n "private": true,\n "name": "@ORGANIZATION/PROJECT",\n "version": "0.1.0",\n "description": "Starter kit of Nestia",\n "main": "lib/index.js",\n "scripts": {\n "benchmark": "node bin/test/benchmark",\n "test": "node bin/test",\n "test:webpack": "npm run webpack && node bin/test/webpack.js",\n "------------------------BUILDS------------------------": "",\n "build": "npm run build:sdk && npm run build:main && npm run build:test",\n "build:api": "rimraf packages/api/lib && nestia all && rimraf packages/api/lib && tsc -p packages/api/tsconfig.json && rollup -c packages/api/rollup.config.js",\n "build:main": "rimraf lib && tsc",\n "build:sdk": "rimraf src/api/functional && nestia sdk",\n "build:swagger": "npx nestia swagger",\n "build:test": "rimraf bin && tsc -p test/tsconfig.json",\n "dev": "npm run build:test -- --watch",\n "eslint": "eslint src && eslint test",\n "eslint:fix": "eslint --fix src && eslint --fix test",\n "prepare": "ts-patch install && typia patch",\n "prettier": "prettier src --write && prettier test --write",\n "------------------------WEBPACK------------------------": "",\n "webpack": "rimraf dist && webpack",\n "webpack:start": "cd dist && node dist/server",\n "webpack:test": "npm run webpack && node bin/test/webpack.js",\n "------------------------DEPLOYS------------------------": "",\n "package:api": "npm run build:api && cd packages/api && npm publish",\n "start": "node lib/executable/server",\n "start:swagger": "ts-node src/executable/swagger.ts"\n },\n "repository": {\n "type": "git",\n "url": "https://github.com/samchon/nestia-start"\n },\n "keywords": [\n "nestia",\n "template",\n "boilerplate"\n ],\n "author": "AUTHOR",\n "license": "MIT",\n "bugs": {\n "url": "https://github.com/samchon/nestia-start/issues"\n },\n "homepage": "https://github.com/samchon/nestia-start#readme",\n "devDependencies": {\n "@nestia/benchmark": "^0.3.0",\n "@nestia/e2e": "^0.7.0",\n "@nestia/sdk": "^4.0.5-dev.20241208-3",\n "@rollup/plugin-terser": "^0.4.4",\n "@rollup/plugin-typescript": "^11.1.6",\n "@trivago/prettier-plugin-sort-imports": "^4.3.0",\n "@types/cli": "^0.11.21",\n "@types/cli-progress": "^3.11.5",\n "@types/express": "^4.17.21",\n "@types/inquirer": "^8.2.5",\n "@types/node": "^18.11.0",\n "@types/uuid": "^8.3.4",\n "@typescript-eslint/eslint-plugin": "^8.1.0",\n "@typescript-eslint/parser": "^8.1.0",\n "chalk": "^4.1.2",\n "cli": "^1.0.1",\n "cli-progress": "^3.12.0",\n "copy-webpack-plugin": "^11.0.0",\n "eslint-plugin-deprecation": "^3.0.0",\n "express": "^4.18.2",\n "nestia": "^6.3.1",\n "prettier": "^3.2.4",\n "prettier-plugin-prisma": "^5.0.0",\n "rimraf": "^3.0.2",\n "rollup": "^4.18.0",\n "source-map-support": "^0.5.21",\n "swagger-ui-express": "^5.0.0",\n "ts-loader": "^9.5.1",\n "ts-node": "^10.9.1",\n "ts-patch": "^3.3.0",\n "typescript": "~5.7.2",\n "typescript-transform-paths": "^3.5.2",\n "webpack": "^5.89.0",\n "webpack-cli": "^5.1.4",\n "write-file-webpack-plugin": "^4.5.1"\n },\n "dependencies": {\n "@nestia/core": "^4.0.5-dev.20241208-3",\n "@nestia/fetcher": "^4.0.5-dev.20241208-3",\n "@nestjs/common": "^10.4.13",\n "@nestjs/core": "^10.4.13",\n "@nestjs/platform-express": "^10.4.13",\n "commander": "10.0.0",\n "dotenv": "^16.3.1",\n "dotenv-expand": "^10.0.0",\n "inquirer": "8.2.5",\n "serialize-error": "^4.1.0",\n "tgrid": "^1.0.2",\n "tstl": "^3.0.0",\n "typia": "^7.0.2",\n "uuid": "^9.0.0"\n },\n "stackblitz": {\n "startCommand": "npm run prepare && npm run build:test && npm run test"\n }\n}'
|
84
84
|
}, {
|
85
85
|
location: "packages/api",
|
86
86
|
file: ".gitignore",
|
@@ -92,7 +92,7 @@ const NEST_TEMPLATE = [ {
|
|
92
92
|
}, {
|
93
93
|
location: "packages/api",
|
94
94
|
file: "package.json",
|
95
|
-
content: '{\
|
95
|
+
content: '{\n "name": "@ORGANIZATION/PROJECT-api",\n "version": "0.1.0",\n "description": "SDK library generated by Nestia",\n "main": "lib/index.js",\n "module": "lib/index.mjs",\n "typings": "lib/index.d.ts",\n "repository": {\n "type": "git",\n "url": "https://github.com/samchon/nestia"\n },\n "author": "Jeongho Nam",\n "license": "MIT",\n "bugs": {\n "url": "https://github.com/samchon/nestia/issues"\n },\n "homepage": "https://nestia.io",\n "files": [\n "lib",\n "package.json",\n "swagger.json",\n "openai.json",\n "README.md"\n ],\n "dependencies": {\n "@nestia/fetcher": "^4.0.5-dev.20241208-3",\n "tgrid": "^1.1.0",\n "typia": "^7.0.2"\n }\n}'
|
96
96
|
}, {
|
97
97
|
location: "packages/api",
|
98
98
|
file: "README.md",
|
@@ -234,7 +234,7 @@ const SDK_TEMPLATE = [ {
|
|
234
234
|
}, {
|
235
235
|
location: "",
|
236
236
|
file: "package.json",
|
237
|
-
content: '{\
|
237
|
+
content: '{\n "name": "@ORGANIZATION/PROJECT-api",\n "version": "0.1.0",\n "description": "SDK library generated by Nestia",\n "main": "lib/index.js",\n "module": "lib/index.mjs",\n "typings": "lib/index.d.ts",\n "scripts": {\n "build": "rimraf lib && tsc && rollup -c",\n "build:test": "rimraf bin && tsc --project test/tsconfig.json",\n "deploy": "npm run build && npm publish",\n "dev": "npm run build:test -- --watch",\n "hello": "node hello",\n "prepare": "ts-patch install && typia patch",\n "start": "ts-node test/start.ts",\n "swagger": "ts-node test/swagger.ts",\n "test": "ts-node test/index.ts",\n "test:simulate": "ts-node test/index.ts --simulate true",\n "test:manual": "ts-node test/manual.ts"\n },\n "repository": {\n "type": "git",\n "url": "https://github.com/samchon/nestia"\n },\n "author": "Jeongho Nam",\n "license": "MIT",\n "bugs": {\n "url": "https://github.com/samchon/nestia/issues"\n },\n "homepage": "https://nestia.io",\n "files": [\n "lib",\n "swagger.json",\n "package.json",\n "README.md"\n ],\n "dependencies": {\n "@nestia/fetcher": "^4.0.5-dev.20241208-3",\n "tgrid": "^1.1.0",\n "typia": "^7.0.2"\n },\n "devDependencies": {\n "@nestia/e2e": "^0.7.0",\n "@rollup/plugin-terser": "^0.4.4",\n "@rollup/plugin-typescript": "^11.1.6",\n "@trivago/prettier-plugin-sort-imports": "^4.3.0",\n "@types/express": "^4.17.21",\n "@types/inquirer": "8.2.5",\n "@types/swagger-ui-express": "^4.1.6",\n "chalk": "4.1.2",\n "commander": "^10.0.0",\n "express": "^4.19.2",\n "inquirer": "8.2.5",\n "prettier": "^3.2.5",\n "rimraf": "^5.0.5",\n "rollup": "^4.13.2",\n "swagger-ui-express": "^5.0.0",\n "ts-node": "^10.9.2",\n "ts-patch": "^3.3.0",\n "typescript": "~5.7.2",\n "typescript-transform-paths": "^3.5.2"\n }\n}'
|
238
238
|
}, {
|
239
239
|
location: "",
|
240
240
|
file: "prettier.config.js",
|
package/package.json
CHANGED
@@ -1,92 +1,92 @@
|
|
1
|
-
{
|
2
|
-
"name": "@nestia/migrate",
|
3
|
-
"version": "0.21.
|
4
|
-
"description": "Migration program from swagger to NestJS",
|
5
|
-
"typings": "lib/index.d.ts",
|
6
|
-
"main": "lib/index.js",
|
7
|
-
"module": "lib/index.mjs",
|
8
|
-
"bin": {
|
9
|
-
"@nestia/migrate": "lib/executable/migrate.js"
|
10
|
-
},
|
11
|
-
"scripts": {
|
12
|
-
"build": "rimraf lib && tsc && rollup -c",
|
13
|
-
"bundle": "
|
14
|
-
"dev": "rimraf lib && tsc --watch",
|
15
|
-
"package:next": "npm publish --access public --tag next",
|
16
|
-
"prepare": "ts-patch install && typia patch && npm run bundle",
|
17
|
-
"test": "node lib/test"
|
18
|
-
},
|
19
|
-
"repository": {
|
20
|
-
"type": "git",
|
21
|
-
"url": "https://github.com/samchon/nestia"
|
22
|
-
},
|
23
|
-
"keywords": [
|
24
|
-
"migration",
|
25
|
-
"swagger",
|
26
|
-
"openapi generator",
|
27
|
-
"NestJS",
|
28
|
-
"nestia",
|
29
|
-
"SDK",
|
30
|
-
"RPC",
|
31
|
-
"Mockup Simulator"
|
32
|
-
],
|
33
|
-
"author": "Jeongho Nam",
|
34
|
-
"license": "MIT",
|
35
|
-
"bugs": {
|
36
|
-
"url": "https://github.com/samchon/nestia/issues"
|
37
|
-
},
|
38
|
-
"homepage": "https://nestia.io",
|
39
|
-
"devDependencies": {
|
40
|
-
"@nestia/benchmark": "
|
41
|
-
"@nestia/core": "
|
42
|
-
"@nestia/e2e": "
|
43
|
-
"@nestia/fetcher": "
|
44
|
-
"@nestjs/common": "^10.
|
45
|
-
"@nestjs/core": "^10.
|
46
|
-
"@nestjs/platform-express": "^10.3.8",
|
47
|
-
"@nestjs/platform-fastify": "^10.3.8",
|
48
|
-
"@rollup/plugin-terser": "^0.4.4",
|
49
|
-
"@rollup/plugin-typescript": "^12.1.1",
|
50
|
-
"@trivago/prettier-plugin-sort-imports": "^4.3.0",
|
51
|
-
"@types/cli-progress": "^3.11.5",
|
52
|
-
"@types/express": "^4.17.21",
|
53
|
-
"@types/inquirer": "^9.0.7",
|
54
|
-
"@types/multer": "^1.4.12",
|
55
|
-
"@types/node": "^20.3.3",
|
56
|
-
"@types/swagger-ui-express": "^4.1.6",
|
57
|
-
"chalk": "4.1.2",
|
58
|
-
"cli-progress": "^3.12.0",
|
59
|
-
"dotenv": "^16.3.1",
|
60
|
-
"dotenv-expand": "^10.0.0",
|
61
|
-
"express": "^4.19.2",
|
62
|
-
"multer": "^1.4.5-lts.1",
|
63
|
-
"rimraf": "^5.0.1",
|
64
|
-
"rollup": "^4.24.3",
|
65
|
-
"serialize-error": "^4.1.0",
|
66
|
-
"source-map-support": "^0.5.21",
|
67
|
-
"swagger-ui-express": "^5.0.0",
|
68
|
-
"tgrid": "^1.1.0",
|
69
|
-
"ts-node": "^10.9.1",
|
70
|
-
"ts-patch": "^3.3.0",
|
71
|
-
"typescript-transform-paths": "^3.5.2"
|
72
|
-
},
|
73
|
-
"dependencies": {
|
74
|
-
"@nestia/sdk": "^4.0.
|
75
|
-
"@samchon/openapi": "^2.0.1",
|
76
|
-
"commander": "10.0.0",
|
77
|
-
"inquirer": "8.2.5",
|
78
|
-
"prettier": "^3.2.5",
|
79
|
-
"tstl": "^3.0.0",
|
80
|
-
"typescript": "~5.7.2",
|
81
|
-
"typia": "^7.0.2"
|
82
|
-
},
|
83
|
-
"files": [
|
84
|
-
"lib",
|
85
|
-
"src",
|
86
|
-
"!lib/test",
|
87
|
-
"!src/test",
|
88
|
-
"package.json",
|
89
|
-
"README.md",
|
90
|
-
"LICENSE"
|
91
|
-
]
|
92
|
-
}
|
1
|
+
{
|
2
|
+
"name": "@nestia/migrate",
|
3
|
+
"version": "0.21.4-dev.20241208-2",
|
4
|
+
"description": "Migration program from swagger to NestJS",
|
5
|
+
"typings": "lib/index.d.ts",
|
6
|
+
"main": "lib/index.js",
|
7
|
+
"module": "lib/index.mjs",
|
8
|
+
"bin": {
|
9
|
+
"@nestia/migrate": "lib/executable/migrate.js"
|
10
|
+
},
|
11
|
+
"scripts": {
|
12
|
+
"build": "rimraf lib && tsc && rollup -c",
|
13
|
+
"bundle": "node src/executable/bundle.js",
|
14
|
+
"dev": "rimraf lib && tsc --watch",
|
15
|
+
"package:next": "npm publish --access public --tag next",
|
16
|
+
"prepare": "ts-patch install && typia patch && npm run bundle",
|
17
|
+
"test": "node lib/test"
|
18
|
+
},
|
19
|
+
"repository": {
|
20
|
+
"type": "git",
|
21
|
+
"url": "https://github.com/samchon/nestia"
|
22
|
+
},
|
23
|
+
"keywords": [
|
24
|
+
"migration",
|
25
|
+
"swagger",
|
26
|
+
"openapi generator",
|
27
|
+
"NestJS",
|
28
|
+
"nestia",
|
29
|
+
"SDK",
|
30
|
+
"RPC",
|
31
|
+
"Mockup Simulator"
|
32
|
+
],
|
33
|
+
"author": "Jeongho Nam",
|
34
|
+
"license": "MIT",
|
35
|
+
"bugs": {
|
36
|
+
"url": "https://github.com/samchon/nestia/issues"
|
37
|
+
},
|
38
|
+
"homepage": "https://nestia.io",
|
39
|
+
"devDependencies": {
|
40
|
+
"@nestia/benchmark": "workspace:^",
|
41
|
+
"@nestia/core": "workspace:^",
|
42
|
+
"@nestia/e2e": "workspace:^",
|
43
|
+
"@nestia/fetcher": "workspace:^",
|
44
|
+
"@nestjs/common": "^10.4.13",
|
45
|
+
"@nestjs/core": "^10.4.13",
|
46
|
+
"@nestjs/platform-express": "^10.3.8",
|
47
|
+
"@nestjs/platform-fastify": "^10.3.8",
|
48
|
+
"@rollup/plugin-terser": "^0.4.4",
|
49
|
+
"@rollup/plugin-typescript": "^12.1.1",
|
50
|
+
"@trivago/prettier-plugin-sort-imports": "^4.3.0",
|
51
|
+
"@types/cli-progress": "^3.11.5",
|
52
|
+
"@types/express": "^4.17.21",
|
53
|
+
"@types/inquirer": "^9.0.7",
|
54
|
+
"@types/multer": "^1.4.12",
|
55
|
+
"@types/node": "^20.3.3",
|
56
|
+
"@types/swagger-ui-express": "^4.1.6",
|
57
|
+
"chalk": "4.1.2",
|
58
|
+
"cli-progress": "^3.12.0",
|
59
|
+
"dotenv": "^16.3.1",
|
60
|
+
"dotenv-expand": "^10.0.0",
|
61
|
+
"express": "^4.19.2",
|
62
|
+
"multer": "^1.4.5-lts.1",
|
63
|
+
"rimraf": "^5.0.1",
|
64
|
+
"rollup": "^4.24.3",
|
65
|
+
"serialize-error": "^4.1.0",
|
66
|
+
"source-map-support": "^0.5.21",
|
67
|
+
"swagger-ui-express": "^5.0.0",
|
68
|
+
"tgrid": "^1.1.0",
|
69
|
+
"ts-node": "^10.9.1",
|
70
|
+
"ts-patch": "^3.3.0",
|
71
|
+
"typescript-transform-paths": "^3.5.2"
|
72
|
+
},
|
73
|
+
"dependencies": {
|
74
|
+
"@nestia/sdk": "^4.0.5-dev.20241208-3",
|
75
|
+
"@samchon/openapi": "^2.0.1",
|
76
|
+
"commander": "10.0.0",
|
77
|
+
"inquirer": "8.2.5",
|
78
|
+
"prettier": "^3.2.5",
|
79
|
+
"tstl": "^3.0.0",
|
80
|
+
"typescript": "~5.7.2",
|
81
|
+
"typia": "^7.0.2"
|
82
|
+
},
|
83
|
+
"files": [
|
84
|
+
"lib",
|
85
|
+
"src",
|
86
|
+
"!lib/test",
|
87
|
+
"!src/test",
|
88
|
+
"package.json",
|
89
|
+
"README.md",
|
90
|
+
"LICENSE"
|
91
|
+
]
|
92
|
+
}
|
@@ -52,7 +52,7 @@ export const NEST_TEMPLATE = [
|
|
52
52
|
{
|
53
53
|
"location": "",
|
54
54
|
"file": "package.json",
|
55
|
-
"content": "{\
|
55
|
+
"content": "{\n \"private\": true,\n \"name\": \"@ORGANIZATION/PROJECT\",\n \"version\": \"0.1.0\",\n \"description\": \"Starter kit of Nestia\",\n \"main\": \"lib/index.js\",\n \"scripts\": {\n \"benchmark\": \"node bin/test/benchmark\",\n \"test\": \"node bin/test\",\n \"test:webpack\": \"npm run webpack && node bin/test/webpack.js\",\n \"------------------------BUILDS------------------------\": \"\",\n \"build\": \"npm run build:sdk && npm run build:main && npm run build:test\",\n \"build:api\": \"rimraf packages/api/lib && nestia all && rimraf packages/api/lib && tsc -p packages/api/tsconfig.json && rollup -c packages/api/rollup.config.js\",\n \"build:main\": \"rimraf lib && tsc\",\n \"build:sdk\": \"rimraf src/api/functional && nestia sdk\",\n \"build:swagger\": \"npx nestia swagger\",\n \"build:test\": \"rimraf bin && tsc -p test/tsconfig.json\",\n \"dev\": \"npm run build:test -- --watch\",\n \"eslint\": \"eslint src && eslint test\",\n \"eslint:fix\": \"eslint --fix src && eslint --fix test\",\n \"prepare\": \"ts-patch install && typia patch\",\n \"prettier\": \"prettier src --write && prettier test --write\",\n \"------------------------WEBPACK------------------------\": \"\",\n \"webpack\": \"rimraf dist && webpack\",\n \"webpack:start\": \"cd dist && node dist/server\",\n \"webpack:test\": \"npm run webpack && node bin/test/webpack.js\",\n \"------------------------DEPLOYS------------------------\": \"\",\n \"package:api\": \"npm run build:api && cd packages/api && npm publish\",\n \"start\": \"node lib/executable/server\",\n \"start:swagger\": \"ts-node src/executable/swagger.ts\"\n },\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/samchon/nestia-start\"\n },\n \"keywords\": [\n \"nestia\",\n \"template\",\n \"boilerplate\"\n ],\n \"author\": \"AUTHOR\",\n \"license\": \"MIT\",\n \"bugs\": {\n \"url\": \"https://github.com/samchon/nestia-start/issues\"\n },\n \"homepage\": \"https://github.com/samchon/nestia-start#readme\",\n \"devDependencies\": {\n \"@nestia/benchmark\": \"^0.3.0\",\n \"@nestia/e2e\": \"^0.7.0\",\n \"@nestia/sdk\": \"^4.0.5-dev.20241208-3\",\n \"@rollup/plugin-terser\": \"^0.4.4\",\n \"@rollup/plugin-typescript\": \"^11.1.6\",\n \"@trivago/prettier-plugin-sort-imports\": \"^4.3.0\",\n \"@types/cli\": \"^0.11.21\",\n \"@types/cli-progress\": \"^3.11.5\",\n \"@types/express\": \"^4.17.21\",\n \"@types/inquirer\": \"^8.2.5\",\n \"@types/node\": \"^18.11.0\",\n \"@types/uuid\": \"^8.3.4\",\n \"@typescript-eslint/eslint-plugin\": \"^8.1.0\",\n \"@typescript-eslint/parser\": \"^8.1.0\",\n \"chalk\": \"^4.1.2\",\n \"cli\": \"^1.0.1\",\n \"cli-progress\": \"^3.12.0\",\n \"copy-webpack-plugin\": \"^11.0.0\",\n \"eslint-plugin-deprecation\": \"^3.0.0\",\n \"express\": \"^4.18.2\",\n \"nestia\": \"^6.3.1\",\n \"prettier\": \"^3.2.4\",\n \"prettier-plugin-prisma\": \"^5.0.0\",\n \"rimraf\": \"^3.0.2\",\n \"rollup\": \"^4.18.0\",\n \"source-map-support\": \"^0.5.21\",\n \"swagger-ui-express\": \"^5.0.0\",\n \"ts-loader\": \"^9.5.1\",\n \"ts-node\": \"^10.9.1\",\n \"ts-patch\": \"^3.3.0\",\n \"typescript\": \"~5.7.2\",\n \"typescript-transform-paths\": \"^3.5.2\",\n \"webpack\": \"^5.89.0\",\n \"webpack-cli\": \"^5.1.4\",\n \"write-file-webpack-plugin\": \"^4.5.1\"\n },\n \"dependencies\": {\n \"@nestia/core\": \"^4.0.5-dev.20241208-3\",\n \"@nestia/fetcher\": \"^4.0.5-dev.20241208-3\",\n \"@nestjs/common\": \"^10.4.13\",\n \"@nestjs/core\": \"^10.4.13\",\n \"@nestjs/platform-express\": \"^10.4.13\",\n \"commander\": \"10.0.0\",\n \"dotenv\": \"^16.3.1\",\n \"dotenv-expand\": \"^10.0.0\",\n \"inquirer\": \"8.2.5\",\n \"serialize-error\": \"^4.1.0\",\n \"tgrid\": \"^1.0.2\",\n \"tstl\": \"^3.0.0\",\n \"typia\": \"^7.0.2\",\n \"uuid\": \"^9.0.0\"\n },\n \"stackblitz\": {\n \"startCommand\": \"npm run prepare && npm run build:test && npm run test\"\n }\n}"
|
56
56
|
},
|
57
57
|
{
|
58
58
|
"location": "packages/api",
|
@@ -67,7 +67,7 @@ export const NEST_TEMPLATE = [
|
|
67
67
|
{
|
68
68
|
"location": "packages/api",
|
69
69
|
"file": "package.json",
|
70
|
-
"content": "{\
|
70
|
+
"content": "{\n \"name\": \"@ORGANIZATION/PROJECT-api\",\n \"version\": \"0.1.0\",\n \"description\": \"SDK library generated by Nestia\",\n \"main\": \"lib/index.js\",\n \"module\": \"lib/index.mjs\",\n \"typings\": \"lib/index.d.ts\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/samchon/nestia\"\n },\n \"author\": \"Jeongho Nam\",\n \"license\": \"MIT\",\n \"bugs\": {\n \"url\": \"https://github.com/samchon/nestia/issues\"\n },\n \"homepage\": \"https://nestia.io\",\n \"files\": [\n \"lib\",\n \"package.json\",\n \"swagger.json\",\n \"openai.json\",\n \"README.md\"\n ],\n \"dependencies\": {\n \"@nestia/fetcher\": \"^4.0.5-dev.20241208-3\",\n \"tgrid\": \"^1.1.0\",\n \"typia\": \"^7.0.2\"\n }\n}"
|
71
71
|
},
|
72
72
|
{
|
73
73
|
"location": "packages/api",
|
@@ -27,7 +27,7 @@ export const SDK_TEMPLATE = [
|
|
27
27
|
{
|
28
28
|
"location": "",
|
29
29
|
"file": "package.json",
|
30
|
-
"content": "{\
|
30
|
+
"content": "{\n \"name\": \"@ORGANIZATION/PROJECT-api\",\n \"version\": \"0.1.0\",\n \"description\": \"SDK library generated by Nestia\",\n \"main\": \"lib/index.js\",\n \"module\": \"lib/index.mjs\",\n \"typings\": \"lib/index.d.ts\",\n \"scripts\": {\n \"build\": \"rimraf lib && tsc && rollup -c\",\n \"build:test\": \"rimraf bin && tsc --project test/tsconfig.json\",\n \"deploy\": \"npm run build && npm publish\",\n \"dev\": \"npm run build:test -- --watch\",\n \"hello\": \"node hello\",\n \"prepare\": \"ts-patch install && typia patch\",\n \"start\": \"ts-node test/start.ts\",\n \"swagger\": \"ts-node test/swagger.ts\",\n \"test\": \"ts-node test/index.ts\",\n \"test:simulate\": \"ts-node test/index.ts --simulate true\",\n \"test:manual\": \"ts-node test/manual.ts\"\n },\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/samchon/nestia\"\n },\n \"author\": \"Jeongho Nam\",\n \"license\": \"MIT\",\n \"bugs\": {\n \"url\": \"https://github.com/samchon/nestia/issues\"\n },\n \"homepage\": \"https://nestia.io\",\n \"files\": [\n \"lib\",\n \"swagger.json\",\n \"package.json\",\n \"README.md\"\n ],\n \"dependencies\": {\n \"@nestia/fetcher\": \"^4.0.5-dev.20241208-3\",\n \"tgrid\": \"^1.1.0\",\n \"typia\": \"^7.0.2\"\n },\n \"devDependencies\": {\n \"@nestia/e2e\": \"^0.7.0\",\n \"@rollup/plugin-terser\": \"^0.4.4\",\n \"@rollup/plugin-typescript\": \"^11.1.6\",\n \"@trivago/prettier-plugin-sort-imports\": \"^4.3.0\",\n \"@types/express\": \"^4.17.21\",\n \"@types/inquirer\": \"8.2.5\",\n \"@types/swagger-ui-express\": \"^4.1.6\",\n \"chalk\": \"4.1.2\",\n \"commander\": \"^10.0.0\",\n \"express\": \"^4.19.2\",\n \"inquirer\": \"8.2.5\",\n \"prettier\": \"^3.2.5\",\n \"rimraf\": \"^5.0.5\",\n \"rollup\": \"^4.13.2\",\n \"swagger-ui-express\": \"^5.0.0\",\n \"ts-node\": \"^10.9.2\",\n \"ts-patch\": \"^3.3.0\",\n \"typescript\": \"~5.7.2\",\n \"typescript-transform-paths\": \"^3.5.2\"\n }\n}"
|
31
31
|
},
|
32
32
|
{
|
33
33
|
"location": "",
|
@@ -0,0 +1,125 @@
|
|
1
|
+
const { version } = require("../../../../package.json");
|
2
|
+
const cp = require("child_process");
|
3
|
+
const fs = require("fs");
|
4
|
+
|
5
|
+
const ROOT = `${__dirname}/../..`;
|
6
|
+
const ASSETS = `${ROOT}/assets`;
|
7
|
+
|
8
|
+
const update = (content) => {
|
9
|
+
const parsed = JSON.parse(content);
|
10
|
+
for (const record of [
|
11
|
+
parsed.dependencies ?? {},
|
12
|
+
parsed.devDependencies ?? {},
|
13
|
+
])
|
14
|
+
for (const key of Object.keys(record))
|
15
|
+
if (
|
16
|
+
key === "@nestia/core" ||
|
17
|
+
key === "@nestia/fetcher" ||
|
18
|
+
key === "@nestia/sdk"
|
19
|
+
)
|
20
|
+
record[key] = `^${version}`;
|
21
|
+
return JSON.stringify(parsed, null, 2);
|
22
|
+
};
|
23
|
+
|
24
|
+
const bundle = async ({ mode, repository, exceptions, transform }) => {
|
25
|
+
const root = `${__dirname}/../..`;
|
26
|
+
const assets = `${root}/assets`;
|
27
|
+
const template = `${assets}/${mode}`;
|
28
|
+
|
29
|
+
const clone = async () => {
|
30
|
+
// CLONE REPOSITORY
|
31
|
+
if (fs.existsSync(template))
|
32
|
+
await fs.promises.rm(template, { recursive: true });
|
33
|
+
else
|
34
|
+
try {
|
35
|
+
await fs.promises.mkdir(ASSETS);
|
36
|
+
} catch {}
|
37
|
+
|
38
|
+
cp.execSync(`git clone https://github.com/samchon/${repository} ${mode}`, {
|
39
|
+
cwd: ASSETS,
|
40
|
+
});
|
41
|
+
|
42
|
+
// REMOVE VUNLERABLE FILES
|
43
|
+
for (const location of exceptions ?? [])
|
44
|
+
await fs.promises.rm(`${template}/${location}`, { recursive: true });
|
45
|
+
};
|
46
|
+
|
47
|
+
const iterate = (collection) => async (location) => {
|
48
|
+
const directory = await fs.promises.readdir(location);
|
49
|
+
for (const file of directory) {
|
50
|
+
const absolute = location + "/" + file;
|
51
|
+
const stats = await fs.promises.stat(absolute);
|
52
|
+
if (stats.isDirectory()) await iterate(collection)(absolute);
|
53
|
+
else {
|
54
|
+
const content = await fs.promises.readFile(absolute, "utf-8");
|
55
|
+
collection.push({
|
56
|
+
location: (() => {
|
57
|
+
const str = location.replace(template, "");
|
58
|
+
return str[0] === "/" ? str.substring(1) : str;
|
59
|
+
})(),
|
60
|
+
file,
|
61
|
+
content,
|
62
|
+
});
|
63
|
+
}
|
64
|
+
}
|
65
|
+
};
|
66
|
+
|
67
|
+
const archive = async (collection) => {
|
68
|
+
const name = `${mode.toUpperCase()}_TEMPLATE`;
|
69
|
+
const body = JSON.stringify(collection, null, 2);
|
70
|
+
const content = `export const ${name} = ${body}`;
|
71
|
+
|
72
|
+
try {
|
73
|
+
await fs.promises.mkdir(`${ROOT}/src/bundles`);
|
74
|
+
} catch {}
|
75
|
+
await fs.promises.writeFile(
|
76
|
+
`${ROOT}/src/bundles/${name}.ts`,
|
77
|
+
content,
|
78
|
+
"utf8",
|
79
|
+
);
|
80
|
+
};
|
81
|
+
|
82
|
+
const collection = [];
|
83
|
+
await clone();
|
84
|
+
await iterate(collection)(template);
|
85
|
+
if (transform) for (const it of collection) transform(it);
|
86
|
+
await archive(collection);
|
87
|
+
};
|
88
|
+
|
89
|
+
const main = async () => {
|
90
|
+
await bundle({
|
91
|
+
mode: "nest",
|
92
|
+
repository: "nestia-start",
|
93
|
+
exceptions: [
|
94
|
+
".git",
|
95
|
+
".github/dependabot.yml",
|
96
|
+
"src/api/functional",
|
97
|
+
"src/controllers",
|
98
|
+
"src/MyModule.ts",
|
99
|
+
"src/providers",
|
100
|
+
"test/features",
|
101
|
+
],
|
102
|
+
transform: (it) => {
|
103
|
+
if (it.file === "package.json") it.content = update(it.content);
|
104
|
+
},
|
105
|
+
});
|
106
|
+
await bundle({
|
107
|
+
mode: "sdk",
|
108
|
+
repository: "nestia-sdk-template",
|
109
|
+
exceptions: [
|
110
|
+
".git",
|
111
|
+
".github/dependabot.yml",
|
112
|
+
".github/workflows/build.yml",
|
113
|
+
"src/functional",
|
114
|
+
"src/structures",
|
115
|
+
"test/features",
|
116
|
+
],
|
117
|
+
transform: (it) => {
|
118
|
+
if (it.file === "package.json") it.content = update(it.content);
|
119
|
+
},
|
120
|
+
});
|
121
|
+
};
|
122
|
+
main().catch((exp) => {
|
123
|
+
console.error(exp);
|
124
|
+
process.exit(-1);
|
125
|
+
});
|
@@ -1 +0,0 @@
|
|
1
|
-
export {};
|
package/lib/executable/bundle.js
DELETED
@@ -1,106 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
9
|
-
});
|
10
|
-
};
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
13
|
-
};
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
15
|
-
const child_process_1 = __importDefault(require("child_process"));
|
16
|
-
const fs_1 = __importDefault(require("fs"));
|
17
|
-
const ROOT = `${__dirname}/../..`;
|
18
|
-
const ASSETS = `${ROOT}/assets`;
|
19
|
-
const bundle = (props) => __awaiter(void 0, void 0, void 0, function* () {
|
20
|
-
const root = `${__dirname}/../..`;
|
21
|
-
const assets = `${root}/assets`;
|
22
|
-
const template = `${assets}/${props.mode}`;
|
23
|
-
const clone = () => __awaiter(void 0, void 0, void 0, function* () {
|
24
|
-
var _a;
|
25
|
-
// CLONE REPOSITORY
|
26
|
-
if (fs_1.default.existsSync(template))
|
27
|
-
yield fs_1.default.promises.rm(template, { recursive: true });
|
28
|
-
else
|
29
|
-
try {
|
30
|
-
yield fs_1.default.promises.mkdir(ASSETS);
|
31
|
-
}
|
32
|
-
catch (_b) { }
|
33
|
-
child_process_1.default.execSync(`git clone https://github.com/samchon/${props.repository} ${props.mode}`, {
|
34
|
-
cwd: ASSETS,
|
35
|
-
});
|
36
|
-
// REMOVE VUNLERABLE FILES
|
37
|
-
for (const location of (_a = props.exceptions) !== null && _a !== void 0 ? _a : [])
|
38
|
-
yield fs_1.default.promises.rm(`${template}/${location}`, { recursive: true });
|
39
|
-
});
|
40
|
-
const iterate = (collection) => (location) => __awaiter(void 0, void 0, void 0, function* () {
|
41
|
-
const directory = yield fs_1.default.promises.readdir(location);
|
42
|
-
for (const file of directory) {
|
43
|
-
const absolute = location + "/" + file;
|
44
|
-
const stats = yield fs_1.default.promises.stat(absolute);
|
45
|
-
if (stats.isDirectory())
|
46
|
-
yield iterate(collection)(absolute);
|
47
|
-
else {
|
48
|
-
const content = yield fs_1.default.promises.readFile(absolute, "utf-8");
|
49
|
-
collection.push({
|
50
|
-
location: (() => {
|
51
|
-
const str = location.replace(template, "");
|
52
|
-
return str[0] === "/" ? str.substring(1) : str;
|
53
|
-
})(),
|
54
|
-
file,
|
55
|
-
content,
|
56
|
-
});
|
57
|
-
}
|
58
|
-
}
|
59
|
-
});
|
60
|
-
const archive = (collection) => __awaiter(void 0, void 0, void 0, function* () {
|
61
|
-
const name = `${props.mode.toUpperCase()}_TEMPLATE`;
|
62
|
-
const body = JSON.stringify(collection, null, 2);
|
63
|
-
const content = `export const ${name} = ${body}`;
|
64
|
-
try {
|
65
|
-
yield fs_1.default.promises.mkdir(`${ROOT}/src/bundles`);
|
66
|
-
}
|
67
|
-
catch (_a) { }
|
68
|
-
yield fs_1.default.promises.writeFile(`${ROOT}/src/bundles/${name}.ts`, content, "utf8");
|
69
|
-
});
|
70
|
-
const collection = [];
|
71
|
-
yield clone();
|
72
|
-
yield iterate(collection)(template);
|
73
|
-
yield archive(collection);
|
74
|
-
});
|
75
|
-
const main = () => __awaiter(void 0, void 0, void 0, function* () {
|
76
|
-
yield bundle({
|
77
|
-
mode: "nest",
|
78
|
-
repository: "nestia-start",
|
79
|
-
exceptions: [
|
80
|
-
".git",
|
81
|
-
".github/dependabot.yml",
|
82
|
-
"src/api/functional",
|
83
|
-
"src/controllers",
|
84
|
-
"src/MyModule.ts",
|
85
|
-
"src/providers",
|
86
|
-
"test/features",
|
87
|
-
],
|
88
|
-
});
|
89
|
-
yield bundle({
|
90
|
-
mode: "sdk",
|
91
|
-
repository: "nestia-sdk-template",
|
92
|
-
exceptions: [
|
93
|
-
".git",
|
94
|
-
".github/dependabot.yml",
|
95
|
-
".github/workflows/build.yml",
|
96
|
-
"src/functional",
|
97
|
-
"src/structures",
|
98
|
-
"test/features",
|
99
|
-
],
|
100
|
-
});
|
101
|
-
});
|
102
|
-
main().catch((exp) => {
|
103
|
-
console.error(exp);
|
104
|
-
process.exit(-1);
|
105
|
-
});
|
106
|
-
//# sourceMappingURL=bundle.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../src/executable/bundle.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,kEAA+B;AAC/B,4CAAoB;AAIpB,MAAM,IAAI,GAAW,GAAG,SAAS,QAAQ,CAAC;AAC1C,MAAM,MAAM,GAAW,GAAG,IAAI,SAAS,CAAC;AAExC,MAAM,MAAM,GAAG,CAAO,KAIrB,EAAiB,EAAE;IAClB,MAAM,IAAI,GAAW,GAAG,SAAS,QAAQ,CAAC;IAC1C,MAAM,MAAM,GAAW,GAAG,IAAI,SAAS,CAAC;IACxC,MAAM,QAAQ,GAAW,GAAG,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;IAEnD,MAAM,KAAK,GAAG,GAAS,EAAE;;QACvB,mBAAmB;QACnB,IAAI,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;YACzB,MAAM,YAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;;YAEpD,IAAI,CAAC;gBACH,MAAM,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAClC,CAAC;YAAC,WAAM,CAAC,CAAA,CAAC;QAEZ,uBAAE,CAAC,QAAQ,CACT,wCAAwC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,IAAI,EAAE,EACxE;YACE,GAAG,EAAE,MAAM;SACZ,CACF,CAAC;QAEF,0BAA0B;QAC1B,KAAK,MAAM,QAAQ,IAAI,MAAA,KAAK,CAAC,UAAU,mCAAI,EAAE;YAC3C,MAAM,YAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,QAAQ,IAAI,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzE,CAAC,CAAA,CAAC;IAEF,MAAM,OAAO,GACX,CAAC,UAA8B,EAAE,EAAE,CAAC,CAAO,QAAgB,EAAE,EAAE;QAC7D,MAAM,SAAS,GAAa,MAAM,YAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAChE,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAW,QAAQ,GAAG,GAAG,GAAG,IAAI,CAAC;YAC/C,MAAM,KAAK,GAAa,MAAM,YAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACzD,IAAI,KAAK,CAAC,WAAW,EAAE;gBAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC;iBACxD,CAAC;gBACJ,MAAM,OAAO,GAAW,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACtE,UAAU,CAAC,IAAI,CAAC;oBACd,QAAQ,EAAE,CAAC,GAAG,EAAE;wBACd,MAAM,GAAG,GAAW,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;wBACnD,OAAO,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oBACjD,CAAC,CAAC,EAAE;oBACJ,IAAI;oBACJ,OAAO;iBACR,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC,CAAA,CAAC;IAEJ,MAAM,OAAO,GAAG,CAAO,UAA8B,EAAiB,EAAE;QACtE,MAAM,IAAI,GAAW,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC;QAC5D,MAAM,IAAI,GAAW,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACzD,MAAM,OAAO,GAAW,gBAAgB,IAAI,MAAM,IAAI,EAAE,CAAC;QAEzD,IAAI,CAAC;YACH,MAAM,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,IAAI,cAAc,CAAC,CAAC;QACjD,CAAC;QAAC,WAAM,CAAC,CAAA,CAAC;QACV,MAAM,YAAE,CAAC,QAAQ,CAAC,SAAS,CACzB,GAAG,IAAI,gBAAgB,IAAI,KAAK,EAChC,OAAO,EACP,MAAM,CACP,CAAC;IACJ,CAAC,CAAA,CAAC;IAEF,MAAM,UAAU,GAAuB,EAAE,CAAC;IAC1C,MAAM,KAAK,EAAE,CAAC;IACd,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC;IACpC,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;AAC5B,CAAC,CAAA,CAAC;AAEF,MAAM,IAAI,GAAG,GAAwB,EAAE;IACrC,MAAM,MAAM,CAAC;QACX,IAAI,EAAE,MAAM;QACZ,UAAU,EAAE,cAAc;QAC1B,UAAU,EAAE;YACV,MAAM;YACN,wBAAwB;YACxB,oBAAoB;YACpB,iBAAiB;YACjB,iBAAiB;YACjB,eAAe;YACf,eAAe;SAChB;KACF,CAAC,CAAC;IACH,MAAM,MAAM,CAAC;QACX,IAAI,EAAE,KAAK;QACX,UAAU,EAAE,qBAAqB;QACjC,UAAU,EAAE;YACV,MAAM;YACN,wBAAwB;YACxB,6BAA6B;YAC7B,gBAAgB;YAChB,gBAAgB;YAChB,eAAe;SAChB;KACF,CAAC,CAAC;AACL,CAAC,CAAA,CAAC;AACF,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC,CAAC,CAAC"}
|
package/src/executable/bundle.ts
DELETED
@@ -1,111 +0,0 @@
|
|
1
|
-
import cp from "child_process";
|
2
|
-
import fs from "fs";
|
3
|
-
|
4
|
-
import { IHttpMigrateFile } from "../structures/IHttpMigrateFile";
|
5
|
-
|
6
|
-
const ROOT: string = `${__dirname}/../..`;
|
7
|
-
const ASSETS: string = `${ROOT}/assets`;
|
8
|
-
|
9
|
-
const bundle = async (props: {
|
10
|
-
mode: "nest" | "sdk";
|
11
|
-
repository: string;
|
12
|
-
exceptions?: string[];
|
13
|
-
}): Promise<void> => {
|
14
|
-
const root: string = `${__dirname}/../..`;
|
15
|
-
const assets: string = `${root}/assets`;
|
16
|
-
const template: string = `${assets}/${props.mode}`;
|
17
|
-
|
18
|
-
const clone = async () => {
|
19
|
-
// CLONE REPOSITORY
|
20
|
-
if (fs.existsSync(template))
|
21
|
-
await fs.promises.rm(template, { recursive: true });
|
22
|
-
else
|
23
|
-
try {
|
24
|
-
await fs.promises.mkdir(ASSETS);
|
25
|
-
} catch {}
|
26
|
-
|
27
|
-
cp.execSync(
|
28
|
-
`git clone https://github.com/samchon/${props.repository} ${props.mode}`,
|
29
|
-
{
|
30
|
-
cwd: ASSETS,
|
31
|
-
},
|
32
|
-
);
|
33
|
-
|
34
|
-
// REMOVE VUNLERABLE FILES
|
35
|
-
for (const location of props.exceptions ?? [])
|
36
|
-
await fs.promises.rm(`${template}/${location}`, { recursive: true });
|
37
|
-
};
|
38
|
-
|
39
|
-
const iterate =
|
40
|
-
(collection: IHttpMigrateFile[]) => async (location: string) => {
|
41
|
-
const directory: string[] = await fs.promises.readdir(location);
|
42
|
-
for (const file of directory) {
|
43
|
-
const absolute: string = location + "/" + file;
|
44
|
-
const stats: fs.Stats = await fs.promises.stat(absolute);
|
45
|
-
if (stats.isDirectory()) await iterate(collection)(absolute);
|
46
|
-
else {
|
47
|
-
const content: string = await fs.promises.readFile(absolute, "utf-8");
|
48
|
-
collection.push({
|
49
|
-
location: (() => {
|
50
|
-
const str: string = location.replace(template, "");
|
51
|
-
return str[0] === "/" ? str.substring(1) : str;
|
52
|
-
})(),
|
53
|
-
file,
|
54
|
-
content,
|
55
|
-
});
|
56
|
-
}
|
57
|
-
}
|
58
|
-
};
|
59
|
-
|
60
|
-
const archive = async (collection: IHttpMigrateFile[]): Promise<void> => {
|
61
|
-
const name: string = `${props.mode.toUpperCase()}_TEMPLATE`;
|
62
|
-
const body: string = JSON.stringify(collection, null, 2);
|
63
|
-
const content: string = `export const ${name} = ${body}`;
|
64
|
-
|
65
|
-
try {
|
66
|
-
await fs.promises.mkdir(`${ROOT}/src/bundles`);
|
67
|
-
} catch {}
|
68
|
-
await fs.promises.writeFile(
|
69
|
-
`${ROOT}/src/bundles/${name}.ts`,
|
70
|
-
content,
|
71
|
-
"utf8",
|
72
|
-
);
|
73
|
-
};
|
74
|
-
|
75
|
-
const collection: IHttpMigrateFile[] = [];
|
76
|
-
await clone();
|
77
|
-
await iterate(collection)(template);
|
78
|
-
await archive(collection);
|
79
|
-
};
|
80
|
-
|
81
|
-
const main = async (): Promise<void> => {
|
82
|
-
await bundle({
|
83
|
-
mode: "nest",
|
84
|
-
repository: "nestia-start",
|
85
|
-
exceptions: [
|
86
|
-
".git",
|
87
|
-
".github/dependabot.yml",
|
88
|
-
"src/api/functional",
|
89
|
-
"src/controllers",
|
90
|
-
"src/MyModule.ts",
|
91
|
-
"src/providers",
|
92
|
-
"test/features",
|
93
|
-
],
|
94
|
-
});
|
95
|
-
await bundle({
|
96
|
-
mode: "sdk",
|
97
|
-
repository: "nestia-sdk-template",
|
98
|
-
exceptions: [
|
99
|
-
".git",
|
100
|
-
".github/dependabot.yml",
|
101
|
-
".github/workflows/build.yml",
|
102
|
-
"src/functional",
|
103
|
-
"src/structures",
|
104
|
-
"test/features",
|
105
|
-
],
|
106
|
-
});
|
107
|
-
};
|
108
|
-
main().catch((exp) => {
|
109
|
-
console.error(exp);
|
110
|
-
process.exit(-1);
|
111
|
-
});
|