@nestia/migrate 6.0.3 → 6.0.5
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/lib/MigrateApplication.d.ts +4 -0
- package/lib/MigrateApplication.js +9 -2
- package/lib/MigrateApplication.js.map +1 -1
- package/lib/bundles/NEST_TEMPLATE.js +3 -3
- package/lib/bundles/NEST_TEMPLATE.js.map +1 -1
- package/lib/bundles/SDK_TEMPLATE.js +1 -1
- package/lib/index.mjs +26 -20
- package/lib/index.mjs.map +1 -1
- package/lib/internal/MigrateCommander.d.ts +1 -0
- package/lib/internal/MigrateCommander.js +10 -2
- package/lib/internal/MigrateCommander.js.map +1 -1
- package/lib/programmers/MigrateApiFileProgrammer.js +2 -0
- package/lib/programmers/MigrateApiFileProgrammer.js.map +1 -1
- package/lib/programmers/MigrateApiFunctionProgrammer.js +9 -6
- package/lib/programmers/MigrateApiFunctionProgrammer.js.map +1 -1
- package/lib/programmers/MigrateApiProgrammer.js +2 -1
- package/lib/programmers/MigrateApiProgrammer.js.map +1 -1
- package/lib/programmers/MigrateNestControllerProgrammer.d.ts +2 -1
- package/lib/programmers/MigrateNestControllerProgrammer.js +7 -2
- package/lib/programmers/MigrateNestControllerProgrammer.js.map +1 -1
- package/lib/programmers/MigrateNestMethodProgrammer.d.ts +2 -1
- package/lib/programmers/MigrateNestMethodProgrammer.js +9 -6
- package/lib/programmers/MigrateNestMethodProgrammer.js.map +1 -1
- package/lib/programmers/MigrateNestProgrammer.js +2 -1
- package/lib/programmers/MigrateNestProgrammer.js.map +1 -1
- package/lib/programmers/MigrateSchemaProgrammer.js +10 -3
- package/lib/programmers/MigrateSchemaProgrammer.js.map +1 -1
- package/lib/structures/IHttpMigrateProgram.d.ts +8 -0
- package/lib/utils/FilePrinter.js +3 -1
- package/lib/utils/FilePrinter.js.map +1 -1
- package/package.json +11 -10
- package/src/MigrateApplication.ts +19 -2
- package/src/bundles/NEST_TEMPLATE.ts +3 -3
- package/src/bundles/SDK_TEMPLATE.ts +1 -1
- package/src/internal/MigrateCommander.ts +9 -1
- package/src/programmers/MigrateApiFileProgrammer.ts +2 -0
- package/src/programmers/MigrateApiFunctionProgrammer.ts +10 -7
- package/src/programmers/MigrateApiProgrammer.ts +2 -1
- package/src/programmers/MigrateNestControllerProgrammer.ts +10 -3
- package/src/programmers/MigrateNestMethodProgrammer.ts +10 -6
- package/src/programmers/MigrateNestProgrammer.ts +2 -1
- package/src/programmers/MigrateSchemaProgrammer.ts +11 -6
- package/src/structures/IHttpMigrateProgram.ts +8 -0
- package/src/utils/FilePrinter.ts +3 -1
@@ -7938,11 +7938,15 @@ class MigrateApplication {
|
|
7938
7938
|
document: this.document,
|
7939
7939
|
simulate: config.simulate,
|
7940
7940
|
e2e: config.e2e,
|
7941
|
+
author: config.author,
|
7941
7942
|
});
|
7942
7943
|
const output = {
|
7943
7944
|
program,
|
7944
7945
|
files: [
|
7945
|
-
...NEST_TEMPLATE_1.NEST_TEMPLATE
|
7946
|
+
...NEST_TEMPLATE_1.NEST_TEMPLATE.filter((f) => f.location.startsWith("src/api/structures") === false &&
|
7947
|
+
f.location.startsWith("src/api/functional") === false &&
|
7948
|
+
f.location.startsWith("src/api/controllers") === false &&
|
7949
|
+
f.location.startsWith("test/features") === false),
|
7946
7950
|
...MigrateNestProgrammer_1.MigrateNestProgrammer.write(program),
|
7947
7951
|
...MigrateApiProgrammer_1.MigrateApiProgrammer.write(program),
|
7948
7952
|
...(config.e2e ? MigrateE2eProgrammer_1.MigrateE2eProgrammer.write(program) : []),
|
@@ -7957,11 +7961,14 @@ class MigrateApplication {
|
|
7957
7961
|
document: this.document,
|
7958
7962
|
simulate: config.simulate,
|
7959
7963
|
e2e: config.e2e,
|
7964
|
+
author: config.author,
|
7960
7965
|
});
|
7961
7966
|
const output = {
|
7962
7967
|
program,
|
7963
7968
|
files: [
|
7964
|
-
...SDK_TEMPLATE_1.SDK_TEMPLATE
|
7969
|
+
...SDK_TEMPLATE_1.SDK_TEMPLATE.filter((f) => f.location.startsWith("src/structures") === false &&
|
7970
|
+
f.location.startsWith("src/functional") === false &&
|
7971
|
+
f.location.startsWith("test/features") === false),
|
7965
7972
|
...MigrateApiProgrammer_1.MigrateApiProgrammer.write(program),
|
7966
7973
|
MigrateApiStartProgrammer_1.MigrateApiStartProgrammer.write(program),
|
7967
7974
|
...(config.e2e ? MigrateE2eProgrammer_1.MigrateE2eProgrammer.write(program) : []),
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"MigrateApplication.js","sourceRoot":"","sources":["../src/MigrateApplication.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAA8E;AAC9E,kDAA2C;AAE3C,uFAAoF;AACpF,2DAAwD;AACxD,yDAAsD;AACtD,6EAA0E;AAC1E,uFAAoF;AACpF,6EAA0E;AAC1E,+EAA4E;AAI5E,MAAa,kBAAkB;IAC7B,YAAoC,QAA2B;QAA3B,aAAQ,GAAR,QAAQ,CAAmB;IAAG,CAAC;IAE5D,MAAM,CAAC,MAAM,CAClB,QAIqB;QAErB,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
|
1
|
+
{"version":3,"file":"MigrateApplication.js","sourceRoot":"","sources":["../src/MigrateApplication.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAA8E;AAC9E,kDAA2C;AAE3C,uFAAoF;AACpF,2DAAwD;AACxD,yDAAsD;AACtD,6EAA0E;AAC1E,uFAAoF;AACpF,6EAA0E;AAC1E,+EAA4E;AAI5E,MAAa,kBAAkB;IAC7B,YAAoC,QAA2B;QAA3B,aAAQ,GAAR,QAAQ,CAAmB;IAAG,CAAC;IAE5D,MAAM,CAAC,MAAM,CAClB,QAIqB;QAErB,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
|
@@ -50,7 +50,7 @@ exports.NEST_TEMPLATE = [
|
|
50
50
|
{
|
51
51
|
"location": "",
|
52
52
|
"file": "README.md",
|
53
|
-
"content": "# Nestia Template\n## Outline\n[](https://github.com/samchon/nestia-start/actions?query=workflow%3Abuild)\n\nA template repository for backend projects using [nestia](https://github.com/samchon/nestia).\n\nYou can create a new project from this boilerplate by running below command:\n\n```bash\nnpx nestia start <directory>\n```\n\nFor reference, this is a minimal boilerplate project concentrating only on [nestia](https://github.com/samchon/nestia) SDK generation. \n\nIf you wanna much detailed boilerplate project, visit [`@samchon/backend`](https://github.com/samchon/backend).\n\n\n\n\n## Directories and Files\nThis template project has categorized directories like below.\n\nAs you can see from the below, all of the Backend source files are placed into the [src](src/) directory. When you build the TypeScript source files, compiled files would be placed into the `lib` directory following the [tsconfig.json](tsconfig.json) configuration. Otherwise you build client [SDK](#32-sdk) library for npm publishing and their compiled files would be placed into the [packages](packages) directory.\n\n - [packages/api/](packages/api): SDK module built by `npm run build:api`\n - [src/](src): Backend source directory\n - [src/api/](src/api/): Client SDK that would be published to the `@ORGANIZATION/PROJECT-api`\n - [**src/api/functional/**](src/api/functional/): API functions generated by the [`nestia`](https://github.com/samchon/nestia)\n - [**src/api/structures/**](src/api/structures/): DTO structures\n - [src/controllers/](src/controllers/): Controller classes of the Main Program\n - [**test/**](test): Test Automation Program\n - [nestia.config.ts](nestia.config.ts): Configuration file of [`nestia`](https://github.com/samchon/nestia)\n - [package.json](package.json): NPM configuration\n - [tsconfig.json](tsconfig.json): TypeScript configuration for the main program\n
|
53
|
+
"content": "# Nestia Template\n## Outline\n[](https://github.com/samchon/nestia-start/actions?query=workflow%3Abuild)\n\nA template repository for backend projects using [nestia](https://github.com/samchon/nestia).\n\nYou can create a new project from this boilerplate by running below command:\n\n```bash\nnpx nestia start <directory>\n```\n\nFor reference, this is a minimal boilerplate project concentrating only on [nestia](https://github.com/samchon/nestia) SDK generation. \n\nIf you wanna much detailed boilerplate project, visit [`@samchon/backend`](https://github.com/samchon/backend).\n\n\n\n\n## Directories and Files\nThis template project has categorized directories like below.\n\nAs you can see from the below, all of the Backend source files are placed into the [src](src/) directory. When you build the TypeScript source files, compiled files would be placed into the `lib` directory following the [tsconfig.json](tsconfig.json) configuration. Otherwise you build client [SDK](#32-sdk) library for npm publishing and their compiled files would be placed into the [packages](packages) directory.\n\n - [packages/api/](packages/api): SDK module built by `npm run build:api`\n - [src/](src): Backend source directory\n - [src/api/](src/api/): Client SDK that would be published to the `@ORGANIZATION/PROJECT-api`\n - [**src/api/functional/**](src/api/functional/): API functions generated by the [`nestia`](https://github.com/samchon/nestia)\n - [**src/api/structures/**](src/api/structures/): DTO structures\n - [src/controllers/](src/controllers/): Controller classes of the Main Program\n - [**test/**](test): Test Automation Program\n - [nestia.config.ts](nestia.config.ts): Configuration file of [`nestia`](https://github.com/samchon/nestia)\n - [package.json](package.json): NPM configuration\n - [tsconfig.json](tsconfig.json): TypeScript configuration for the main program\n\n\n\n\n## NPM Run Commands\nList of the run commands defined in the [package.json](package.json) are like below:\n\n - Test\n - **`test`**: Run test automation program\n - `benchmark`: Run performance benchmark program\n - Build\n - `build`: Build everything\n - `build:main`: Build main program (`src` directory)\n - `build:test` Build test automation program (`test` directory)\n - `build:sdk`: Build SDK into main program only\n - `build:swagger`: Build Swagger Documents\n - **`dev`**: Incremental build for development (test program)\n - Deploy\n - `package:api`: Build and deploy the SDK library to the NPM\n - `start`: Start the backend server\n - `start:dev`: Start the backend server with incremental build and reload\n - Webpack\n - `webpack`: Run webpack bundler\n - `webpack:start`: Start the backend server built by webpack\n - `webpack:test`: Run test program to the webpack built\n\n\n\n\n## Specialization\nTransform this template project to be yours.\n\nWhen you've created a new backend project through this template project, you can specialize it to be suitable for you by changing some words. Replace below words through IDE specific function like `Edit > Replace in Files` (*Ctrl + Shift + H*), who've been supported by the VSCode.\n\n| Before | After\n|-----------------|----------------------------------------\n| ORGANIZATION | Your account or corporation name\n| PROJECT | Your own project name\n| AUTHOR | Author name\n| https://github.com/samchon/nestia-start | Your repository URL\n\n\n\n\n## Test Driven Development\nWith [nestia](https://github.com/samchon/nestia) helps to accomplish TDD (Test Driven Development). \n\nJust define DTOs and API controllers' methods (only declarations) first. After the definitions, and build SDK (Software Development Kit) through [nestia](https://github.com/samchon/nestia) (`npm run build:sdk`). After buildling those SDK, develop test automation program using the SDK, following use-case scenarios in the framework of client side.\n\nDuring the test automation program development, you can find that which API is miss-designed or which requirement analysis is not exact. Development of the main program must be the last step after such validation process during TDD.\n\n> Visit the [samchon/backend](https://github.com/samchon/backend), then you may find much detailed story about this TDD.\n>\n> 1. Definitions\n> 2. SDK\n> 3. Test Automation Program\n> 4. Main Program\n\n```typescript\nimport {\n ArrayUtil,\n GaffComparator,\n RandomGenerator,\n TestValidator,\n} from \"@nestia/e2e\";\n\nimport api from \"@ORGANIZATION/PROJECT-api/lib/index\";\nimport { IBbsArticle } from \"@ORGANIZATION/PROJECT-api/lib/structures/bbs/IBbsArticle\";\nimport { IPage } from \"@ORGANIZATION/PROJECT-api/lib/structures/common/IPage\";\n\nexport async function test_api_bbs_article_index_sort(\n connection: api.IConnection,\n): Promise<void> {\n // GENERATE 100 ARTICLES\n const section: string = \"general\";\n await ArrayUtil.asyncRepeat(100)(() =>\n api.functional.bbs.articles.create(connection, section, {\n writer: RandomGenerator.name(),\n title: RandomGenerator.paragraph(5)(),\n body: RandomGenerator.content(8)()(),\n format: \"txt\",\n files: [],\n password: RandomGenerator.alphabets(8),\n }),\n );\n\n // PREPARE VALIDATOR\n const validator = TestValidator.sort(\"BbsArticleProvider.index()\")(async (\n sort: IPage.Sort<IBbsArticle.IRequest.SortableColumns>,\n ) => {\n const page: IPage<IBbsArticle.ISummary> =\n await api.functional.bbs.articles.index(connection, section, {\n limit: 100,\n sort,\n });\n return page.data;\n });\n\n // DO VALIDATE\n const components = [\n validator(\"created_at\")(GaffComparator.dates((x) => x.created_at)),\n validator(\"updated_at\")(GaffComparator.dates((x) => x.updated_at)),\n validator(\"title\")(GaffComparator.strings((x) => x.title)),\n validator(\"writer\")(GaffComparator.strings((x) => x.writer)),\n validator(\n \"writer\",\n \"title\",\n )(GaffComparator.strings((x) => [x.writer, x.title])),\n ];\n for (const comp of components) {\n await comp(\"+\", false);\n await comp(\"-\", false);\n }\n}\n```\n\nFor reference, if you run `npm run benchmark` command, your test functions defined in the [test/features/api](test/features/api) directory would be utilized for performance benchmarking. If you want to see the performance bench result earlier, visit below link please:\n\n - [docs/benchmarks/AMD Ryzen 9 7940HS w Radeon 780M Graphics.md](https://github.com/samchon/nestia-start/blob/master/docs/benchmarks/AMD%20Ryzen%209%207940HS%20w%20Radeon%20780M%20Graphics.md)"
|
54
54
|
},
|
55
55
|
{
|
56
56
|
"location": "build",
|
@@ -75,7 +75,7 @@ exports.NEST_TEMPLATE = [
|
|
75
75
|
{
|
76
76
|
"location": "",
|
77
77
|
"file": "package.json",
|
78
|
-
"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 && ts-node build/env.ts\",\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:dev\": \"nest start --watch\",\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\": \"^6.0.
|
78
|
+
"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 && ts-node build/env.ts\",\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:dev\": \"nest start --watch\",\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\": \"^6.0.4\",\n \"@nestia/e2e\": \"^6.0.4\",\n \"@nestia/sdk\": \"^6.0.5\",\n \"@nestjs/cli\": \"^11.0.7\",\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\": \"^7.0.0\",\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.8.3\",\n \"typescript-transform-paths\": \"^3.5.5\",\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\": \"^6.0.5\",\n \"@nestia/fetcher\": \"^6.0.5\",\n \"@nestjs/common\": \"^11.1.1\",\n \"@nestjs/core\": \"^11.1.1\",\n \"@nestjs/platform-express\": \"^11.1.1\",\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.1.0\",\n \"tstl\": \"^3.0.0\",\n \"typia\": \"^9.3.1\",\n \"uuid\": \"^9.0.0\"\n },\n \"stackblitz\": {\n \"startCommand\": \"npm run prepare && npm run build:test && npm run test -- --simultaneous 1\"\n }\n}"
|
79
79
|
},
|
80
80
|
{
|
81
81
|
"location": "packages/api",
|
@@ -95,7 +95,7 @@ exports.NEST_TEMPLATE = [
|
|
95
95
|
{
|
96
96
|
"location": "packages/api",
|
97
97
|
"file": "package.json",
|
98
|
-
"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\": \"^6.0.
|
98
|
+
"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\": \"^6.0.5\",\n \"tgrid\": \"^1.1.0\",\n \"typia\": \"^9.3.1\"\n }\n}"
|
99
99
|
},
|
100
100
|
{
|
101
101
|
"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,YAAY;QACpB,SAAS,EAAE,gBAAgB;KAC5B;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,wmCAAwmC;KACpnC;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,MAAM,EAAE,WAAW;QACnB,SAAS,EAAE,wvBAAwvB;KACpwB;IACD;QACE,UAAU,EAAE,mBAAmB;QAC/B,MAAM,EAAE,WAAW;QACnB,SAAS,EAAE,oQAAoQ;KAChR;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,uGAAuG;KACnH;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,iBAAiB;QACzB,SAAS,EAAE,mHAAmH;KAC/H;IACD;QACE,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,aAAa;QACrB,SAAS,EAAE,6mCAA6mC;KACznC;IACD;QACE,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,mQAAmQ;KAC/Q;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,ukCAAukC;KACnlC;IACD;QACE,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,WAAW;QACnB,SAAS,EAAE,
|
1
|
+
{"version":3,"file":"NEST_TEMPLATE.js","sourceRoot":"","sources":["../../src/bundles/NEST_TEMPLATE.ts"],"names":[],"mappings":"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"}
|
@@ -35,7 +35,7 @@ exports.SDK_TEMPLATE = [
|
|
35
35
|
{
|
36
36
|
"location": "",
|
37
37
|
"file": "package.json",
|
38
|
-
"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\": \"^6.0.
|
38
|
+
"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\": \"^6.0.5\",\n \"tgrid\": \"^1.1.0\",\n \"typia\": \"^9.3.1\"\n },\n \"devDependencies\": {\n \"@nestia/e2e\": \"^6.0.4\",\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.8.3\",\n \"typescript-transform-paths\": \"^3.5.5\"\n }\n}"
|
39
39
|
},
|
40
40
|
{
|
41
41
|
"location": "",
|
package/lib/index.mjs
CHANGED
@@ -76,7 +76,7 @@ const NEST_TEMPLATE = [ {
|
|
76
76
|
}, {
|
77
77
|
location: "",
|
78
78
|
file: "README.md",
|
79
|
-
content: '# Nestia Template\n## Outline\n[](https://github.com/samchon/nestia-start/actions?query=workflow%3Abuild)\n\nA template repository for backend projects using [nestia](https://github.com/samchon/nestia).\n\nYou can create a new project from this boilerplate by running below command:\n\n```bash\nnpx nestia start <directory>\n```\n\nFor reference, this is a minimal boilerplate project concentrating only on [nestia](https://github.com/samchon/nestia) SDK generation. \n\nIf you wanna much detailed boilerplate project, visit [`@samchon/backend`](https://github.com/samchon/backend).\n\n\n\n\n## Directories and Files\nThis template project has categorized directories like below.\n\nAs you can see from the below, all of the Backend source files are placed into the [src](src/) directory. When you build the TypeScript source files, compiled files would be placed into the `lib` directory following the [tsconfig.json](tsconfig.json) configuration. Otherwise you build client [SDK](#32-sdk) library for npm publishing and their compiled files would be placed into the [packages](packages) directory.\n\n - [packages/api/](packages/api): SDK module built by `npm run build:api`\n - [src/](src): Backend source directory\n - [src/api/](src/api/): Client SDK that would be published to the `@ORGANIZATION/PROJECT-api`\n - [**src/api/functional/**](src/api/functional/): API functions generated by the [`nestia`](https://github.com/samchon/nestia)\n - [**src/api/structures/**](src/api/structures/): DTO structures\n - [src/controllers/](src/controllers/): Controller classes of the Main Program\n - [**test/**](test): Test Automation Program\n - [nestia.config.ts](nestia.config.ts): Configuration file of [`nestia`](https://github.com/samchon/nestia)\n - [package.json](package.json): NPM configuration\n - [tsconfig.json](tsconfig.json): TypeScript configuration for the main program\n
|
79
|
+
content: '# Nestia Template\n## Outline\n[](https://github.com/samchon/nestia-start/actions?query=workflow%3Abuild)\n\nA template repository for backend projects using [nestia](https://github.com/samchon/nestia).\n\nYou can create a new project from this boilerplate by running below command:\n\n```bash\nnpx nestia start <directory>\n```\n\nFor reference, this is a minimal boilerplate project concentrating only on [nestia](https://github.com/samchon/nestia) SDK generation. \n\nIf you wanna much detailed boilerplate project, visit [`@samchon/backend`](https://github.com/samchon/backend).\n\n\n\n\n## Directories and Files\nThis template project has categorized directories like below.\n\nAs you can see from the below, all of the Backend source files are placed into the [src](src/) directory. When you build the TypeScript source files, compiled files would be placed into the `lib` directory following the [tsconfig.json](tsconfig.json) configuration. Otherwise you build client [SDK](#32-sdk) library for npm publishing and their compiled files would be placed into the [packages](packages) directory.\n\n - [packages/api/](packages/api): SDK module built by `npm run build:api`\n - [src/](src): Backend source directory\n - [src/api/](src/api/): Client SDK that would be published to the `@ORGANIZATION/PROJECT-api`\n - [**src/api/functional/**](src/api/functional/): API functions generated by the [`nestia`](https://github.com/samchon/nestia)\n - [**src/api/structures/**](src/api/structures/): DTO structures\n - [src/controllers/](src/controllers/): Controller classes of the Main Program\n - [**test/**](test): Test Automation Program\n - [nestia.config.ts](nestia.config.ts): Configuration file of [`nestia`](https://github.com/samchon/nestia)\n - [package.json](package.json): NPM configuration\n - [tsconfig.json](tsconfig.json): TypeScript configuration for the main program\n\n\n\n\n## NPM Run Commands\nList of the run commands defined in the [package.json](package.json) are like below:\n\n - Test\n - **`test`**: Run test automation program\n - `benchmark`: Run performance benchmark program\n - Build\n - `build`: Build everything\n - `build:main`: Build main program (`src` directory)\n - `build:test` Build test automation program (`test` directory)\n - `build:sdk`: Build SDK into main program only\n - `build:swagger`: Build Swagger Documents\n - **`dev`**: Incremental build for development (test program)\n - Deploy\n - `package:api`: Build and deploy the SDK library to the NPM\n - `start`: Start the backend server\n - `start:dev`: Start the backend server with incremental build and reload\n - Webpack\n - `webpack`: Run webpack bundler\n - `webpack:start`: Start the backend server built by webpack\n - `webpack:test`: Run test program to the webpack built\n\n\n\n\n## Specialization\nTransform this template project to be yours.\n\nWhen you\'ve created a new backend project through this template project, you can specialize it to be suitable for you by changing some words. Replace below words through IDE specific function like `Edit > Replace in Files` (*Ctrl + Shift + H*), who\'ve been supported by the VSCode.\n\n| Before | After\n|-----------------|----------------------------------------\n| ORGANIZATION | Your account or corporation name\n| PROJECT | Your own project name\n| AUTHOR | Author name\n| https://github.com/samchon/nestia-start | Your repository URL\n\n\n\n\n## Test Driven Development\nWith [nestia](https://github.com/samchon/nestia) helps to accomplish TDD (Test Driven Development). \n\nJust define DTOs and API controllers\' methods (only declarations) first. After the definitions, and build SDK (Software Development Kit) through [nestia](https://github.com/samchon/nestia) (`npm run build:sdk`). After buildling those SDK, develop test automation program using the SDK, following use-case scenarios in the framework of client side.\n\nDuring the test automation program development, you can find that which API is miss-designed or which requirement analysis is not exact. Development of the main program must be the last step after such validation process during TDD.\n\n> Visit the [samchon/backend](https://github.com/samchon/backend), then you may find much detailed story about this TDD.\n>\n> 1. Definitions\n> 2. SDK\n> 3. Test Automation Program\n> 4. Main Program\n\n```typescript\nimport {\n ArrayUtil,\n GaffComparator,\n RandomGenerator,\n TestValidator,\n} from "@nestia/e2e";\n\nimport api from "@ORGANIZATION/PROJECT-api/lib/index";\nimport { IBbsArticle } from "@ORGANIZATION/PROJECT-api/lib/structures/bbs/IBbsArticle";\nimport { IPage } from "@ORGANIZATION/PROJECT-api/lib/structures/common/IPage";\n\nexport async function test_api_bbs_article_index_sort(\n connection: api.IConnection,\n): Promise<void> {\n // GENERATE 100 ARTICLES\n const section: string = "general";\n await ArrayUtil.asyncRepeat(100)(() =>\n api.functional.bbs.articles.create(connection, section, {\n writer: RandomGenerator.name(),\n title: RandomGenerator.paragraph(5)(),\n body: RandomGenerator.content(8)()(),\n format: "txt",\n files: [],\n password: RandomGenerator.alphabets(8),\n }),\n );\n\n // PREPARE VALIDATOR\n const validator = TestValidator.sort("BbsArticleProvider.index()")(async (\n sort: IPage.Sort<IBbsArticle.IRequest.SortableColumns>,\n ) => {\n const page: IPage<IBbsArticle.ISummary> =\n await api.functional.bbs.articles.index(connection, section, {\n limit: 100,\n sort,\n });\n return page.data;\n });\n\n // DO VALIDATE\n const components = [\n validator("created_at")(GaffComparator.dates((x) => x.created_at)),\n validator("updated_at")(GaffComparator.dates((x) => x.updated_at)),\n validator("title")(GaffComparator.strings((x) => x.title)),\n validator("writer")(GaffComparator.strings((x) => x.writer)),\n validator(\n "writer",\n "title",\n )(GaffComparator.strings((x) => [x.writer, x.title])),\n ];\n for (const comp of components) {\n await comp("+", false);\n await comp("-", false);\n }\n}\n```\n\nFor reference, if you run `npm run benchmark` command, your test functions defined in the [test/features/api](test/features/api) directory would be utilized for performance benchmarking. If you want to see the performance bench result earlier, visit below link please:\n\n - [docs/benchmarks/AMD Ryzen 9 7940HS w Radeon 780M Graphics.md](https://github.com/samchon/nestia-start/blob/master/docs/benchmarks/AMD%20Ryzen%209%207940HS%20w%20Radeon%20780M%20Graphics.md)'
|
80
80
|
}, {
|
81
81
|
location: "build",
|
82
82
|
file: "env.ts",
|
@@ -96,7 +96,7 @@ const NEST_TEMPLATE = [ {
|
|
96
96
|
}, {
|
97
97
|
location: "",
|
98
98
|
file: "package.json",
|
99
|
-
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 && ts-node build/env.ts",\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:dev": "nest start --watch",\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": "^6.0.
|
99
|
+
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 && ts-node build/env.ts",\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:dev": "nest start --watch",\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": "^6.0.4",\n "@nestia/e2e": "^6.0.4",\n "@nestia/sdk": "^6.0.5",\n "@nestjs/cli": "^11.0.7",\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": "^7.0.0",\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.8.3",\n "typescript-transform-paths": "^3.5.5",\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": "^6.0.5",\n "@nestia/fetcher": "^6.0.5",\n "@nestjs/common": "^11.1.1",\n "@nestjs/core": "^11.1.1",\n "@nestjs/platform-express": "^11.1.1",\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.1.0",\n "tstl": "^3.0.0",\n "typia": "^9.3.1",\n "uuid": "^9.0.0"\n },\n "stackblitz": {\n "startCommand": "npm run prepare && npm run build:test && npm run test -- --simultaneous 1"\n }\n}'
|
100
100
|
}, {
|
101
101
|
location: "packages/api",
|
102
102
|
file: ".gitignore",
|
@@ -112,7 +112,7 @@ const NEST_TEMPLATE = [ {
|
|
112
112
|
}, {
|
113
113
|
location: "packages/api",
|
114
114
|
file: "package.json",
|
115
|
-
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": "^6.0.
|
115
|
+
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": "^6.0.5",\n "tgrid": "^1.1.0",\n "typia": "^9.3.1"\n }\n}'
|
116
116
|
}, {
|
117
117
|
location: "packages/api",
|
118
118
|
file: "rollup.config.js",
|
@@ -258,7 +258,7 @@ const SDK_TEMPLATE = [ {
|
|
258
258
|
}, {
|
259
259
|
location: "",
|
260
260
|
file: "package.json",
|
261
|
-
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": "^6.0.
|
261
|
+
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": "^6.0.5",\n "tgrid": "^1.1.0",\n "typia": "^9.3.1"\n },\n "devDependencies": {\n "@nestia/e2e": "^6.0.4",\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.8.3",\n "typescript-transform-paths": "^3.5.5"\n }\n}'
|
262
262
|
}, {
|
263
263
|
location: "",
|
264
264
|
file: "prettier.config.js",
|
@@ -327,7 +327,9 @@ var FilePrinter;
|
|
327
327
|
};
|
328
328
|
FilePrinter.newLine = () => ts.factory.createExpressionStatement(ts.factory.createIdentifier("\n"));
|
329
329
|
FilePrinter.write = props => {
|
330
|
-
const script = ts.createPrinter(
|
330
|
+
const script = ts.createPrinter({
|
331
|
+
newLine: ts.NewLineKind.LineFeed
|
332
|
+
}).printFile(ts.factory.createSourceFile(props.statements, ts.factory.createToken(ts.SyntaxKind.EndOfFileToken), ts.NodeFlags.None));
|
331
333
|
return (props.top ?? "") + script;
|
332
334
|
};
|
333
335
|
})(FilePrinter || (FilePrinter = {}));
|
@@ -464,7 +466,7 @@ var MigrateSchemaProgrammer;
|
|
464
466
|
return intersection.length === 1 ? intersection[0] : ts.factory.createIntersectionTypeNode(intersection);
|
465
467
|
};
|
466
468
|
const writeObject = components => importer => schema => {
|
467
|
-
const regular = () => ts.factory.createTypeLiteralNode(Object.entries(schema.properties ?? []).map((([key, value]) => writeRegularProperty(components)(importer)(schema.required ?? [])(key, value))));
|
469
|
+
const regular = () => ts.factory.createTypeLiteralNode(Object.entries(schema.properties ?? []).map((([key, value], index) => [ ...index !== 0 ? [ ts.factory.createIdentifier("\n") ] : [], writeRegularProperty(components)(importer)(schema.required ?? [])(key, value) ])).flat());
|
468
470
|
const dynamic = () => ts.factory.createTypeLiteralNode([ writeDynamicProperty(components)(importer)(schema.additionalProperties) ]);
|
469
471
|
return !!schema.properties?.length && typeof schema.additionalProperties === "object" ? ts.factory.createIntersectionTypeNode([ regular(), dynamic() ]) : typeof schema.additionalProperties === "object" ? dynamic() : regular();
|
470
472
|
};
|
@@ -492,13 +494,13 @@ const writePlugin = props => schema => {
|
|
492
494
|
var MigrateApiFunctionProgrammer;
|
493
495
|
|
494
496
|
(function(MigrateApiFunctionProgrammer) {
|
495
|
-
MigrateApiFunctionProgrammer.write = config => components => importer => route => FilePrinter.description(ts.factory.createFunctionDeclaration([ ts.factory.createModifier(ts.SyntaxKind.ExportKeyword), ts.factory.createModifier(ts.SyntaxKind.AsyncKeyword) ], undefined, route.accessor.at(-1), undefined, MigrateApiFunctionProgrammer.writeParameterDeclarations(components)(importer)(route), ts.factory.createTypeReferenceNode("Promise", [ ts.factory.createTypeReferenceNode(route.success === null ? "void" : `${route.accessor.at(-1)}.Output`) ]), ts.factory.createBlock(writeBody(config)(importer)(route), true)), writeDescription(route));
|
497
|
+
MigrateApiFunctionProgrammer.write = config => components => importer => route => FilePrinter.description(ts.factory.createFunctionDeclaration([ ts.factory.createModifier(ts.SyntaxKind.ExportKeyword), ts.factory.createModifier(ts.SyntaxKind.AsyncKeyword) ], undefined, route.accessor.at(-1), undefined, MigrateApiFunctionProgrammer.writeParameterDeclarations(components)(importer)(route), ts.factory.createTypeReferenceNode("Promise", [ ts.factory.createTypeReferenceNode(route.success === null ? "void" : `${route.accessor.at(-1)}.Output`) ]), ts.factory.createBlock(writeBody(config)(importer)(route), true)), writeDescription(config)(route));
|
496
498
|
MigrateApiFunctionProgrammer.writeParameterDeclarations = components => importer => route => [ IdentifierFactory.parameter("connection", ts.factory.createTypeReferenceNode(importer.external({
|
497
499
|
type: "instance",
|
498
500
|
library: "@nestia/fetcher",
|
499
501
|
name: "IConnection"
|
500
502
|
}), route.headers ? [ ts.factory.createTypeReferenceNode(`${route.accessor.at(-1)}.Headers`) ] : undefined)), ...route.parameters.map((p => IdentifierFactory.parameter(p.key, MigrateSchemaProgrammer.write(components)(importer)(p.schema)))), ...route.query ? [ IdentifierFactory.parameter(route.query.key, ts.factory.createTypeReferenceNode(`${route.accessor.at(-1)}.Query`)) ] : [], ...route.body ? [ IdentifierFactory.parameter(route.body.key, ts.factory.createTypeReferenceNode(`${route.accessor.at(-1)}.Input`), (route.body.type === "application/json" || route.body.type === "text/plain") && route.operation().requestBody?.required === false ? ts.factory.createToken(ts.SyntaxKind.QuestionToken) : undefined) ] : [] ];
|
501
|
-
const writeDescription = route => [ route.comment(), `@path ${route.emendedPath}`, "
|
503
|
+
const writeDescription = config => route => [ route.comment(), `@path ${route.emendedPath}`, `@${config.author?.tag ?? "nestia"} ${config.author?.value ?? "Generated by Nestia - https://github.com/samchon/nestia"}` ].join("\n");
|
502
504
|
const writeBody = config => importer => route => {
|
503
505
|
const encrypted = !!route.success?.["x-nestia-encrypted"];
|
504
506
|
const contentType = route.body?.type ?? "application/json";
|
@@ -694,7 +696,7 @@ var MigrateApiFileProgrammer;
|
|
694
696
|
(function(MigrateApiFileProgrammer) {
|
695
697
|
MigrateApiFileProgrammer.write = config => components => props => {
|
696
698
|
const importer = new MigrateImportProgrammer;
|
697
|
-
const statements = props.routes.map((route => [ MigrateApiFunctionProgrammer.write(config)(components)(importer)(route), MigrateApiNamespaceProgrammer.write(config)(components)(importer)(route) ])).flat();
|
699
|
+
const statements = props.routes.map((route => [ FilePrinter.newLine(), MigrateApiFunctionProgrammer.write(config)(components)(importer)(route), MigrateApiNamespaceProgrammer.write(config)(components)(importer)(route) ])).flat();
|
698
700
|
return [ ...importer.toStatements((ref => `../${"../".repeat(props.namespace.length)}structures/${ref}`)), ...[ ...props.children ].map((child => ts.factory.createExportDeclaration(undefined, false, ts.factory.createNamespaceExport(ts.factory.createIdentifier(child)), ts.factory.createStringLiteral(`./${child}`), undefined))), ...statements ];
|
699
701
|
};
|
700
702
|
})(MigrateApiFileProgrammer || (MigrateApiFileProgrammer = {}));
|
@@ -780,11 +782,12 @@ var MigrateApiProgrammer;
|
|
780
782
|
const iterate = importer => modulo => {
|
781
783
|
const output = [];
|
782
784
|
if (modulo.programmer !== null) output.push(modulo.programmer(importer));
|
783
|
-
if (modulo.children.size) {
|
785
|
+
if (modulo.children.size !== 0) {
|
784
786
|
const internal = [];
|
785
787
|
for (const child of modulo.children.values()) internal.push(...iterate(importer)(child));
|
786
788
|
output.push(ts.factory.createModuleDeclaration([ ts.factory.createModifier(ts.SyntaxKind.ExportKeyword) ], ts.factory.createIdentifier(modulo.name), ts.factory.createModuleBlock(internal), ts.NodeFlags.Namespace));
|
787
789
|
}
|
790
|
+
output.push(FilePrinter.newLine());
|
788
791
|
return output;
|
789
792
|
};
|
790
793
|
})(MigrateApiProgrammer || (MigrateApiProgrammer = {}));
|
@@ -900,16 +903,16 @@ const getSplitIndex = (x, y) => {
|
|
900
903
|
var MigrateNestMethodProgrammer;
|
901
904
|
|
902
905
|
(function(MigrateNestMethodProgrammer) {
|
903
|
-
MigrateNestMethodProgrammer.write = components => importer => controller => route => {
|
906
|
+
MigrateNestMethodProgrammer.write = config => components => importer => controller => route => {
|
904
907
|
const output = route.success ? MigrateSchemaProgrammer.write(components)(importer)(route.success.schema) : TypeFactory.keyword("void");
|
905
908
|
const method = ts.factory.createMethodDeclaration([ ...writeMethodDecorators(components)(importer)(controller)(route), ts.factory.createToken(ts.SyntaxKind.PublicKeyword), ts.factory.createToken(ts.SyntaxKind.AsyncKeyword) ], undefined, route.accessor.at(-1), undefined, undefined, writeParameters(components)(importer)(route), ts.factory.createTypeReferenceNode("Promise", [ output ]), ts.factory.createBlock([ ...[ ...route.parameters.map((p => p.key)), ...route.headers ? [ "headers" ] : [], ...route.query ? [ "query" ] : [], ...route.body ? [ "body" ] : [] ].map((str => ts.factory.createExpressionStatement(ts.factory.createIdentifier(str)))), ts.factory.createReturnStatement(ts.factory.createCallExpression(IdentifierFactory.access(ts.factory.createIdentifier(importer.external({
|
906
909
|
type: "default",
|
907
910
|
library: "typia",
|
908
911
|
name: "typia"
|
909
912
|
})), "random"), [ output ], undefined)) ], true));
|
910
|
-
return FilePrinter.description(method, writeDescription(route));
|
913
|
+
return FilePrinter.description(method, writeDescription(config)(route));
|
911
914
|
};
|
912
|
-
const writeDescription = method => [ method.comment(), "
|
915
|
+
const writeDescription = config => method => [ method.comment(), `@${config.author?.tag ?? "nestia"} ${config.author?.value ?? "Generated by Nestia - https://github.com/samchon/nestia"}` ].join("\n");
|
913
916
|
const writeMethodDecorators = components => importer => controller => route => {
|
914
917
|
const external = lib => instance => ts.factory.createIdentifier(importer.external({
|
915
918
|
type: "instance",
|
@@ -983,13 +986,13 @@ var MigrateNestMethodProgrammer;
|
|
983
986
|
var MigrateNestControllerProgrammer;
|
984
987
|
|
985
988
|
(function(MigrateNestControllerProgrammer) {
|
986
|
-
MigrateNestControllerProgrammer.write = components => controller => {
|
989
|
+
MigrateNestControllerProgrammer.write = config => components => controller => {
|
987
990
|
const importer = new MigrateImportProgrammer;
|
988
991
|
const $class = ts.factory.createClassDeclaration([ ts.factory.createDecorator(ts.factory.createCallExpression(ts.factory.createIdentifier(importer.external({
|
989
992
|
type: "instance",
|
990
993
|
library: "@nestjs/common",
|
991
994
|
name: "Controller"
|
992
|
-
})), [], [ ts.factory.createStringLiteral(controller.path) ])), ts.factory.createToken(ts.SyntaxKind.ExportKeyword) ], controller.name, [], [], controller.routes.map(MigrateNestMethodProgrammer.write(components)(importer)(controller)));
|
995
|
+
})), [], [ ts.factory.createStringLiteral(controller.path) ])), ts.factory.createToken(ts.SyntaxKind.ExportKeyword) ], controller.name, [], [], controller.routes.map(((route, index) => [ ...index !== 0 ? [ FilePrinter.newLine() ] : [], MigrateNestMethodProgrammer.write(config)(components)(importer)(controller)(route) ])).flat());
|
993
996
|
return [ ...importer.toStatements((ref => `${"../".repeat(StringUtil.splitWithNormalization(controller.location).length - 1)}api/structures/${ref}`)), ...importer.empty() ? [] : [ FilePrinter.newLine() ], $class ];
|
994
997
|
};
|
995
998
|
})(MigrateNestControllerProgrammer || (MigrateNestControllerProgrammer = {}));
|
@@ -1016,7 +1019,7 @@ var MigrateNestProgrammer;
|
|
1016
1019
|
}, ...controllers.map((c => ({
|
1017
1020
|
location: c.location,
|
1018
1021
|
file: `${c.name}.ts`,
|
1019
|
-
statements: MigrateNestControllerProgrammer.write(program.document.components)(c)
|
1022
|
+
statements: MigrateNestControllerProgrammer.write(program)(program.document.components)(c)
|
1020
1023
|
}))), ...[ ...MigrateDtoProgrammer.compose(program.document.components).entries() ].map((([key, value]) => ({
|
1021
1024
|
location: "src/api/structures",
|
1022
1025
|
file: `${key}.ts`,
|
@@ -1043,6 +1046,7 @@ var MigrateNestProgrammer;
|
|
1043
1046
|
for (const child of modulo.children.values()) internal.push(...iterate(importer)(child));
|
1044
1047
|
output.push(ts.factory.createModuleDeclaration([ ts.factory.createModifier(ts.SyntaxKind.ExportKeyword) ], ts.factory.createIdentifier(modulo.name), ts.factory.createModuleBlock(internal), ts.NodeFlags.Namespace));
|
1045
1048
|
}
|
1049
|
+
output.push(FilePrinter.newLine());
|
1046
1050
|
return output;
|
1047
1051
|
};
|
1048
1052
|
})(MigrateNestProgrammer || (MigrateNestProgrammer = {}));
|
@@ -8744,11 +8748,12 @@ class MigrateApplication {
|
|
8744
8748
|
mode: "nest",
|
8745
8749
|
document: this.document,
|
8746
8750
|
simulate: config.simulate,
|
8747
|
-
e2e: config.e2e
|
8751
|
+
e2e: config.e2e,
|
8752
|
+
author: config.author
|
8748
8753
|
});
|
8749
8754
|
const output = {
|
8750
8755
|
program,
|
8751
|
-
files: [ ...NEST_TEMPLATE, ...MigrateNestProgrammer.write(program), ...MigrateApiProgrammer.write(program), ...config.e2e ? MigrateE2eProgrammer.write(program) : [] ],
|
8756
|
+
files: [ ...NEST_TEMPLATE.filter((f => f.location.startsWith("src/api/structures") === false && f.location.startsWith("src/api/functional") === false && f.location.startsWith("src/api/controllers") === false && f.location.startsWith("test/features") === false)), ...MigrateNestProgrammer.write(program), ...MigrateApiProgrammer.write(program), ...config.e2e ? MigrateE2eProgrammer.write(program) : [] ],
|
8752
8757
|
errors: program.errors
|
8753
8758
|
};
|
8754
8759
|
return this.finalize(config, output);
|
@@ -8758,11 +8763,12 @@ class MigrateApplication {
|
|
8758
8763
|
mode: "sdk",
|
8759
8764
|
document: this.document,
|
8760
8765
|
simulate: config.simulate,
|
8761
|
-
e2e: config.e2e
|
8766
|
+
e2e: config.e2e,
|
8767
|
+
author: config.author
|
8762
8768
|
});
|
8763
8769
|
const output = {
|
8764
8770
|
program,
|
8765
|
-
files: [ ...SDK_TEMPLATE, ...MigrateApiProgrammer.write(program), MigrateApiStartProgrammer.write(program), ...config.e2e ? MigrateE2eProgrammer.write(program) : [], {
|
8771
|
+
files: [ ...SDK_TEMPLATE.filter((f => f.location.startsWith("src/structures") === false && f.location.startsWith("src/functional") === false && f.location.startsWith("test/features") === false)), ...MigrateApiProgrammer.write(program), MigrateApiStartProgrammer.write(program), ...config.e2e ? MigrateE2eProgrammer.write(program) : [], {
|
8766
8772
|
location: "",
|
8767
8773
|
file: "swagger.json",
|
8768
8774
|
content: JSON.stringify(this.document, null, 2)
|