@oktis-works/cms 0.6.3 → 0.6.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.
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7E;AAwCD,eAAO,MAAM,QAAQ,EAAE,OAAO,EA2gC7B,CAAC;AAEF,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAE5D"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7E;AAED,eAAO,MAAM,QAAQ,EAAE,OAAO,EA4gC7B,CAAC;AAEF,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAE5D"}
package/dist/commands.js CHANGED
@@ -1,41 +1,8 @@
1
- import { basename, join, resolve } from 'node:path';
1
+ import { basename, resolve } from 'node:path';
2
2
  import { initDb } from './db-init.js';
3
+ import { getMigrationsDir, prepareDb } from './db-prepare.js';
4
+ import { VALID_ROLES, createUserAccount } from './users.js';
3
5
  import { style } from './prompt.js';
4
- function getMigrationsDir(options) {
5
- return options['dir'] ?? join(process.cwd(), 'migrations');
6
- }
7
- function getTenantId(options) {
8
- return options['tenant'] ?? 'default';
9
- }
10
- /** Papéis canônicos da política RBAC (slugs em MAIÚSCULAS). */
11
- const VALID_ROLES = ['SUPER_ADMIN', 'TENANT_ADMIN', 'EDITOR', 'AUTHOR', 'VIEWER'];
12
- /**
13
- * Prepara o banco para os comandos db:* em QUALQUER estado — inclusive um
14
- * banco vazio recém-criado pelo docker compose (sem nem a tabela de controle
15
- * de migrations, que sequer existe sem o schema core): aplica o schema se
16
- * faltar, resolve o slug do --tenant para o UUID real de tenants.slug e
17
- * devolve esse UUID.
18
- */
19
- async function prepareDb(options) {
20
- await initDb();
21
- const { ensureCoreSchema, resolveTenantId, seedCoreData } = await import('@oktis-works/database');
22
- const applied = await ensureCoreSchema();
23
- if (applied) {
24
- console.log('✓ core schema applied (database initialized)');
25
- }
26
- // Seed idempotente (roles da política + settings gerais): roda em qualquer
27
- // banco — sem ele, o primeiro usuário registra e cai em 403 em tudo.
28
- try {
29
- const seeded = await seedCoreData();
30
- if (seeded.roles > 0 || seeded.settings > 0) {
31
- console.log(`✓ seed: ${seeded.roles} roles, ${seeded.settings} settings created`);
32
- }
33
- }
34
- catch (error) {
35
- console.warn('⚠ default data seed failed:', error instanceof Error ? error.message : error);
36
- }
37
- return resolveTenantId(getTenantId(options));
38
- }
39
6
  export const commands = [
40
7
  {
41
8
  name: 'init',
@@ -192,6 +159,48 @@ export const commands = [
192
159
  }
193
160
  },
194
161
  },
