@neetru/cli 2.7.5 → 2.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/CHANGELOG.md +220 -220
  2. package/README.md +137 -137
  3. package/dist/cli-kit/format.d.ts +49 -0
  4. package/dist/cli-kit/format.js +88 -0
  5. package/dist/cli-kit/format.js.map +1 -0
  6. package/dist/cli-kit/glyphs.d.ts +22 -0
  7. package/dist/cli-kit/glyphs.js +22 -0
  8. package/dist/cli-kit/glyphs.js.map +1 -0
  9. package/dist/cli-kit/index.d.ts +13 -0
  10. package/dist/cli-kit/index.js +12 -0
  11. package/dist/cli-kit/index.js.map +1 -0
  12. package/dist/cli-kit/palette.d.ts +10 -0
  13. package/dist/cli-kit/palette.js +36 -0
  14. package/dist/cli-kit/palette.js.map +1 -0
  15. package/dist/commands/ai.js +8 -8
  16. package/dist/commands/autocomplete.js +34 -34
  17. package/dist/commands/db.d.ts +87 -7
  18. package/dist/commands/db.js +697 -126
  19. package/dist/commands/db.js.map +1 -1
  20. package/dist/commands/deploy.d.ts +5 -0
  21. package/dist/commands/deploy.js +68 -0
  22. package/dist/commands/deploy.js.map +1 -1
  23. package/dist/commands/dev.d.ts +68 -0
  24. package/dist/commands/dev.js +345 -0
  25. package/dist/commands/dev.js.map +1 -0
  26. package/dist/commands/init.js +121 -121
  27. package/dist/commands/new.d.ts +6 -0
  28. package/dist/commands/new.js +31 -10
  29. package/dist/commands/new.js.map +1 -1
  30. package/dist/commands/products-db.d.ts +1 -1
  31. package/dist/commands/products-db.js +17 -4
  32. package/dist/commands/products-db.js.map +1 -1
  33. package/dist/index.js +258 -42
  34. package/dist/index.js.map +1 -1
  35. package/dist/lib/ai/context.js +90 -90
  36. package/dist/lib/db-local/db-json.d.ts +63 -0
  37. package/dist/lib/db-local/db-json.js +189 -0
  38. package/dist/lib/db-local/db-json.js.map +1 -0
  39. package/dist/lib/db-local/env.d.ts +26 -0
  40. package/dist/lib/db-local/env.js +64 -0
  41. package/dist/lib/db-local/env.js.map +1 -0
  42. package/dist/lib/db-local/fingerprint.d.ts +8 -0
  43. package/dist/lib/db-local/fingerprint.js +28 -0
  44. package/dist/lib/db-local/fingerprint.js.map +1 -0
  45. package/dist/lib/db-local/index.d.ts +15 -0
  46. package/dist/lib/db-local/index.js +14 -0
  47. package/dist/lib/db-local/index.js.map +1 -0
  48. package/dist/lib/db-pipeline/build-deps.d.ts +14 -0
  49. package/dist/lib/db-pipeline/build-deps.js +158 -0
  50. package/dist/lib/db-pipeline/build-deps.js.map +1 -0
  51. package/dist/lib/db-pipeline/errors.d.ts +29 -0
  52. package/dist/lib/db-pipeline/errors.js +29 -0
  53. package/dist/lib/db-pipeline/errors.js.map +1 -0
  54. package/dist/lib/db-pipeline/index.d.ts +26 -0
  55. package/dist/lib/db-pipeline/index.js +25 -0
  56. package/dist/lib/db-pipeline/index.js.map +1 -0
  57. package/dist/lib/db-pipeline/pipeline.d.ts +13 -0
  58. package/dist/lib/db-pipeline/pipeline.js +119 -0
  59. package/dist/lib/db-pipeline/pipeline.js.map +1 -0
  60. package/dist/lib/db-pipeline/rehearse.d.ts +99 -0
  61. package/dist/lib/db-pipeline/rehearse.js +219 -0
  62. package/dist/lib/db-pipeline/rehearse.js.map +1 -0
  63. package/dist/lib/db-pipeline/types.d.ts +112 -0
  64. package/dist/lib/db-pipeline/types.js +20 -0
  65. package/dist/lib/db-pipeline/types.js.map +1 -0
  66. package/package.json +63 -62
  67. package/templates/auth/callback.ts +22 -22
  68. package/templates/auth/sign-in.tsx +41 -41
  69. package/templates/billing/checkout.ts +22 -22
  70. package/templates/billing/page.tsx +43 -43
  71. package/templates/support/ticket-form.tsx +68 -68
  72. package/templates/usage/track.ts +30 -30
  73. package/templates/users/profile.tsx +43 -43
