@koalarx/nest-cli 1.2.23 → 1.19.1

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.
Files changed (115) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +48 -19
  3. package/commands/new-project/index.js +70 -0
  4. package/commands/new-project/new-project.js +69 -0
  5. package/index.js +31 -30707
  6. package/package.json +12 -33
  7. package/{code-base → templates}/env/config.txt +0 -2
  8. package/templates/startup-project/.dockerignore +7 -0
  9. package/templates/startup-project/.prettierrc.json +9 -0
  10. package/templates/startup-project/.vscode/launch.json +28 -0
  11. package/templates/startup-project/.vscode/mcp.json +11 -0
  12. package/{code-base → templates}/startup-project/.vscode/settings.json +23 -9
  13. package/templates/startup-project/Dockerfile +49 -0
  14. package/templates/startup-project/README.md +33 -0
  15. package/templates/startup-project/bunfig.toml +10 -0
  16. package/templates/startup-project/eslint.config.mts +85 -0
  17. package/templates/startup-project/nest-cli.json +35 -0
  18. package/{code-base → templates}/startup-project/package.json +27 -28
  19. package/templates/startup-project/prisma/migrations/20250320165043_init/migration.sql +19 -0
  20. package/{code-base/startup-project/prisma/migrations/20250326220607_init → templates/startup-project/prisma/migrations/20250320171528_aplicando_map_de_tabelas_e_colunas}/migration.sql +16 -13
  21. package/templates/startup-project/prisma/migrations/20250321190248_incluindo_status_ao_person/migration.sql +2 -0
  22. package/templates/startup-project/prisma/migrations/20250326185507_incluindo_tabela_de_endereco/migration.sql +19 -0
  23. package/templates/startup-project/prisma/migrations/20250326195627_aplicando_on_delete_cascade/migration.sql +5 -0
  24. package/templates/startup-project/prisma/migrations/20250326200821_removendo_ondelete_cascade/migration.sql +5 -0
  25. package/{code-base → templates}/startup-project/src/application/person/common/persist-person.request.ts +2 -2
  26. package/{code-base → templates}/startup-project/src/application/person/read/read-person.response.ts +2 -2
  27. package/{code-base → templates}/startup-project/src/application/person/update/update-person.request.ts +2 -2
  28. package/{code-base → templates}/startup-project/src/domain/entities/person/person.ts +2 -2
  29. package/{code-base → templates}/startup-project/src/infra/database/db-transaction-context.ts +0 -1
  30. package/{code-base → templates}/startup-project/src/test/setup-e2e.ts +7 -2
  31. package/templates/startup-project/tsconfig.app.json +8 -0
  32. package/templates/startup-project/tsconfig.build.json +9 -0
  33. package/{code-base → templates}/startup-project/tsconfig.json +9 -8
  34. package/templates/startup-project/tsconfig.prisma.json +16 -0
  35. package/tsconfig.tsbuildinfo +1 -0
  36. package/code-base/startup-project/.eslintignore +0 -2
  37. package/code-base/startup-project/.eslintrc.js +0 -20
  38. package/code-base/startup-project/.swcrc +0 -23
  39. package/code-base/startup-project/.vscode/launch.json +0 -41
  40. package/code-base/startup-project/Dockerfile +0 -26
  41. package/code-base/startup-project/LICENSE +0 -21
  42. package/code-base/startup-project/README.md +0 -5
  43. package/code-base/startup-project/nest-cli.json +0 -19
  44. package/code-base/startup-project/prisma/generated/browser.ts +0 -34
  45. package/code-base/startup-project/prisma/generated/client.ts +0 -54
  46. package/code-base/startup-project/prisma/generated/commonInputTypes.ts +0 -172
  47. package/code-base/startup-project/prisma/generated/enums.ts +0 -15
  48. package/code-base/startup-project/prisma/generated/internal/class.ts +0 -210
  49. package/code-base/startup-project/prisma/generated/internal/prismaNamespace.ts +0 -927
  50. package/code-base/startup-project/prisma/generated/internal/prismaNamespaceBrowser.ts +0 -116
  51. package/code-base/startup-project/prisma/generated/models/Person.ts +0 -1497
  52. package/code-base/startup-project/prisma/generated/models/PersonAddress.ts +0 -1265
  53. package/code-base/startup-project/prisma/generated/models/PersonPhone.ts +0 -1315
  54. package/code-base/startup-project/prisma/generated/models.ts +0 -14
  55. package/code-base/startup-project/src/domain/services/.gitkeep +0 -0
  56. package/code-base/startup-project/src/infra/services/.gitkeep +0 -0
  57. package/code-base/startup-project/tsconfig.build.json +0 -4
  58. package/code-base/startup-project/vitest.config.e2e.mts +0 -19
  59. package/code-base/startup-project/vitest.config.mts +0 -18
  60. package/commands/new-project/index.ts +0 -34
  61. package/index.ts +0 -42
  62. package/utils/copy-folder.ts +0 -25
  63. /package/{code-base → templates}/gitignore/config.txt +0 -0
  64. /package/{code-base → templates}/startup-project/.gitattributes +0 -0
  65. /package/{code-base → templates}/startup-project/.vscode/tasks.json +0 -0
  66. /package/{code-base → templates}/startup-project/prisma/migrations/migration_lock.toml +0 -0
  67. /package/{code-base → templates}/startup-project/prisma/schema.prisma +0 -0
  68. /package/{code-base → templates}/startup-project/prisma.config.ts +0 -0
  69. /package/{code-base → templates}/startup-project/src/application/mapping/mapping.profile.ts +0 -0
  70. /package/{code-base → templates}/startup-project/src/application/mapping/person.mapping.ts +0 -0
  71. /package/{code-base → templates}/startup-project/src/application/person/create/create-person.handler.spec.ts +0 -0
  72. /package/{code-base → templates}/startup-project/src/application/person/create/create-person.handler.ts +0 -0
  73. /package/{code-base → templates}/startup-project/src/application/person/create/create-person.request.ts +0 -0
  74. /package/{code-base → templates}/startup-project/src/application/person/create/create-person.response.ts +0 -0
  75. /package/{code-base → templates}/startup-project/src/application/person/create/create-person.validator.ts +0 -0
  76. /package/{code-base → templates}/startup-project/src/application/person/create-person-job/create-person-job.ts +0 -0
  77. /package/{code-base → templates}/startup-project/src/application/person/delete/delete-person.handler.spec.ts +0 -0
  78. /package/{code-base → templates}/startup-project/src/application/person/delete/delete-person.handler.ts +0 -0
  79. /package/{code-base → templates}/startup-project/src/application/person/delete-inative-job/delete-inactive-job.ts +0 -0
  80. /package/{code-base → templates}/startup-project/src/application/person/events/inactive-person/inactive-person-event.ts +0 -0
  81. /package/{code-base → templates}/startup-project/src/application/person/events/inactive-person/inactive-person-handler.ts +0 -0
  82. /package/{code-base → templates}/startup-project/src/application/person/events/person-event.job.ts +0 -0
  83. /package/{code-base → templates}/startup-project/src/application/person/read/read-person.handler.spec.ts +0 -0
  84. /package/{code-base → templates}/startup-project/src/application/person/read/read-person.handler.ts +0 -0
  85. /package/{code-base → templates}/startup-project/src/application/person/read-many/read-many-person.handler.spec.ts +0 -0
  86. /package/{code-base → templates}/startup-project/src/application/person/read-many/read-many-person.handler.ts +0 -0
  87. /package/{code-base → templates}/startup-project/src/application/person/read-many/read-many-person.request.ts +0 -0
  88. /package/{code-base → templates}/startup-project/src/application/person/read-many/read-many-person.response.ts +0 -0
  89. /package/{code-base → templates}/startup-project/src/application/person/read-many/read-many.validator.ts +0 -0
  90. /package/{code-base → templates}/startup-project/src/application/person/update/update-person.handler.spec.ts +0 -0
  91. /package/{code-base → templates}/startup-project/src/application/person/update/update-person.handler.ts +0 -0
  92. /package/{code-base → templates}/startup-project/src/application/person/update/update-person.validator.ts +0 -0
  93. /package/{code-base → templates}/startup-project/src/core/env.ts +0 -0
  94. /package/{code-base → templates}/startup-project/src/domain/dtos/read-many-person.dto.ts +0 -0
  95. /package/{code-base → templates}/startup-project/src/domain/entities/person/person-address.ts +0 -0
  96. /package/{code-base → templates}/startup-project/src/domain/entities/person/person-phone.ts +0 -0
  97. /package/{code-base → templates}/startup-project/src/domain/repositories/iperson.repository.ts +0 -0
  98. /package/{code-base → templates}/startup-project/src/host/app.module.ts +0 -0
  99. /package/{code-base → templates}/startup-project/src/host/controllers/controller.module.ts +0 -0
  100. /package/{code-base → templates}/startup-project/src/host/controllers/person/create-person.controller.ts +0 -0
  101. /package/{code-base → templates}/startup-project/src/host/controllers/person/delete-person.controller.ts +0 -0
  102. /package/{code-base → templates}/startup-project/src/host/controllers/person/person.controller.e2e-spec.ts +0 -0
  103. /package/{code-base → templates}/startup-project/src/host/controllers/person/person.module.ts +0 -0
  104. /package/{code-base → templates}/startup-project/src/host/controllers/person/read-many-person.controller.ts +0 -0
  105. /package/{code-base → templates}/startup-project/src/host/controllers/person/read-person.controller.ts +0 -0
  106. /package/{code-base → templates}/startup-project/src/host/controllers/person/router.config.ts +0 -0
  107. /package/{code-base → templates}/startup-project/src/host/controllers/person/update-person.controller.ts +0 -0
  108. /package/{code-base → templates}/startup-project/src/host/main.ts +0 -0
  109. /package/{code-base → templates}/startup-project/src/infra/database/repositories/person.repository.ts +0 -0
  110. /package/{code-base → templates}/startup-project/src/infra/database/repositories/repositories.module.ts +0 -0
  111. /package/{code-base → templates}/startup-project/src/infra/infra.module.ts +0 -0
  112. /package/{code-base → templates}/startup-project/src/test/create-e2e-test-app.ts +0 -0
  113. /package/{code-base → templates}/startup-project/src/test/create-unit-test-app.ts +0 -0
  114. /package/{code-base → templates}/startup-project/src/test/mockup/person/create-person-request.mockup.ts +0 -0
  115. /package/{code-base → templates}/startup-project/src/test/repositories/person.repository.ts +0 -0