162
+ {
163
+ name: 'dev',
164
+ description: 'One-shot dev setup + run: complete .env → infra → migrations → first admin → start apps',
165
+ options: [
166
+ { name: 'yes', alias: 'y', description: 'No prompts: take every default', required: false },
167
+ {
168
+ name: 'skip-start',
169
+ alias: 's',
170
+ description: 'Prepare everything (env, infra, db, user) but do not start the apps',
171
+ required: false,
172
+ },
173
+ {
174
+ name: 'no-infra',
175
+ alias: 'n',
176
+ description: 'Do not start the Docker infrastructure (external Postgres)',
177
+ required: false,
178
+ },
179
+ { name: 'email', alias: 'e', description: 'First admin email (required in non-TTY)', required: false },
180
+ { name: 'name', alias: 'N', description: 'First admin name (required in non-TTY)', required: false },
181
+ { name: 'password', alias: 'p', description: 'First admin password (required in non-TTY)', required: false },
182
+ {
183
+ name: 'force',
184
+ alias: 'F',
185
+ description: 'Allow running inside a container (not recommended)',
186
+ required: false,
187
+ },
188
+ ],
189
+ handler: async (_args, options) => {
190
+ const { runDev } = await import('./dev.js');
191
+ const code = await runDev({
192
+ yes: options['yes'] !== undefined,
193
+ skipStart: options['skip-start'] !== undefined,
194
+ noInfra: options['no-infra'] !== undefined,
195
+ force: options['force'] !== undefined,
196
+ email: options['email'] ? String(options['email']) : undefined,
197
+ name: options['name'] ? String(options['name']) : undefined,
198
+ password: options['password'] ? String(options['password']) : undefined,
199
+ });
200
+ if (code !== 0)
201
+ process.exitCode = code;
202
+ },
203
+ },
195
204
  {
196
205
  name: 'doctor',
197
206
  description: 'Environment diagnostics: node, .env, database, config, docker/compose/lane/proxy',
@@ -907,44 +916,20 @@ export const commands = [
907
916
  handler: async (_args, options) => {
908
917
  // A política RBAC usa slugs em maiúsculas: `--role editor` → EDITOR.
909
918
  const roleSlug = String(options['role'] ?? 'EDITOR').toUpperCase();
910
- if (!VALID_ROLES.includes(roleSlug)) {
911
- console.error(`Invalid role: ${options['role']} — use one of: ${VALID_ROLES.join(', ')}`);
912
- process.exitCode = 1;
913
- return;
914
- }
915
- await initDb();
916
- const { ensureCoreSchema, resolveTenantId, seedDefaultRoles, getConnection } = await import('@oktis-works/database');
917
- const { hashPassword } = await import('@oktis-works/auth');
918
- const { randomUUID } = await import('node:crypto');
919
- await ensureCoreSchema();
920
- await seedDefaultRoles();
921
- const sql = getConnection();
922
- const email = String(options['email']);
923
- const existing = await sql.unsafe('SELECT id FROM users WHERE email = $1', [email]);
924
- if (existing.length > 0) {
925
- console.error(`User already exists: ${email}`);
926
- process.exitCode = 1;
927
- return;
919
+ try {
920
+ await createUserAccount({
921
+ email: String(options['email']),
922
+ name: String(options['name']),
923
+ password: String(options['password']),
924
+ role: roleSlug,
925
+ tenant: String(options['tenant'] ?? 'default'),
926
+ });
927
+ console.log(`✓ user created: ${options['email']} (role ${roleSlug})`);
928
928
  }
929
- const passwordHash = await hashPassword(String(options['password']));
930
- const userId = randomUUID();
931
- await sql.unsafe(`INSERT INTO users (id, email, name, password_hash, status)
932
- VALUES ($1, $2, $3, $4, 'ACTIVE')`, [userId, email, String(options['name']), passwordHash]);
933
- const tenantId = await resolveTenantId(String(options['tenant'] ?? 'default'));
934
- const roles = await sql.unsafe(`SELECT id FROM roles
935
- WHERE slug = $1 AND (tenant_id IS NULL OR tenant_id = $2)
936
- ORDER BY tenant_id NULLS LAST
937
- LIMIT 1`, [roleSlug, tenantId]);
938
- if (roles.length === 0) {
939
- console.error(`Role "${roleSlug}" not found after seeding.`);
929
+ catch (error) {
930
+ console.error(error instanceof Error ? error.message : String(error));
940
931
  process.exitCode = 1;
941
- return;
942
932
  }
943
- await sql.unsafe(`INSERT INTO tenant_users (tenant_id, user_id, role_id, status)
944
- VALUES ($1, $2, $3, 'ACTIVE')
945
- ON CONFLICT (tenant_id, user_id)
946
- DO UPDATE SET role_id = EXCLUDED.role_id, status = 'ACTIVE'`, [tenantId, userId, roles[0]['id']]);
947
- console.log(`✓ user created: ${email} (role ${roleSlug})`);
948
933
  },
949
934
  },
950
935
  {
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export declare function getMigrationsDir(options: Record<string, string>): string;
2
+ export declare function getTenantId(options: Record<string, string>): string;
3
+ /**
4
+ * Prepara o banco para os comandos db:* em QUALQUER estado — inclusive um
5
+ * banco vazio recém-criado pelo docker compose (sem nem a tabela de controle
6
+ * de migrations, que sequer existe sem o schema core): aplica o schema se
7
+ * faltar, resolve o slug do --tenant para o UUID real de tenants.slug e
8
+ * devolve esse UUID.
9
+ */
10
+ export declare function prepareDb(options: Record<string, string>): Promise<string>;
11
+ //# sourceMappingURL=db-prepare.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"db-prepare.d.ts","sourceRoot":"","sources":["../src/db-prepare.ts"],"names":[],"mappings":"AASA,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAExE;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAEnE;AAED;;;;;;GAMG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAkBhF"}
@@ -0,0 +1,40 @@
1
+ // @oktis-works/cms - Preparação de banco para os comandos que falam com o DB
2
+ //
3
+ // Extraído de commands.ts para ser reaproveitado pelo `okcms dev` sem criar
4
+ // um ciclo de import (commands ↔ dev). Mesmo comportamento de sempre.
5
+ import { join } from 'node:path';
6
+ import { initDb } from './db-init.js';
7
+ export function getMigrationsDir(options) {
8
+ return options['dir'] ?? join(process.cwd(), 'migrations');
9
+ }
10
+ export function getTenantId(options) {
11
+ return options['tenant'] ?? 'default';
12
+ }
13
+ /**
14
+ * Prepara o banco para os comandos db:* em QUALQUER estado — inclusive um
15
+ * banco vazio recém-criado pelo docker compose (sem nem a tabela de controle
16
+ * de migrations, que sequer existe sem o schema core): aplica o schema se
17
+ * faltar, resolve o slug do --tenant para o UUID real de tenants.slug e
18
+ * devolve esse UUID.
19
+ */
20
+ export async function prepareDb(options) {
21
+ await initDb();
22
+ const { ensureCoreSchema, resolveTenantId, seedCoreData } = await import('@oktis-works/database');
23
+ const applied = await ensureCoreSchema();
24
+ if (applied) {
25
+ console.log('✓ core schema applied (database initialized)');
26
+ }
27
+ // Seed idempotente (roles da política + settings gerais): roda em qualquer
28
+ // banco — sem ele, o primeiro usuário registra e cai em 403 em tudo.
29
+ try {
30
+ const seeded = await seedCoreData();
31
+ if (seeded.roles > 0 || seeded.settings > 0) {
32
+ console.log(`✓ seed: ${seeded.roles} roles, ${seeded.settings} settings created`);
33
+ }
34
+ }
35
+ catch (error) {
36
+ console.warn('⚠ default data seed failed:', error instanceof Error ? error.message : error);
37
+ }
38
+ return resolveTenantId(getTenantId(options));
39
+ }
40
+ //# sourceMappingURL=db-prepare.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"db-prepare.js","sourceRoot":"","sources":["../src/db-prepare.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,EAAE;AACF,4EAA4E;AAC5E,sEAAsE;AAEtE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,MAAM,UAAU,gBAAgB,CAAC,OAA+B;IAC9D,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAA+B;IACzD,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC;AACxC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,OAA+B;IAC7D,MAAM,MAAM,EAAE,CAAC;IACf,MAAM,EAAE,gBAAgB,EAAE,eAAe,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;IAClG,MAAM,OAAO,GAAG,MAAM,gBAAgB,EAAE,CAAC;IACzC,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;IAC9D,CAAC;IACD,2EAA2E;IAC3E,qEAAqE;IACrE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,YAAY,EAAE,CAAC;QACpC,IAAI,MAAM,CAAC,KAAK,GAAG,CAAC,IAAI,MAAM,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,KAAK,WAAW,MAAM,CAAC,QAAQ,mBAAmB,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,6BAA6B,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,eAAe,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;AAC/C,CAAC"}
package/dist/dev.d.ts ADDED
@@ -0,0 +1,90 @@
1
+ import { type Runner } from './docker.js';
2
+ import { EnvFile } from './env-file.js';
3
+ import { type ContainerProbe } from './guards.js';
4
+ import { Prompt } from './prompt.js';
5
+ export interface DevUserInput {
6
+ email: string;
7
+ name: string;
8
+ password: string;
9
+ /** Default: SUPER_ADMIN (o primeiro usuário do dev). */
10
+ role?: string;
11
+ }
12
+ /**
13
+ * Pontos que tocam o banco/servidor — injetáveis para os testes ficarem
14
+ * herméticos (sem Postgres real). Em produção, o default usa os mesmos
15
+ * módulos dos comandos `db:migrate`/`user:create`/`start`.
16
+ */
17
+ export interface DevHooks {
18
+ /** Schema core + seed + migrations de `./migrations`. */
19
+ prepareDatabase: () => Promise<void>;
20
+ /** Existe algum usuário no banco? */
21
+ anyUserExists: () => Promise<boolean>;
22
+ /** Cria o primeiro admin (mesmo caminho do `user:create`). */
23
+ createUser: (input: DevUserInput) => Promise<void>;
24
+ /** Sobe api · admin · web · worker (bloqueia — é o processo do dev). */
25
+ startApps: () => Promise<void>;
26
+ }
27
+ export interface DevOptions {
28
+ /** `--yes`: sem prompts, todos os defaults. */
29
+ yes?: boolean;
30
+ /** `--skip-start`: prepara tudo e não sobe os apps. */
31
+ skipStart?: boolean;
32
+ /** `--no-infra`: não sobe o compose de infra (Postgres externo). */
33
+ noInfra?: boolean;
34
+ /** `--force`: roda mesmo dentro de container (não recomendado). */
35
+ force?: boolean;
36
+ /** Primeiro admin (obrigatório em não-TTY quando não há usuários). */
37
+ email?: string;
38
+ name?: string;
39
+ password?: string;
40
+ cwd?: string;
41
+ runner?: Runner;
42
+ prompt?: Prompt;
43
+ /** `assertHostOnly` probe (tests). */
44
+ probe?: ContainerProbe;
45
+ hooks?: DevHooks;
46
+ log?: (message: string) => void;
47
+ /** Sondas/timeouts da infra (tests). */
48
+ infraWait?: InfraWaitOptions;
49
+ }
50
+ /** TCP reachável? Usado para esperar o postgres e checar o redis do host. */
51
+ export declare const defaultTcpProbe: (host: string, port: number, timeoutMs?: number) => Promise<boolean>;
52
+ export interface InfraWaitOptions {
53
+ tcpProbe?: (host: string, port: number, timeoutMs?: number) => Promise<boolean>;
54
+ sleep?: (ms: number) => Promise<void>;
55
+ /** Timeout do postgres (ms). Default 60s — primeiro boot do volume é lento. */
56
+ postgresWaitMs?: number;
57
+ /** Timeout do redis no host (ms). Default 30s. */
58
+ redisWaitMs?: number;
59
+ /**
60
+ * Aplica o override (recria o serviço redis) quando o probe falha?
61
+ * `runDev` liga só quando a infra subiu agora ou já está rodando — quem
62
+ * recusou o passo de infra não tem serviço recriado às costas.
63
+ */
64
+ apply?: boolean;
65
+ }
66
+ /**
67
+ * Espera o Postgres do compose aceitar conexões — `pg_isready` no container
68
+ * (TCP connect não basta: durante o startup o socket aceita e o Postgres
69
+ * responde "the database system is starting up"). Se o container não existe
70
+ * (Postgres externo), cai no probe TCP do host.
71
+ */
72
+ export declare function waitForPostgresReady(runner: Runner, record: Record<string, string>, opts?: InfraWaitOptions): Promise<boolean>;
73
+ /** Override SOLO de dev: publica o redis em loopback para os apps de HOST. */
74
+ export declare const DEV_INFRA_OVERRIDE = "# Written by `okcms dev` \u2014 publishes Redis on loopback (127.0.0.1) so the\n# HOST processes (api/admin/web/worker from `okcms start`) can reach it.\n# The deploy re-runs compose WITHOUT this file: Redis goes back to\n# network-only (containers reach it as `redis` on okcms-net). The named\n# volume okcms-redis-data is untouched by both paths.\n#\n# Safe to delete; `okcms dev` rewrites it on the next run.\nservices:\n redis:\n ports:\n - \"127.0.0.1:${REDIS_PORT:-6379}:6379\"\n";
75
+ /**
76
+ * Garante o Redis alcançável do host quando o .env aponta para
77
+ * localhost/127.0.0.1: o compose de infra NÃO publica a 6379 (por design de
78
+ * produção), então o dev recria só o serviço redis com um override de dev
79
+ * (loopback) — volume preservado, deploy volta ao normal sem o override.
80
+ */
81
+ export declare function ensureRedisOnHost(prompt: Prompt, runner: Runner, cwd: string, record: Record<string, string>, opts?: InfraWaitOptions): Promise<void>;
82
+ /**
83
+ * Completa apenas as chaves ausentes/vazias: required sem valor recebe
84
+ * segredo gerado; o resto recebe o default do schema. Respeita `when`
85
+ * (ex.: DB_PASSWORD não existe quando o projeto usa DATABASE_URL).
86
+ * Devolve as chaves preenchidas (nunca os valores).
87
+ */
88
+ export declare function fillMissingEnv(env: EnvFile): string[];
89
+ export declare function runDev(opts: DevOptions): Promise<number>;
90
+ //# sourceMappingURL=dev.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"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"}
package/dist/dev.js ADDED
@@ -0,0 +1,391 @@
1
+ // @oktis-works/cms - `okcms dev` (F5)
2
+ //
3
+ // Um comando só para subir o ambiente de desenvolvimento do zero:
4
+ //
5
+ // 1. `.env` completa o que falta (segredos gerados, valores existentes
6
+ // NUNCA são tocados);
7
+ // 2. infra sobe o compose de infra do projeto (postgres + redis) —
8
+ // a MESMA infra que os alvos de `okcms deploy` reutilizam —
9
+ // e ESPERA o postgres aceitar conexões (pg_isready) antes
10
+ // de qualquer migration. O compose de infra não publica o
11
+ // redis no host (por design de produção); para os apps de
12
+ // HOST funcionarem, o dev escreve um override SOLO de dev
13
+ // em `.data/dev-infra.override.yml` que publica
14
+ // `127.0.0.1:6379` — o deploy recria o serviço sem ele
15
+ // (a porta some sozinha, o volume fica intacto);
16
+ // 3. banco schema core + seed idempotente + migrations de `./migrations`
17
+ // (o mesmo caminho do `okcms db:migrate`);
18
+ // 4. usuário se não existe NINGUÉM no banco, cria o primeiro admin
19
+ // (SUPER_ADMIN) pelo mesmo caminho do `okcms user:create`;
20
+ // 5. apps `okcms start` (api · admin · web · worker no host) e os
21
+ // endereços finais impressos (API/Admin/Web no localhost).
22
+ //
23
+ // Cada etapa é reexecutável — rodar de novo depois de um
24
+ // `docker compose down -v` recria tudo na hora.
25
+ //
26
+ // Pontos de colisão com `okcms deploy` (aqui tratados, não deixados pra lá):
27
+ //
28
+ // • PORTAS — os apps do `start` ocupam as mesmas portas que os containers
29
+ // do deploy; por isso o resumo final lembra sempre: `okcms stop` antes
30
+ // de `okcms deploy`. Se já houver apps rodando, o assistente pergunta se
31
+ // reinicia (para não brigar por porta).
32
+ // • .ENV — só chaves QUE FALTAM são escritas; nenhum valor existente é
33
+ // sobrescrito, e nenhum workaround "de dev" (ex.: REDIS_HOST=disabled)
34
+ // é gravado no arquivo: sem Docker o passo avisa e segue, deixando a
35
+ // decisão do operador.
36
+ // • BANCO — o compose de infra é o mesmo do deploy (projeto `okcms`); o
37
+ // schema é versionado e o seed é idempotente, então nada do que o dev
38
+ // faz é jogado fora quando você muda para produção.
39
+ //
40
+ // Fora de TTY o fluxo completo exige `--yes` (mesma política do
41
+ // `okcms update`); o primeiro usuário em scripts vem de
42
+ // `--email/--name/--password`.
43
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
44
+ import { connect } from 'node:net';
45
+ import { join } from 'node:path';
46
+ import { COMPOSE_INFRA_FILE, INFRA_PROJECT, composeAvailable, defaultRunner, dockerAvailable, infraCompose, } from './docker.js';
47
+ import { EnvFile, loadEnvFile } from './env-file.js';
48
+ import { ENV_FIELDS } from './env-schema.js';
49
+ import { assertHostOnly, generateSecret } from './guards.js';
50
+ import { loadProjectConfig } from './project-config.js';
51
+ import { Prompt } from './prompt.js';
52
+ const isEmail = (value) => /.+@.+\..+/.test(value) ? null : 'invalid email';
53
+ const nonEmpty = (value) => value.trim().length > 0 ? null : 'required';
54
+ const min8 = (value) => value.length >= 8 ? null : 'min 8 characters';
55
+ const defaultSleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
56
+ /** TCP reachável? Usado para esperar o postgres e checar o redis do host. */
57
+ export const defaultTcpProbe = (host, port, timeoutMs = 2000) => new Promise((resolve) => {
58
+ const socket = connect({ host, port, timeout: timeoutMs });
59
+ const settle = (ok) => {
60
+ socket.destroy();
61
+ resolve(ok);
62
+ };
63
+ socket.once('connect', () => settle(true));
64
+ socket.once('error', () => settle(false));
65
+ socket.once('timeout', () => settle(false));
66
+ });
67
+ /**
68
+ * Espera o Postgres do compose aceitar conexões — `pg_isready` no container
69
+ * (TCP connect não basta: durante o startup o socket aceita e o Postgres
70
+ * responde "the database system is starting up"). Se o container não existe
71
+ * (Postgres externo), cai no probe TCP do host.
72
+ */
73
+ export async function waitForPostgresReady(runner, record, opts = {}) {
74
+ const sleep = opts.sleep ?? defaultSleep;
75
+ const probe = opts.tcpProbe ?? defaultTcpProbe;
76
+ const timeoutMs = opts.postgresWaitMs ?? 60_000;
77
+ const deadline = Date.now() + timeoutMs;
78
+ const user = record['DB_USER'] || 'postgres';
79
+ const db = record['DB_NAME'] || 'okcms';
80
+ const hostPort = Number(record['DB_HOST_PORT'] || record['DB_PORT'] || 5432);
81
+ for (;;) {
82
+ const result = runner('docker', ['exec', 'okcms-postgres', 'pg_isready', '-U', user, '-d', db], { timeoutMs: 5_000 });
83
+ if (result.ok)
84
+ return true;
85
+ if (/No such container/i.test(result.stderr)) {
86
+ return probe('127.0.0.1', hostPort);
87
+ }
88
+ if (Date.now() >= deadline)
89
+ return false;
90
+ await sleep(2_000);
91
+ }
92
+ }
93
+ /** Override SOLO de dev: publica o redis em loopback para os apps de HOST. */
94
+ export const DEV_INFRA_OVERRIDE = `# Written by \`okcms dev\` — publishes Redis on loopback (127.0.0.1) so the
95
+ # HOST processes (api/admin/web/worker from \`okcms start\`) can reach it.
96
+ # The deploy re-runs compose WITHOUT this file: Redis goes back to
97
+ # network-only (containers reach it as \`redis\` on okcms-net). The named
98
+ # volume okcms-redis-data is untouched by both paths.
99
+ #
100
+ # Safe to delete; \`okcms dev\` rewrites it on the next run.
101
+ services:
102
+ redis:
103
+ ports:
104
+ - "127.0.0.1:\${REDIS_PORT:-6379}:6379"
105
+ `;
106
+ /**
107
+ * Garante o Redis alcançável do host quando o .env aponta para
108
+ * localhost/127.0.0.1: o compose de infra NÃO publica a 6379 (por design de
109
+ * produção), então o dev recria só o serviço redis com um override de dev
110
+ * (loopback) — volume preservado, deploy volta ao normal sem o override.
111
+ */
112
+ export async function ensureRedisOnHost(prompt, runner, cwd, record, opts = {}) {
113
+ const host = (record['REDIS_HOST'] ?? 'localhost').trim() || 'localhost';
114
+ if (host === 'disabled')
115
+ return;
116
+ if (!['localhost', '127.0.0.1', '::1'].includes(host))
117
+ return; // redis externo
118
+ const port = Number(record['REDIS_PORT'] || 6379);
119
+ const probe = opts.tcpProbe ?? defaultTcpProbe;
120
+ const sleep = opts.sleep ?? defaultSleep;
121
+ const timeoutMs = opts.redisWaitMs ?? 30_000;
122
+ if (await probe(host, port))
123
+ return; // já alcançável (compose novo ou override anterior)
124
+ const composeFile = join(cwd, COMPOSE_INFRA_FILE);
125
+ if (opts.apply === false ||
126
+ !dockerAvailable(runner) ||
127
+ !composeAvailable(runner).ok ||
128
+ !existsSync(composeFile)) {
129
+ prompt.warn(`redis not reachable at ${host}:${port} — worker queues will not connect`);
130
+ prompt.info('start the infrastructure (`okcms dev` → Yes), or set REDIS_HOST=disabled to run without queues (dev only)');
131
+ return;
132
+ }
133
+ prompt.info(`redis not published on the host — applying dev override (127.0.0.1:${port})`);
134
+ const overridePath = join('.data', 'dev-infra.override.yml');
135
+ mkdirSync(join(cwd, '.data'), { recursive: true });
136
+ writeFileSync(join(cwd, overridePath), DEV_INFRA_OVERRIDE, 'utf-8');
137
+ const result = runner('docker', [
138
+ 'compose', '-p', INFRA_PROJECT,
139
+ '-f', COMPOSE_INFRA_FILE,
140
+ '-f', overridePath,
141
+ 'up', '-d', 'redis',
142
+ ], { cwd, inherit: true, timeoutMs: 120_000 });
143
+ if (!result.ok) {
144
+ prompt.warn('failed to apply the redis dev override');
145
+ return;
146
+ }
147
+ const deadline = Date.now() + timeoutMs;
148
+ for (;;) {
149
+ if (await probe(host, port)) {
150
+ prompt.success(`redis is reachable at ${host}:${port}`);
151
+ return;
152
+ }
153
+ if (Date.now() >= deadline) {
154
+ prompt.warn(`redis still not reachable at ${host}:${port} — worker queues will retry`);
155
+ return;
156
+ }
157
+ await sleep(1_000);
158
+ }
159
+ }
160
+ /**
161
+ * Completa apenas as chaves ausentes/vazias: required sem valor recebe
162
+ * segredo gerado; o resto recebe o default do schema. Respeita `when`
163
+ * (ex.: DB_PASSWORD não existe quando o projeto usa DATABASE_URL).
164
+ * Devolve as chaves preenchidas (nunca os valores).
165
+ */
166
+ export function fillMissingEnv(env) {
167
+ const record = env.toRecord();
168
+ const filled = [];
169
+ for (const field of ENV_FIELDS) {
170
+ if ((record[field.key] ?? '').trim() !== '')
171
+ continue;
172
+ if (field.when && !field.when(record))
173
+ continue;
174
+ if (field.required) {
175
+ record[field.key] = generateSecret(48);
176
+ filled.push(field.key);
177
+ }
178
+ else if (field.default !== undefined) {
179
+ record[field.key] = field.default;
180
+ filled.push(field.key);
181
+ }
182
+ }
183
+ for (const key of filled)
184
+ env.set(key, record[key]);
185
+ return filled;
186
+ }
187
+ async function defaultHooks(log) {
188
+ return {
189
+ prepareDatabase: async () => {
190
+ const { getMigrationsDir, prepareDb } = await import('./db-prepare.js');
191
+ const { runMigrations } = await import('@oktis-works/database');
192
+ const tenantId = await prepareDb({});
193
+ const result = await runMigrations(tenantId, getMigrationsDir({}));
194
+ if (result.applied.length > 0 || result.skipped.length > 0) {
195
+ log(`✓ migrations: ${result.applied.length} applied, ${result.skipped.length} skipped`);
196
+ }
197
+ },
198
+ anyUserExists: async () => {
199
+ const { anyUserExists } = await import('./users.js');
200
+ return anyUserExists();
201
+ },
202
+ createUser: async (input) => {
203
+ const { createUserAccount } = await import('./users.js');
204
+ await createUserAccount({ ...input, role: input.role ?? 'SUPER_ADMIN' });
205
+ },
206
+ startApps: async () => {
207
+ const { startProject } = await import('./start.js');
208
+ await startProject({});
209
+ },
210
+ };
211
+ }
212
+ export async function runDev(opts) {
213
+ const cwd = opts.cwd ?? process.cwd();
214
+ const runner = opts.runner ?? defaultRunner;
215
+ const prompt = opts.prompt ?? new Prompt();
216
+ const log = opts.log ?? ((message) => console.log(message));
217
+ const interactive = prompt.interactive && opts.yes !== true;
218
+ const guard = assertHostOnly('okcms dev', { force: opts.force, probe: opts.probe });
219
+ if (!guard.ok) {
220
+ prompt.error(guard.message);
221
+ return 1;
222
+ }
223
+ // Mesma política do `okcms update`: sem TTY não existe assistente implícito.
224
+ if (!interactive && opts.yes !== true) {
225
+ prompt.warn('interactive confirmation required for the full dev setup.');
226
+ prompt.info('Run `okcms dev --yes` in scripts; add --email/--name/--password for the first user.');
227
+ return 1;
228
+ }
229
+ const hooks = opts.hooks ?? (await defaultHooks(log));
230
+ prompt.heading('OkCMS dev');
231
+ // ---- 1. .env -------------------------------------------------------------
232
+ const envPath = join(cwd, '.env');
233
+ const examplePath = join(cwd, '.env.example');
234
+ const env = existsSync(envPath)
235
+ ? loadEnvFile(envPath)
236
+ : new EnvFile(existsSync(examplePath) ? readFileSync(examplePath, 'utf-8') : '', envPath);
237
+ const missing = fillMissingEnv(env);
238
+ if (missing.length > 0) {
239
+ if (interactive) {
240
+ const go = await prompt.confirm(`Complete .env — ${missing.length} value(s) missing (secrets are generated, existing values are kept)?`, { defaultValue: true });
241
+ if (!go) {
242
+ prompt.error('.env is incomplete — `okcms dev` needs the required values to continue.');
243
+ return 1;
244
+ }
245
+ }
246
+ env.save();
247
+ prompt.success(`.env completed: ${missing.join(', ')}`);
248
+ }
249
+ else {
250
+ prompt.success('.env is ready');
251
+ }
252
+ // ---- 2. infra (compose do projeto — o mesmo que o deploy reutiliza) ------
253
+ const record = env.toRecord();
254
+ let startedInfra = false;
255
+ if (opts.noInfra !== true) {
256
+ const composeFile = join(cwd, COMPOSE_INFRA_FILE);
257
+ if (dockerAvailable(runner) && composeAvailable(runner).ok && existsSync(composeFile)) {
258
+ const go = !interactive ||
259
+ (await prompt.confirm('Start the infrastructure (docker compose: postgres + redis)?', {
260
+ defaultValue: true,
261
+ }));
262
+ if (go) {
263
+ prompt.write('\nStarting infrastructure...\n');
264
+ const result = infraCompose(cwd, ['up', '-d'], runner, true);
265
+ if (!result.ok) {
266
+ prompt.error('failed to start the infrastructure — run `docker compose -f docker-compose.infra.yml up -d` to see why');
267
+ return 1;
268
+ }
269
+ startedInfra = true;
270
+ prompt.success('infrastructure is up (postgres + redis)');
271
+ prompt.info('same infra reused by `okcms deploy` targets — nothing to redo later');
272
+ }
273
+ // Postgres NÃO aceita conexões no mesmo instante em que o container
274
+ // sobe (primeiro boot: init do volume leva ~10-30s) — sem esta espera
275
+ // as migrations falham com "the database system is starting up".
276
+ if (startedInfra || interactive) {
277
+ prompt.write('Waiting for postgres to accept connections...\n');
278
+ const ready = await waitForPostgresReady(runner, record, {
279
+ ...opts.infraWait,
280
+ postgresWaitMs: opts.infraWait?.postgresWaitMs ?? (startedInfra ? 60_000 : 10_000),
281
+ });
282
+ if (ready) {
283
+ prompt.success('postgres is ready');
284
+ }
285
+ else if (startedInfra) {
286
+ prompt.error('postgres did not accept connections in time — check `docker compose logs postgres`');
287
+ return 1;
288
+ }
289
+ else {
290
+ prompt.warn('postgres not reachable yet — continuing (migrations will surface the real error)');
291
+ }
292
+ }
293
+ // O compose de infra NÃO publica a 6379 no host (por design de
294
+ // produção) — mas os apps do `start` rodam NO host e precisam dela.
295
+ // Só recria o serviço quando a infra subiu agora (quem recusou o
296
+ // passo não tem container recriado às costas).
297
+ await ensureRedisOnHost(prompt, runner, cwd, record, {
298
+ ...opts.infraWait,
299
+ apply: startedInfra,
300
+ });
301
+ }
302
+ else {
303
+ prompt.warn('docker/compose not available — infrastructure step skipped');
304
+ prompt.info('point DB_* in .env at your own Postgres; REDIS_HOST=disabled runs without Redis (dev only, not written to .env)');
305
+ }
306
+ }
307
+ // ---- 3. banco: schema + seed + migrations -------------------------------
308
+ try {
309
+ await hooks.prepareDatabase();
310
+ }
311
+ catch (error) {
312
+ const message = error instanceof Error ? error.message : String(error);
313
+ prompt.error(`database setup failed: ${message}`);
314
+ if (/ECONNREFUSED|ENOTFOUND|ETIMEDOUT|starting up|Connection terminated/i.test(message)) {
315
+ prompt.info('the database is not reachable — rerun `okcms dev` and answer Yes to the infrastructure step,');
316
+ prompt.info('or point DB_HOST/DB_PORT/DATABASE_URL in .env at a running Postgres.');
317
+ }
318
+ return 1;
319
+ }
320
+ prompt.success('database ready (schema + seed + migrations)');
321
+ // ---- 4. primeiro usuário (se o banco está vazio) -------------------------
322
+ const hasUsers = await hooks.anyUserExists();
323
+ if (!hasUsers) {
324
+ prompt.info('no users yet — the first account becomes SUPER_ADMIN');
325
+ let email = opts.email;
326
+ let name = opts.name;
327
+ let password = opts.password;
328
+ if (interactive) {
329
+ email = email ?? (await prompt.ask('Admin email', { validate: isEmail }));
330
+ name = name ?? (await prompt.ask('Admin name', { validate: nonEmpty }));
331
+ password =
332
+ password ?? (await prompt.secret('Admin password (min 8 characters)', { validate: min8 }));
333
+ }
334
+ if (!email || !name || !password) {
335
+ prompt.error('first user required — pass --email, --name and --password (non-TTY)');
336
+ return 1;
337
+ }
338
+ await hooks.createUser({ email, name, password, role: 'SUPER_ADMIN' });
339
+ prompt.success(`first user created: ${email} (SUPER_ADMIN)`);
340
+ }
341
+ else {
342
+ prompt.success('users already exist — user creation skipped');
343
+ }
344
+ // ---- 5. apps -------------------------------------------------------------
345
+ const config = loadProjectConfig(cwd);
346
+ const urls = [
347
+ `API http://localhost:${config.ports.api}`,
348
+ `Admin http://localhost:${config.ports.admin}`,
349
+ `Web http://localhost:${config.ports.web}`,
350
+ ];
351
+ const finishNotStarted = () => {
352
+ prompt.success('dev environment ready');
353
+ prompt.info('start the apps with `okcms start` (or rerun `okcms dev`), then open:');
354
+ for (const url of urls)
355
+ prompt.info(` ${url}`);
356
+ prompt.info('deploying later? `okcms stop` first — dev processes hold the ports the containers need');
357
+ };
358
+ if (opts.skipStart === true) {
359
+ finishNotStarted();
360
+ return 0;
361
+ }
362
+ const { statusAll, stopAll } = await import('./runtime-state.js');
363
+ const running = statusAll(cwd).filter((entry) => entry.alive);
364
+ if (running.length > 0) {
365
+ const restart = interactive
366
+ ? await prompt.confirm(`${running.length} app(s) already running — restart them?`, {
367
+ defaultValue: true,
368
+ })
369
+ : true;
370
+ if (!restart) {
371
+ prompt.info('kept as is — `okcms status` to inspect, `okcms stop` to stop');
372
+ return 0;
373
+ }
374
+ stopAll('SIGTERM', cwd);
375
+ }
376
+ const goStart = !interactive ||
377
+ (await prompt.confirm('Start the apps now (api · admin · web · worker)?', {
378
+ defaultValue: true,
379
+ }));
380
+ if (!goStart) {
381
+ finishNotStarted();
382
+ return 0;
383
+ }
384
+ prompt.success('dev environment ready — starting the apps (Ctrl+C stops everything)');
385
+ for (const url of urls)
386
+ prompt.info(` ${url}`);
387
+ prompt.info('deploying later? `okcms stop` first — dev processes hold the ports the containers need');
388
+ await hooks.startApps();
389
+ return 0;
390
+ }
391
+ //# sourceMappingURL=dev.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold-docs.d.ts","sourceRoot":"","sources":["../src/scaffold-docs.ts"],"names":[],"mappings":"AAiBA,iDAAiD;AACjD,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC;AAEnC,0DAA0D;AAC1D,eAAO,MAAM,UAAU,EAAE,QAAQ,EAAiB,CAAC;AAEnD;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,QAAe,CAAC;AAEhD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,QAAQ,GAAG,IAAI,CAW/E;AAED,mDAAmD;AACnD,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAEpD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAQ9D;AAojCD;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,WAAW,EAAE,MAAM,EACnB,IAAI,GAAE,QAA4B,GACjC,MAAM,CAGR;AAED,kCAAkC;AAClC,wBAAgB,SAAS,CAAC,IAAI,GAAE,QAA4B,GAAG,MAAM,CAEpE;AAED,iCAAiC;AACjC,wBAAgB,QAAQ,CAAC,IAAI,GAAE,QAA4B,GAAG,MAAM,CAEnE"}
1
+ {"version":3,"file":"scaffold-docs.d.ts","sourceRoot":"","sources":["../src/scaffold-docs.ts"],"names":[],"mappings":"AAiBA,iDAAiD;AACjD,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC;AAEnC,0DAA0D;AAC1D,eAAO,MAAM,UAAU,EAAE,QAAQ,EAAiB,CAAC;AAEnD;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,QAAe,CAAC;AAEhD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,QAAQ,GAAG,IAAI,CAW/E;AAED,mDAAmD;AACnD,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAEpD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAQ9D;AAglCD;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,WAAW,EAAE,MAAM,EACnB,IAAI,GAAE,QAA4B,GACjC,MAAM,CAGR;AAED,kCAAkC;AAClC,wBAAgB,SAAS,CAAC,IAAI,GAAE,QAA4B,GAAG,MAAM,CAEpE;AAED,iCAAiC;AACjC,wBAAgB,QAAQ,CAAC,IAAI,GAAE,QAA4B,GAAG,MAAM,CAEnE"}
@@ -105,6 +105,20 @@ Pré-requisitos: **Node 20+** ou **Bun 1.3+** · **PostgreSQL 16+** (obrigatóri
105
105
  > \`okcms\`. Para o bootstrap sem instalação global, use
106
106
  > \`npx @oktis-works/cms@latest init\` ou \`bunx @oktis-works/cms@latest init\`.
107
107
 
108
+ Atalho — \`okcms dev\` faz tudo em um comando: completa o \`.env\` (gera os
109
+ segredos que faltam, mantém os existentes), sobe a infra (o MESMO compose
110
+ que o \`okcms deploy\` reutiliza) e espera o Postgres aceitar conexões antes
111
+ das migrations, torna o Redis alcançável do host (via override só-de-dev
112
+ em \`.data/dev-infra.override.yml\`, que o deploy não lê), aplica schema +
113
+ seed + migrations, cria o primeiro admin (\`SUPER_ADMIN\`) se o banco estiver
114
+ vazio, sobe os apps e imprime os endereços finais (API · Admin · Web no
115
+ localhost). É reexecutável; sem TTY exige \`--yes\` (com
116
+ \`--email/--name/--password\`).
117
+ Indo para produção: \`okcms stop\` antes de \`okcms deploy\` — os processos
118
+ do dev ocupam as mesmas portas que os containers.
119
+
120
+ O passo a passo manual:
121
+
108
122
  \`\`\`bash
109
123
  # 1. Banco no .env — escolha UM formato:
110
124
  # (a) variáveis separadas (default)
@@ -397,6 +411,20 @@ Prerequisites: **Node 20+** or **Bun 1.3+** · **PostgreSQL 16+** (required) ·
397
411
  > For bootstrap without a global install, use
398
412
  > \`npx @oktis-works/cms@latest init\` or \`bunx @oktis-works/cms@latest init\`.
399
413
 
414
+ Shortcut — \`okcms dev\` does everything in one command: completes \`.env\`
415
+ (generating missing secrets, keeping existing values), starts the infra
416
+ (the SAME compose \`okcms deploy\` reuses) and waits for Postgres to accept
417
+ connections before migrating, makes Redis reachable from the host (via a
418
+ dev-only override in \`.data/dev-infra.override.yml\` that the deploy never
419
+ reads), applies schema + seed + migrations, creates the first admin
420
+ (\`SUPER_ADMIN\`) when the database is empty, starts the apps and prints the
421
+ final URLs (API · Admin · Web on localhost). Re-runnable; non-TTY requires
422
+ \`--yes\` (with \`--email/--name/--password\`). Going to production: \`okcms stop\` before
423
+ \`okcms deploy\` — the dev processes hold the same ports the containers
424
+ need.
425
+
426
+ The manual step by step:
427
+
400
428
  \`\`\`bash
401
429
  # 1. Database in .env — pick ONE format:
402
430
  # (a) separate variables (default)
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold-docs.js","sourceRoot":"","sources":["../src/scaffold-docs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scaffold-docs.js","sourceRoot":"","sources":["../src/scaffold-docs.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,wEAAwE;AACxE,gFAAgF;AAChF,EAAE;AACF,sEAAsE;AACtE,6EAA6E;AAC7E,yDAAyD;AACzD,EAAE;AACF,0EAA0E;AAC1E,8EAA8E;AAC9E,gFAAgF;AAChF,8EAA8E;AAE9E,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAKjC,0DAA0D;AAC1D,MAAM,CAAC,MAAM,UAAU,GAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAEnD;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAa,IAAI,CAAC;AAEhD;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,KAAgC;IAC5D,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACvD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,IAAI,UAAU,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IACnC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACjF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9F,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,mDAAmD;AACnD,MAAM,UAAU,aAAa,CAAC,IAAc;IAC1C,OAAO,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,GAAW;IAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAC1C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,iBAAiB,CAAC;IAEtD,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAClD,IAAI,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;QAAE,OAAO,IAAI,CAAC;IACxF,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;QAAE,OAAO,IAAI,CAAC;IACxF,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED,8DAA8D;AAC9D,SAAS,eAAe,CAAC,WAAmB;IAC1C,OAAO,KAAK,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8SxB,CAAC;AACF,CAAC;AAED,2DAA2D;AAC3D,SAAS,eAAe,CAAC,WAAmB;IAC1C,OAAO,KAAK,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8SxB,CAAC;AACF,CAAC;AAED,kEAAkE;AAClE,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAmCY,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuF5C,CAAC;AAEF,+DAA+D;AAC/D,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAkCa,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgF5C,CAAC;AAEF,sDAAsD;AACtD,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAmCY,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuF5C,CAAC;AAEF,oDAAoD;AACpD,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAkCa,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgF5C,CAAC;AAEF,8EAA8E;AAC9E,sEAAsE;AACtE,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,UAAU,aAAa,CAC3B,WAAmB,EACnB,OAAiB,iBAAiB;IAElC,MAAM,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;IAC3F,OAAO,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;AACjD,CAAC;AAED,kCAAkC;AAClC,MAAM,UAAU,SAAS,CAAC,OAAiB,iBAAiB;IAC1D,OAAO,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC;AACvD,CAAC;AAED,iCAAiC;AACjC,MAAM,UAAU,QAAQ,CAAC,OAAiB,iBAAiB;IACzD,OAAO,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC;AACrD,CAAC"}
@@ -0,0 +1,19 @@
1
+ /** Papéis canônicos da política RBAC (slugs em MAIÚSCULAS). */
2
+ export declare const VALID_ROLES: readonly ["SUPER_ADMIN", "TENANT_ADMIN", "EDITOR", "AUTHOR", "VIEWER"];
3
+ export interface CreateUserInput {
4
+ email: string;
5
+ name: string;
6
+ password: string;
7
+ /** Default: EDITOR. */
8
+ role?: string;
9
+ /** Slug do tenant. Default: `default`. */
10
+ tenant?: string;
11
+ }
12
+ /**
13
+ * Cria o usuário, aplica o hash e vincula o papel no tenant (upsert —
14
+ * reativar um usuário desvinculado funciona). Lança Error descritiva.
15
+ */
16
+ export declare function createUserAccount(input: CreateUserInput): Promise<void>;
17
+ /** Existe algum usuário no banco? (para o `dev` decidir criar o admin) */
18
+ export declare function anyUserExists(): Promise<boolean>;
19
+ //# sourceMappingURL=users.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"users.d.ts","sourceRoot":"","sources":["../src/users.ts"],"names":[],"mappings":"AAQA,+DAA+D;AAC/D,eAAO,MAAM,WAAW,wEAAyE,CAAC;AAElG,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAkD7E;AAED,0EAA0E;AAC1E,wBAAsB,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC,CAMtD"}
package/dist/users.js ADDED
@@ -0,0 +1,55 @@
1
+ // @oktis-works/cms - Criação de usuários (comandos `user:create` e `dev`)
2
+ //
3
+ // Extraído de commands.ts para que o `okcms dev` crie o primeiro usuário
4
+ // pelo MESMO caminho do `user:create` — uma fonte de verdade para hash,
5
+ // RBAC e vínculo tenant.
6
+ import { initDb } from './db-init.js';
7
+ /** Papéis canônicos da política RBAC (slugs em MAIÚSCULAS). */
8
+ export const VALID_ROLES = ['SUPER_ADMIN', 'TENANT_ADMIN', 'EDITOR', 'AUTHOR', 'VIEWER'];
9
+ /**
10
+ * Cria o usuário, aplica o hash e vincula o papel no tenant (upsert —
11
+ * reativar um usuário desvinculado funciona). Lança Error descritiva.
12
+ */
13
+ export async function createUserAccount(input) {
14
+ // A política RBAC usa slugs em MAIÚSCULAS: `--role editor` → EDITOR.
15
+ const roleSlug = (input.role ?? 'EDITOR').toUpperCase();
16
+ if (!VALID_ROLES.includes(roleSlug)) {
17
+ throw new Error(`Invalid role: ${roleSlug} — use one of: ${VALID_ROLES.join(', ')}`);
18
+ }
19
+ await initDb();
20
+ const { ensureCoreSchema, resolveTenantId, seedDefaultRoles, getConnection } = await import('@oktis-works/database');
21
+ const { hashPassword } = await import('@oktis-works/auth');
22
+ const { randomUUID } = await import('node:crypto');
23
+ await ensureCoreSchema();
24
+ await seedDefaultRoles();
25
+ const sql = getConnection();
26
+ const existing = await sql.unsafe('SELECT id FROM users WHERE email = $1', [input.email]);
27
+ if (existing.length > 0) {
28
+ throw new Error(`User already exists: ${input.email}`);
29
+ }
30
+ const passwordHash = await hashPassword(input.password);
31
+ const userId = randomUUID();
32
+ await sql.unsafe(`INSERT INTO users (id, email, name, password_hash, status)
33
+ VALUES ($1, $2, $3, $4, 'ACTIVE')`, [userId, input.email, input.name, passwordHash]);
34
+ const tenantId = await resolveTenantId(input.tenant ?? 'default');
35
+ const roles = await sql.unsafe(`SELECT id FROM roles
36
+ WHERE slug = $1 AND (tenant_id IS NULL OR tenant_id = $2)
37
+ ORDER BY tenant_id NULLS LAST
38
+ LIMIT 1`, [roleSlug, tenantId]);
39
+ if (roles.length === 0) {
40
+ throw new Error(`Role "${roleSlug}" not found after seeding.`);
41
+ }
42
+ await sql.unsafe(`INSERT INTO tenant_users (tenant_id, user_id, role_id, status)
43
+ VALUES ($1, $2, $3, 'ACTIVE')
44
+ ON CONFLICT (tenant_id, user_id)
45
+ DO UPDATE SET role_id = EXCLUDED.role_id, status = 'ACTIVE'`, [tenantId, userId, roles[0]['id']]);
46
+ }
47
+ /** Existe algum usuário no banco? (para o `dev` decidir criar o admin) */
48
+ export async function anyUserExists() {
49
+ await initDb();
50
+ const { ensureCoreSchema, getConnection } = await import('@oktis-works/database');
51
+ await ensureCoreSchema();
52
+ const rows = await getConnection().unsafe('SELECT 1 AS one FROM users LIMIT 1');
53
+ return rows.length > 0;
54
+ }
55
+ //# sourceMappingURL=users.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"users.js","sourceRoot":"","sources":["../src/users.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,EAAE;AACF,yEAAyE;AACzE,wEAAwE;AACxE,yBAAyB;AAEzB,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,+DAA+D;AAC/D,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,aAAa,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAC;AAYlG;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,KAAsB;IAC5D,qEAAqE;IACrE,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IACxD,IAAI,CAAE,WAAiC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,KAAK,CAAC,iBAAiB,QAAQ,kBAAkB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvF,CAAC;IAED,MAAM,MAAM,EAAE,CAAC;IACf,MAAM,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CACzF,uBAAuB,CACxB,CAAC;IACF,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAC3D,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;IAEnD,MAAM,gBAAgB,EAAE,CAAC;IACzB,MAAM,gBAAgB,EAAE,CAAC;IAEzB,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;IAC5B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,uCAAuC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1F,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,wBAAwB,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAC5B,MAAM,GAAG,CAAC,MAAM,CACd;uCACmC,EACnC,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC,CAChD,CAAC;IAEF,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC;IAClE,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,MAAM,CAC5B;;;aAGS,EACT,CAAC,QAAQ,EAAE,QAAQ,CAAC,CACrB,CAAC;IACF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,SAAS,QAAQ,4BAA4B,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,GAAG,CAAC,MAAM,CACd;;;iEAG6D,EAC7D,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAE,CAAC,IAAI,CAAW,CAAC,CAC9C,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,MAAM,EAAE,CAAC;IACf,MAAM,EAAE,gBAAgB,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;IAClF,MAAM,gBAAgB,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,MAAM,aAAa,EAAE,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC;IAChF,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;AACzB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oktis-works/cms",
3
- "version": "0.6.3",
3
+ "version": "0.6.5",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",