@@ -37,49 +37,49 @@ export const TOP_LEVEL_COMMANDS = [
37
37
  ];
38
38
  function bashScript() {
39
39
  const cmds = TOP_LEVEL_COMMANDS.join(' ');
40
- return `# neetru CLI bash completion (v2.0)
41
- _neetru_complete() {
42
- local cur prev
43
- COMPREPLY=()
44
- cur="\${COMP_WORDS[COMP_CWORD]}"
45
- prev="\${COMP_WORDS[COMP_CWORD-1]}"
46
- if [ \${COMP_CWORD} -eq 1 ]; then
47
- COMPREPLY=( $(compgen -W "${cmds}" -- "\${cur}") )
48
- return 0
49
- fi
50
- }
51
- complete -F _neetru_complete neetru
40
+ return `# neetru CLI bash completion (v2.0)
41
+ _neetru_complete() {
42
+ local cur prev
43
+ COMPREPLY=()
44
+ cur="\${COMP_WORDS[COMP_CWORD]}"
45
+ prev="\${COMP_WORDS[COMP_CWORD-1]}"
46
+ if [ \${COMP_CWORD} -eq 1 ]; then
47
+ COMPREPLY=( $(compgen -W "${cmds}" -- "\${cur}") )
48
+ return 0
49
+ fi
50
+ }
51
+ complete -F _neetru_complete neetru
52
52
  `;
53
53
  }
54
54
  function zshScript() {
55
55
  // Formato compsys do zsh.
56
56
  const cmds = TOP_LEVEL_COMMANDS.map((c) => ` '${c}'`).join('\n');
57
- return `#compdef neetru
58
- # neetru CLI zsh completion (v2.0)
59
- _neetru() {
60
- local -a commands
61
- commands=(
62
- ${cmds}
63
- )
64
- if (( CURRENT == 2 )); then
65
- _describe 'command' commands
66
- fi
67
- }
68
- _neetru "$@"
57
+ return `#compdef neetru
58
+ # neetru CLI zsh completion (v2.0)
59
+ _neetru() {
60
+ local -a commands
61
+ commands=(
62
+ ${cmds}
63
+ )
64
+ if (( CURRENT == 2 )); then
65
+ _describe 'command' commands
66
+ fi
67
+ }
68
+ _neetru "$@"
69
69
  `;
70
70
  }