@@ -1,14 +0,0 @@
1
-
2
- /* !!! This is code generated by Prisma. Do not edit directly. !!! */
3
- /* eslint-disable */
4
- // biome-ignore-all lint: generated file
5
- // @ts-nocheck
6
- /*
7
- * This is a barrel export file for all models and their related types.
8
- *
9
- * 🟢 You can import this file directly.
10
- */
11
- export type * from './models/Person'
12
- export type * from './models/PersonPhone'
13
- export type * from './models/PersonAddress'
14
- export type * from './commonInputTypes'
@@ -1,4 +0,0 @@
1
- {
2
- "extends": "./tsconfig.json",
3
- "exclude": ["node_modules", "test", "dist", "**/*spec.ts"]
4
- }
@@ -1,19 +0,0 @@
1
- import swc from "unplugin-swc";
2
- import tsConfigPatchs from "vite-tsconfig-paths";
3
- import { defineConfig } from "vitest/config";
4
-
5
- export default defineConfig({
6
- test: {
7
- globals: true,
8
- root: "./",
9
- environment: 'bun',
10
- include: ["**/*.e2e-spec.ts"],
11
- setupFiles: ["./src/test/setup-e2e.ts"],
12
- },
13
- plugins: [
14
- tsConfigPatchs(),
15
- swc.vite({
16
- module: { type: "es6" },
17
- })
18
- ],
19
- });
@@ -1,18 +0,0 @@
1
- import swc from "unplugin-swc";
2
- import tsConfigPatchs from 'vite-tsconfig-paths'
3
- import { defineConfig } from 'vitest/config'
4
-
5
- export default defineConfig({
6
- test: {
7
- globals: true,
8
- root: './',
9
- environment: 'bun',
10
- },
11
- plugins: [
12
- tsConfigPatchs(),
13
- swc.vite({
14
- module: { type: "es6" },
15
- sourceMaps: true,
16
- }),
17
- ],
18
- })
@@ -1,34 +0,0 @@
1
- import { copyFolder } from '@/utils/copy-folder'
2
- import chalk from 'chalk'
3
- import { execSync } from 'node:child_process'
4
- import { readFileSync, writeFileSync } from 'node:fs'
5
- import path from 'node:path'
6
- import { fileURLToPath } from 'node:url'
7
-
8
- const __filename = fileURLToPath(import.meta.url)
9
- const __dirname = path.dirname(__filename)
10
-
11
- export function newProject(projectName: string) {
12
- copyFolder(path.join(__dirname, 'code-base/startup-project'), projectName)
13
-
14
- const packageJson = require(path.join(process.cwd(), projectName, 'package.json'))
15
- packageJson.name = projectName
16
- writeFileSync(path.join(process.cwd(), projectName, 'package.json'), JSON.stringify(packageJson, null, 2))
17
-
18
- let readme = readFileSync(path.join(path.join(process.cwd(), projectName, 'README.md'))).toString()
19
- readme = readme.replace('[projectName]', projectName)
20
- writeFileSync(path.join(process.cwd(), projectName, 'README.md'), readme)
21
-
22
- let env = readFileSync(path.join(path.join(__dirname, 'code-base/env', 'config.txt'))).toString()
23
- env = env.replace(/\[projectName\]/g, projectName.replace(/-/g, '_'))
24
- writeFileSync(path.join(process.cwd(), projectName, '.env'), env)
25
-
26
- const gitIgnore = readFileSync(path.join(path.join(__dirname, 'code-base/gitignore', 'config.txt'))).toString()
27
- writeFileSync(path.join(process.cwd(), projectName, '.gitignore'), gitIgnore)
28
-
29
- execSync(`cd ${projectName} && bun install && bunx prisma generate`, {
30
- stdio: 'inherit',
31
- })
32
-
33
- console.log(`${chalk.green('Projeto criado com sucesso!')}`)
34
- }
package/index.ts DELETED
@@ -1,42 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- import program from 'commander'
4
- import inquirer from 'inquirer'
5
- import { newProject } from './commands/new-project'
6
- import chalk from 'chalk'
7
- import packageJson from '../package.json' with { type: 'json' }
8
-
9
- const banner = `
10
- _ __ _ _ _ _ ____ _ ___
11
- | |/ /___ __ _| | __ _ | \\ | | ___ ___| |_ / ___| | |_ _|
12
- | ' // _ \\ / _\` | |/ _\` | | \\| |/ _ \\/ __| __| | | | | | |
13
- | . \\ (_) | (_| | | (_| | | |\\ | __/\\__ \\ |_ | |___| |___ | |
14
- |_|\\_\\___/ \\__,_|_|\\__,_| |_| \\_|\\___||___/\\__| \\____|_____|___|
15
- `
16
-
17
- console.log(chalk.cyan(banner))
18
-
19
- program.version(packageJson.version)
20
-
21
- program
22
- .command('new [projectName]')
23
- .description('Cria um novo projeto Nest com Koala Nest')
24
- .action(async (projectName: string) => {
25
- if (!projectName) {
26
- projectName = await inquirer
27
- .prompt([
28
- {
29
- type: 'input',
30
- name: 'projectName',
31
- message: 'Informe o nome do projeto',
32
- validate: (value?: string) =>
33
- value ? true : 'Não é permitido um nome vazio',
34
- },
35
- ])
36
- .then((answers) => answers.projectName)
37
- }
38
-
39
- newProject(projectName)
40
- })
41
-
42
- program.parse(process.argv)
@@ -1,25 +0,0 @@
1
- import fs from 'fs'
2
- import path from 'path'
3
-
4
- export function copyFolder(source, target) {
5
- if (!fs.existsSync(target)) {
6
- fs.mkdirSync(target)
7
- }
8
-
9
- const files = fs.readdirSync(source)
10
-
11
- for (const file of files) {
12
- const sourcePath = path.join(source, file)
13
- const targetPath = path.join(target, file)
14
-
15
- if (fs.statSync(sourcePath).isDirectory()) {
16
- if (!fs.existsSync(target)) {
17
- fs.mkdirSync(targetPath)
18
- }
19
-
20
- copyFolder(sourcePath, targetPath)
21
- } else {
22
- fs.copyFileSync(sourcePath, targetPath)
23
- }
24
- }
25
- }
File without changes