71
71
  function pwshScript() {
72
72
  const cmds = TOP_LEVEL_COMMANDS.map((c) => ` '${c}'`).join(',\n');
73
- return `# neetru CLI PowerShell completion (v2.0)
74
- Register-ArgumentCompleter -Native -CommandName neetru -ScriptBlock {
75
- param($wordToComplete, $commandAst, $cursorPosition)
76
- $commands = @(
77
- ${cmds}
78
- )
79
- $commands | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
80
- [System.Management.Automation.CompletionResult]::new($_, $_, 'ParameterValue', $_)
81
- }
82
- }
73
+ return `# neetru CLI PowerShell completion (v2.0)
74
+ Register-ArgumentCompleter -Native -CommandName neetru -ScriptBlock {
75
+ param($wordToComplete, $commandAst, $cursorPosition)
76
+ $commands = @(
77
+ ${cmds}
78
+ )
79
+ $commands | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
80
+ [System.Management.Automation.CompletionResult]::new($_, $_, 'ParameterValue', $_)
81
+ }
82
+ }
83
83
  `;
84
84
  }
85
85
  export function generateAutocompleteScript(shell) {
@@ -1,14 +1,94 @@
1
+ export interface DbListOptions {
2
+ productId?: string;
3
+ engine?: string;
4
+ status?: string;
5
+ json?: boolean;
6
+ }
7
+ export declare function runDbList(opts?: DbListOptions): Promise<void>;
8
+ export interface DbStatusOptions {
9
+ json?: boolean;
10
+ }
11
+ export declare function runDbStatus(dbId: string, opts?: DbStatusOptions): Promise<void>;
1
12
  export interface DbInitOptions {
13
+ name?: string;
14
+ engine?: string;
15
+ env?: string;
16
+ productId?: string;
17
+ yes?: boolean;
18
+ /**
19
+ * @deprecated Opção legada removida (D-3). Passar `--out` resulta em exit(1)
20
+ * com mensagem clara. Mantida na interface só para não quebrar callers que
21
+ * constroem o objeto — não tem efeito funcional.
22
+ */
2
23
  out?: string;
24
+ /**
25
+ * @deprecated Opção legada removida (D-3). Ver nota de `out` acima.
26
+ */
3
27
  force?: boolean;
4
28
  }
5
29
  export declare function runDbInit(opts?: DbInitOptions): Promise<void>;
6
- export interface DbMigrateOptions {
7
- toVersion: string;
8
- fromVersion?: string;
30
+ export interface DbApplyOptions {
31
+ dbName?: string;
32
+ env?: string;
33
+ schemaPath?: string;
34
+ dryRun?: boolean;
35
+ yes?: boolean;
36
+ }
37
+ export declare function runDbApply(opts?: DbApplyOptions): Promise<void>;
38
+ export interface DbMigrationsListOptions {
39
+ dbId?: string;
40
+ json?: boolean;
41
+ }
42
+ export declare function runDbMigrationsList(opts?: DbMigrationsListOptions): Promise<void>;
43
+ export interface DbMigrationsConfirmOptions {
44
+ mfa: string;
45
+ json?: boolean;
46
+ }
47
+ export declare function runDbMigrationsConfirm(migrationId: string, opts: DbMigrationsConfirmOptions): Promise<void>;
48
+ export interface DbBackupsOptions {
49
+ json?: boolean;
50
+ }
51
+ /**
52
+ * Lista os backups disponíveis de um banco específico.
53
+ *
54
+ * Endpoint: GET /api/cli/v1/db/[id]/backups
55
+ * Rota implementada em `src/app/api/cli/v1/db/[id]/backups/route.ts`.
56
+ */
57
+ export declare function runDbBackups(dbId: string, opts?: DbBackupsOptions): Promise<void>;
58
+ export interface DbRestoreOptions {
59
+ mfa: string;
60
+ json?: boolean;
9
61
  }
10
- export declare function runDbMigrate(opts: DbMigrateOptions): Promise<void>;
11
- export interface DbSeedOptions {
12
- script?: string;
62
+ /**
63
+ * Dispara um restore de banco a partir de um backup selecionado interativamente.
64
+ *
65
+ * Fluxo:
66
+ * 1. Lista backups disponíveis via GET /api/cli/v1/db/[id]/backups
67
+ * 2. Operador escolhe qual backup restaurar
68
+ * 3. Exige confirmação textual "RESTAURAR" (operação destrutiva)
69
+ * 4. POST /api/cli/v1/db/[id]/restore com MFA step-up
70
+ *
71
+ * Endpoints implementados em:
72
+ * GET src/app/api/cli/v1/db/[id]/backups/route.ts
73
+ * POST src/app/api/cli/v1/db/[id]/restore/route.ts
74
+ */
75
+ export declare function runDbRestore(dbId: string, opts: DbRestoreOptions): Promise<void>;
76
+ export interface DbHostsOptions {
77
+ json?: boolean;
13
78
  }
14
- export declare function runDbSeed(opts?: DbSeedOptions): Promise<void>;
79
+ /**
80
+ * Lista as VMs host e quantos bancos de produto cada uma hospeda.
81
+ *
82
+ * Usa o endpoint de servers com `?capacity=true&db=true` para incluir
83
+ * o inventário de bancos por servidor. O Core agrega o campo `databases`
84
+ * quando `db=true` é passado.
85
+ *
86
+ * Endpoint: GET /api/cli/v1/servers?capacity=true&db=true
87
+ *
88
+ * NOTA: O parâmetro `db=true` (que instrui o Core a enriquecer cada server
89
+ * com o array `databases`) não está implementado ainda no endpoint de servers
90
+ * do Core (GAP: parâmetro db=true em /api/cli/v1/servers ausente). O comando
91
+ * funciona com a resposta atual — apenas o campo `databases` por server
92
+ * ficará ausente/vazio até o Core implementar o enriquecimento.
93
+ */
94
+ export declare function runDbHosts(opts?: DbHostsOptions): Promise<void>;