@oktis-works/cms 0.8.10 → 0.8.12
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/dist/commands.d.ts.map +1 -1
- package/dist/commands.js +39 -3
- package/dist/commands.js.map +1 -1
- package/dist/config-wizard.d.ts.map +1 -1
- package/dist/config-wizard.js +5 -1
- package/dist/config-wizard.js.map +1 -1
- package/dist/dev.d.ts.map +1 -1
- package/dist/dev.js +7 -1
- package/dist/dev.js.map +1 -1
- package/dist/docker.d.ts.map +1 -1
- package/dist/docker.js +6 -0
- package/dist/docker.js.map +1 -1
- package/dist/env-file.d.ts +30 -0
- package/dist/env-file.d.ts.map +1 -1
- package/dist/env-file.js +52 -1
- package/dist/env-file.js.map +1 -1
- package/dist/extension-scaffold.d.ts +5 -2
- package/dist/extension-scaffold.d.ts.map +1 -1
- package/dist/extension-scaffold.js +30 -8
- package/dist/extension-scaffold.js.map +1 -1
- package/dist/scaffold-docs.d.ts.map +1 -1
- package/dist/scaffold-docs.js +56 -24
- package/dist/scaffold-docs.js.map +1 -1
- package/dist/scaffold.d.ts.map +1 -1
- package/dist/scaffold.js +12 -1
- package/dist/scaffold.js.map +1 -1
- package/dist/theme-assets.d.ts +12 -0
- package/dist/theme-assets.d.ts.map +1 -0
- package/dist/theme-assets.js +199 -0
- package/dist/theme-assets.js.map +1 -0
- package/dist/wizard-env.d.ts.map +1 -1
- package/dist/wizard-env.js +6 -1
- package/dist/wizard-env.js.map +1 -1
- package/migrations/V010__core__harden_themes_lifecycle.sql +36 -0
- package/package.json +4 -4
package/dist/env-file.d.ts
CHANGED
|
@@ -42,4 +42,34 @@ export declare class EnvFile {
|
|
|
42
42
|
export declare function parseEnv(text: string): EnvFile;
|
|
43
43
|
/** Lê `.env` (ou `.env.example` como fallback) — nunca lança se não existe. */
|
|
44
44
|
export declare function loadEnvFile(path: string): EnvFile;
|
|
45
|
+
/**
|
|
46
|
+
* Sincroniza `process.env` a partir do arquivo: valor NÃO-VAZIO do `.env`
|
|
47
|
+
* vence o que está no processo.
|
|
48
|
+
*
|
|
49
|
+
* Por que isso é necessário: o bun carrega o `.env` do cwd no START de cada
|
|
50
|
+
* processo e NÃO sobrescreve o que já está definido — quem edita o arquivo
|
|
51
|
+
* depois (entrevista do wizard, `okcms config`) deixa o processo — e todos os
|
|
52
|
+
* filhos que ele spawnar — com um snapshot antigo, frequentemente com o
|
|
53
|
+
* placeholder VAZIO que o `okcms init` grava (`DB_PASSWORD=`). Uma env vazia
|
|
54
|
+
* não é um segredo: é lixo que apaga o valor do arquivo no docker compose (a
|
|
55
|
+
* env do processo vence do `--env-file` na interpolação) e nas conexões
|
|
56
|
+
* (`@oktis-works/config` só preenche chaves `undefined`, então `''` vira
|
|
57
|
+
* senha). Valor vazio no arquivo não toca o processo — exportação de
|
|
58
|
+
* shell/CI segue valendo quando o arquivo não define nada.
|
|
59
|
+
*
|
|
60
|
+
* Devolve as chaves aplicadas (nunca os valores).
|
|
61
|
+
*/
|
|
62
|
+
export declare function syncProcessEnv(env: EnvFile): string[];
|
|
63
|
+
/**
|
|
64
|
+
* `process.env` com o `.env` da RAIZ do projeto por cima — a env que um
|
|
65
|
+
* subprocesso deve receber para enxergar o arquivo, não o snapshot congelado
|
|
66
|
+
* do processo pai. `docker compose` dá precedência à env do processo sobre o
|
|
67
|
+
* `--env-file`; sem este merge, `DB_PASSWORD=''` herdado (placeholder do
|
|
68
|
+
* init, carregado pelo bun no start) faz a interpolação falhar com
|
|
69
|
+
* "required variable DB_PASSWORD is missing a value" mesmo com o valor
|
|
70
|
+
* certinho na .env da raiz.
|
|
71
|
+
*
|
|
72
|
+
* Não muta `process.env` — devolve uma cópia para repassar ao spawn.
|
|
73
|
+
*/
|
|
74
|
+
export declare function projectProcessEnv(cwd: string): NodeJS.ProcessEnv;
|
|
45
75
|
//# sourceMappingURL=env-file.d.ts.map
|
package/dist/env-file.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env-file.d.ts","sourceRoot":"","sources":["../src/env-file.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,OAAO;IACtB,yEAAyE;IACzE,IAAI,EAAE,QAAQ,GAAG,KAAK,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA+CD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKvD;AAED,qBAAa,OAAO;IAClB,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;gBAEjB,IAAI,SAAK,EAAE,IAAI,GAAE,MAAM,GAAG,IAAW;IAOjD,6CAA6C;IAC7C,QAAQ,IAAI,MAAM;IAIlB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAMpC,sEAAsE;IACtE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIzB,IAAI,IAAI,MAAM,EAAE;IAQhB,2CAA2C;IAC3C,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAQlC;;;OAGG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IA2BxC,iEAAiE;IACjE,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAM5B,+EAA+E;IAC/E,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;IA2BtE,IAAI,CAAC,IAAI,gBAAY,EAAE,IAAI,SAAQ,GAAG,IAAI;CAW3C;AAWD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE9C;AAED,+EAA+E;AAC/E,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGjD"}
|
|
1
|
+
{"version":3,"file":"env-file.d.ts","sourceRoot":"","sources":["../src/env-file.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,OAAO;IACtB,yEAAyE;IACzE,IAAI,EAAE,QAAQ,GAAG,KAAK,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA+CD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKvD;AAED,qBAAa,OAAO;IAClB,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;gBAEjB,IAAI,SAAK,EAAE,IAAI,GAAE,MAAM,GAAG,IAAW;IAOjD,6CAA6C;IAC7C,QAAQ,IAAI,MAAM;IAIlB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAMpC,sEAAsE;IACtE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIzB,IAAI,IAAI,MAAM,EAAE;IAQhB,2CAA2C;IAC3C,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAQlC;;;OAGG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IA2BxC,iEAAiE;IACjE,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAM5B,+EAA+E;IAC/E,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;IA2BtE,IAAI,CAAC,IAAI,gBAAY,EAAE,IAAI,SAAQ,GAAG,IAAI;CAW3C;AAWD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE9C;AAED,+EAA+E;AAC/E,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGjD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,EAAE,CASrD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,UAAU,CAQhE"}
|
package/dist/env-file.js
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
// arquivo é parseado em LINHAS — só a linha da chave muda, o resto passa
|
|
7
7
|
// byte a byte.
|
|
8
8
|
import { chmodSync, existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
9
|
-
import { dirname } from 'node:path';
|
|
9
|
+
import { dirname, join } from 'node:path';
|
|
10
10
|
const ASSIGN_RE = /^([ \t]*(?:export[ \t]+)?)([A-Za-z_][A-Za-z0-9_]*)([ \t]*=[ \t]*)(.*)$/;
|
|
11
11
|
/**
|
|
12
12
|
* Separa `valor # comentário` sem cortar `#` dentro de aspas nem fragmentos
|
|
@@ -197,4 +197,55 @@ export function loadEnvFile(path) {
|
|
|
197
197
|
return new EnvFile('', path);
|
|
198
198
|
return new EnvFile(readFileSync(path, 'utf-8'), path);
|
|
199
199
|
}
|
|
200
|
+
/**
|
|
201
|
+
* Sincroniza `process.env` a partir do arquivo: valor NÃO-VAZIO do `.env`
|
|
202
|
+
* vence o que está no processo.
|
|
203
|
+
*
|
|
204
|
+
* Por que isso é necessário: o bun carrega o `.env` do cwd no START de cada
|
|
205
|
+
* processo e NÃO sobrescreve o que já está definido — quem edita o arquivo
|
|
206
|
+
* depois (entrevista do wizard, `okcms config`) deixa o processo — e todos os
|
|
207
|
+
* filhos que ele spawnar — com um snapshot antigo, frequentemente com o
|
|
208
|
+
* placeholder VAZIO que o `okcms init` grava (`DB_PASSWORD=`). Uma env vazia
|
|
209
|
+
* não é um segredo: é lixo que apaga o valor do arquivo no docker compose (a
|
|
210
|
+
* env do processo vence do `--env-file` na interpolação) e nas conexões
|
|
211
|
+
* (`@oktis-works/config` só preenche chaves `undefined`, então `''` vira
|
|
212
|
+
* senha). Valor vazio no arquivo não toca o processo — exportação de
|
|
213
|
+
* shell/CI segue valendo quando o arquivo não define nada.
|
|
214
|
+
*
|
|
215
|
+
* Devolve as chaves aplicadas (nunca os valores).
|
|
216
|
+
*/
|
|
217
|
+
export function syncProcessEnv(env) {
|
|
218
|
+
const applied = [];
|
|
219
|
+
for (const [key, value] of Object.entries(env.toRecord())) {
|
|
220
|
+
if (value.trim() === '')
|
|
221
|
+
continue;
|
|
222
|
+
if (process.env[key] === value)
|
|
223
|
+
continue;
|
|
224
|
+
process.env[key] = value;
|
|
225
|
+
applied.push(key);
|
|
226
|
+
}
|
|
227
|
+
return applied;
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* `process.env` com o `.env` da RAIZ do projeto por cima — a env que um
|
|
231
|
+
* subprocesso deve receber para enxergar o arquivo, não o snapshot congelado
|
|
232
|
+
* do processo pai. `docker compose` dá precedência à env do processo sobre o
|
|
233
|
+
* `--env-file`; sem este merge, `DB_PASSWORD=''` herdado (placeholder do
|
|
234
|
+
* init, carregado pelo bun no start) faz a interpolação falhar com
|
|
235
|
+
* "required variable DB_PASSWORD is missing a value" mesmo com o valor
|
|
236
|
+
* certinho na .env da raiz.
|
|
237
|
+
*
|
|
238
|
+
* Não muta `process.env` — devolve uma cópia para repassar ao spawn.
|
|
239
|
+
*/
|
|
240
|
+
export function projectProcessEnv(cwd) {
|
|
241
|
+
const merged = { ...process.env };
|
|
242
|
+
const path = join(cwd, '.env');
|
|
243
|
+
if (!existsSync(path))
|
|
244
|
+
return merged;
|
|
245
|
+
for (const [key, value] of Object.entries(loadEnvFile(path).toRecord())) {
|
|
246
|
+
if (value.trim() !== '')
|
|
247
|
+
merged[key] = value;
|
|
248
|
+
}
|
|
249
|
+
return merged;
|
|
250
|
+
}
|
|
200
251
|
//# sourceMappingURL=env-file.js.map
|
package/dist/env-file.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env-file.js","sourceRoot":"","sources":["../src/env-file.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,EAAE;AACF,6EAA6E;AAC7E,0EAA0E;AAC1E,yEAAyE;AACzE,yEAAyE;AACzE,eAAe;AAEf,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxF,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"env-file.js","sourceRoot":"","sources":["../src/env-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,8 +9,11 @@ export interface ScaffoldExtensionResult {
|
|
|
9
9
|
export declare function scaffoldPlugin(name: string, baseDir?: string): ScaffoldExtensionResult;
|
|
10
10
|
export type ScaffoldThemeStyle = 'css' | 'scss' | 'tailwind';
|
|
11
11
|
/**
|
|
12
|
-
* Gera um tema
|
|
13
|
-
*
|
|
12
|
+
* Gera um tema no formato que o runtime do web realmente renderiza:
|
|
13
|
+
* `*.astro` NA RAIZ do tema (hierarquia home/index/single/page/archive/404),
|
|
14
|
+
* manifesto theme.json completo (type + compatibility + provides.layouts) e
|
|
15
|
+
* estilos conforme engine — no engine `css`, o `dist/theme.css` já sai
|
|
16
|
+
* servível (o site linka somente esse caminho, sem build).
|
|
14
17
|
* @param style escolha exclusiva: css | scss | tailwind (default css)
|
|
15
18
|
*/
|
|
16
19
|
export declare function scaffoldTheme(name: string, baseDir?: string, style?: ScaffoldThemeStyle): ScaffoldExtensionResult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-scaffold.d.ts","sourceRoot":"","sources":["../src/extension-scaffold.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"extension-scaffold.d.ts","sourceRoot":"","sources":["../src/extension-scaffold.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAQD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,uBAAuB,CA2CtF;AAED,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,MAAM,GAAG,UAAU,CAAC;AAE7D;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,GAAE,kBAA0B,GAAG,uBAAuB,CA4ExH"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import { mkdirSync, writeFileSync, existsSync } from 'node:fs';
|
|
3
3
|
import { join, resolve } from 'node:path';
|
|
4
4
|
import { CMS_VERSION, assertCompatible } from '@oktis-works/validation';
|
|
5
|
+
import { DEFAULT_THEME_CSS, THEME_TEMPLATE_FILES } from './theme-assets.js';
|
|
5
6
|
function assertSafeName(name) {
|
|
6
7
|
if (!/^[a-z0-9][a-z0-9-_]*$/i.test(name) || name.includes('..')) {
|
|
7
8
|
throw new Error(`Invalid name: "${name}" (use [a-z0-9-_])`);
|
|
@@ -46,8 +47,11 @@ export function scaffoldPlugin(name, baseDir) {
|
|
|
46
47
|
return { dir, manifest };
|
|
47
48
|
}
|
|
48
49
|
/**
|
|
49
|
-
* Gera um tema
|
|
50
|
-
*
|
|
50
|
+
* Gera um tema no formato que o runtime do web realmente renderiza:
|
|
51
|
+
* `*.astro` NA RAIZ do tema (hierarquia home/index/single/page/archive/404),
|
|
52
|
+
* manifesto theme.json completo (type + compatibility + provides.layouts) e
|
|
53
|
+
* estilos conforme engine — no engine `css`, o `dist/theme.css` já sai
|
|
54
|
+
* servível (o site linka somente esse caminho, sem build).
|
|
51
55
|
* @param style escolha exclusiva: css | scss | tailwind (default css)
|
|
52
56
|
*/
|
|
53
57
|
export function scaffoldTheme(name, baseDir, style = 'css') {
|
|
@@ -59,6 +63,10 @@ export function scaffoldTheme(name, baseDir, style = 'css') {
|
|
|
59
63
|
description: `Theme ${name} for OkCMS`,
|
|
60
64
|
type: 'theme',
|
|
61
65
|
compatibility: { okcms: `^${CMS_VERSION}` },
|
|
66
|
+
provides: {
|
|
67
|
+
layouts: ['home', 'index', 'single', 'page', 'archive', '404'],
|
|
68
|
+
...(style === 'css' ? { assets: ['dist/theme.css'] } : {}),
|
|
69
|
+
},
|
|
62
70
|
...(styleConfig ? { stylesConfig: styleConfig } : {}),
|
|
63
71
|
};
|
|
64
72
|
const selfCheck = { ...manifest };
|
|
@@ -66,10 +74,12 @@ export function scaffoldTheme(name, baseDir, style = 'css') {
|
|
|
66
74
|
const dir = resolve(baseDir ?? join(process.cwd(), 'themes'), name);
|
|
67
75
|
if (existsSync(dir))
|
|
68
76
|
throw new Error(`Directory already exists: ${dir}`);
|
|
69
|
-
mkdirSync(
|
|
77
|
+
mkdirSync(dir, { recursive: true });
|
|
70
78
|
writeFileSync(join(dir, 'theme.json'), JSON.stringify(manifest, null, 2));
|
|
71
|
-
|
|
72
|
-
|
|
79
|
+
// Templates da hierarquia na raiz — é o que o catch-all do web procura.
|
|
80
|
+
for (const [file, content] of Object.entries(THEME_TEMPLATE_FILES)) {
|
|
81
|
+
writeFileSync(join(dir, file), content);
|
|
82
|
+
}
|
|
73
83
|
if (style === 'scss') {
|
|
74
84
|
mkdirSync(join(dir, 'styles'), { recursive: true });
|
|
75
85
|
writeFileSync(join(dir, 'styles', 'main.scss'), `$brand: #6366f1;\n\n.site { color: $brand; }\n.single { max-width: 720px; margin: 0 auto; }\n`);
|
|
@@ -81,7 +91,7 @@ export function scaffoldTheme(name, baseDir, style = 'css') {
|
|
|
81
91
|
writeFileSync(join(dir, 'tailwind.config.js'), [
|
|
82
92
|
`/** @type {import('tailwindcss').Config} */`,
|
|
83
93
|
`module.exports = {`,
|
|
84
|
-
` content: ["
|
|
94
|
+
` content: ["./**/*.astro"],`,
|
|
85
95
|
` corePlugins: { preflight: false },`,
|
|
86
96
|
` // isolamento fino: importante apenas dentro do tema pode ser ativado via important: '[data-theme="${name}"]'`,
|
|
87
97
|
`};`,
|
|
@@ -89,9 +99,21 @@ export function scaffoldTheme(name, baseDir, style = 'css') {
|
|
|
89
99
|
].join('\n'));
|
|
90
100
|
}
|
|
91
101
|
else {
|
|
92
|
-
|
|
102
|
+
// engine css: servível direto de dist/theme.css (caminho que o web linka)
|
|
103
|
+
mkdirSync(join(dir, 'dist'), { recursive: true });
|
|
104
|
+
writeFileSync(join(dir, 'dist', 'theme.css'), DEFAULT_THEME_CSS);
|
|
93
105
|
}
|
|
94
|
-
writeFileSync(join(dir, 'README.md'), [
|
|
106
|
+
writeFileSync(join(dir, 'README.md'), [
|
|
107
|
+
`# ${name}`,
|
|
108
|
+
'',
|
|
109
|
+
`Tema OkCMS.`,
|
|
110
|
+
'',
|
|
111
|
+
`- Manifest: theme.json`,
|
|
112
|
+
`- Templates: *.astro na raiz (home, index, single, page, archive, 404)`,
|
|
113
|
+
`- Contexto do template: site.*, page.*, content.*, items, menus, settings`,
|
|
114
|
+
`- Engine: ${style}${style === 'css' ? ' (dist/theme.css servido direto)' : ' (okcms theme:build → dist/theme.css)'}`,
|
|
115
|
+
'',
|
|
116
|
+
].join('\n'));
|
|
95
117
|
return { dir, manifest };
|
|
96
118
|
}
|
|
97
119
|
//# sourceMappingURL=extension-scaffold.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-scaffold.js","sourceRoot":"","sources":["../src/extension-scaffold.ts"],"names":[],"mappings":"AAAA,iEAAiE;AAEjE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"extension-scaffold.js","sourceRoot":"","sources":["../src/extension-scaffold.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;
|
|
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;AAknCD;;;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"}
|
package/dist/scaffold-docs.js
CHANGED
|
@@ -815,10 +815,14 @@ okcms theme:create --name meu-tema --style css # css | scss | tailwind
|
|
|
815
815
|
\`\`\`
|
|
816
816
|
themes/meu-tema/
|
|
817
817
|
├── theme.json # manifest (type: theme + compatibilidade)
|
|
818
|
-
├── templates
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
├──
|
|
818
|
+
├── home.astro # templates da hierarquia NA RAIZ
|
|
819
|
+
├── index.astro
|
|
820
|
+
├── single.astro
|
|
821
|
+
├── page.astro
|
|
822
|
+
├── archive.astro
|
|
823
|
+
├── 404.astro
|
|
824
|
+
├── dist/theme.css # engine css — já servível
|
|
825
|
+
│ # (ou styles/main.scss — ou src/input.css)
|
|
822
826
|
└── README.md
|
|
823
827
|
\`\`\`
|
|
824
828
|
|
|
@@ -841,11 +845,13 @@ automaticamente, como nos plugins.
|
|
|
841
845
|
|
|
842
846
|
### Templates
|
|
843
847
|
|
|
844
|
-
|
|
848
|
+
Templates são arquivos \`*.astro\` **na raiz do tema** — é o formato que o
|
|
849
|
+
runtime do site busca (hierarquia \`home\` → \`index\` → \`404\`, com fallback
|
|
850
|
+
\`_shared\` → \`default\`). Sintaxe com variáveis, HTML cru e laços/condições:
|
|
845
851
|
|
|
846
852
|
\`\`\`html
|
|
847
853
|
<main class="site">
|
|
848
|
-
{{#each
|
|
854
|
+
{{#each items}}
|
|
849
855
|
<article>
|
|
850
856
|
<h2>{{title}}</h2>
|
|
851
857
|
<p>{{excerpt}}</p>
|
|
@@ -854,20 +860,27 @@ Sintaxe de template com variáveis e laços:
|
|
|
854
860
|
</main>
|
|
855
861
|
\`\`\`
|
|
856
862
|
|
|
857
|
-
- \`
|
|
858
|
-
- \`
|
|
863
|
+
- \`{{variável}}\` — valor com escape HTML; \`{{{html}}}\` — sem escape (HTML do conteúdo)
|
|
864
|
+
- \`{{#each}}\` / \`{{#if}}\` aninhados, caminhos pontuados (\`content.author.name\`)
|
|
865
|
+
- \`home.astro\` — home (\`{{site.title}}\`, \`{{#each items}}\`)
|
|
866
|
+
- \`index.astro\`, \`single.astro\`, \`page.astro\` — conteúdo (\`{{content.*}}\`, \`{{page.title}}\`)
|
|
867
|
+
- \`archive.astro\` — listagem por tipo/taxonomia (\`{{#each items}}\`)
|
|
868
|
+
- \`404.astro\` — última da cadeia
|
|
869
|
+
- Contexto disponível: \`site.*\`, \`page.*\`, \`content.*\` (colunas + campos), \`items\`,
|
|
870
|
+
\`menus\`, \`contentTypes\`, \`taxonomies\`, \`terms\`, \`settings\`
|
|
859
871
|
|
|
860
872
|
## Estilos por engine
|
|
861
873
|
|
|
862
874
|
| \`--style\` | Arquivo gerado | Build |
|
|
863
875
|
|---|---|---|
|
|
864
|
-
| \`css\` (default) | \`
|
|
876
|
+
| \`css\` (default) | \`dist/theme.css\` | nenhum — servido direto |
|
|
865
877
|
| \`scss\` | \`styles/main.scss\` (+ \`components.scss\`) | \`okcms theme:build -n meu-tema\` |
|
|
866
878
|
| \`tailwind\` | \`src/input.css\` + \`tailwind.config.js\` | \`okcms theme:build -n meu-tema\` |
|
|
867
879
|
|
|
868
|
-
O
|
|
869
|
-
\`
|
|
870
|
-
|
|
880
|
+
O site público só linka \`/themes/<tema>/dist/theme.css\` — no engine \`css\` o
|
|
881
|
+
arquivo já nasce em \`dist/\` (servível sem build). Nos demais, o build compila
|
|
882
|
+
para \`dist/theme.css\` **com isolamento \`[data-theme="meu-tema"]\`** (sem vazar
|
|
883
|
+
estilos entre temas; o Tailwind já sai com \`preflight: false\`).
|
|
871
884
|
|
|
872
885
|
> \`dist/theme.css\` é lido **pronto** pelo container — nada compila SCSS ou
|
|
873
886
|
> Tailwind dentro da imagem. O arquivo existe no host e só chega em
|
|
@@ -880,7 +893,7 @@ sai com \`preflight: false\`).
|
|
|
880
893
|
# 1. Crie
|
|
881
894
|
okcms theme:create --name meu-tema --style scss
|
|
882
895
|
|
|
883
|
-
# 2. Edite templates
|
|
896
|
+
# 2. Edite os templates *.astro na raiz e os estilos
|
|
884
897
|
|
|
885
898
|
# 3. Compile os estilos (scss/tailwind)
|
|
886
899
|
okcms theme:build --name meu-tema
|
|
@@ -888,6 +901,8 @@ okcms theme:build --name meu-tema
|
|
|
888
901
|
# 4. Ative (grava activeTheme no okcms.config.json)
|
|
889
902
|
okcms theme:manage --name meu-tema --set-active
|
|
890
903
|
# (equivalente: ACTIVE_THEME=meu-tema no .env)
|
|
904
|
+
# A tela Temas do admin também ativa — o tema ativo é lido do banco a
|
|
905
|
+
# cada request, sem restart do site.
|
|
891
906
|
|
|
892
907
|
# 5. Gestão
|
|
893
908
|
okcms theme:list # instalados + status
|
|
@@ -1055,10 +1070,14 @@ okcms theme:create --name my-theme --style css # css | scss | tailwind
|
|
|
1055
1070
|
\`\`\`
|
|
1056
1071
|
themes/my-theme/
|
|
1057
1072
|
├── theme.json # manifest (type: theme + compatibility)
|
|
1058
|
-
├── templates
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
├──
|
|
1073
|
+
├── home.astro # hierarchy templates AT THE ROOT
|
|
1074
|
+
├── index.astro
|
|
1075
|
+
├── single.astro
|
|
1076
|
+
├── page.astro
|
|
1077
|
+
├── archive.astro
|
|
1078
|
+
├── 404.astro
|
|
1079
|
+
├── dist/theme.css # css engine — ready to serve
|
|
1080
|
+
│ # (or styles/main.scss — or src/input.css)
|
|
1062
1081
|
└── README.md
|
|
1063
1082
|
\`\`\`
|
|
1064
1083
|
|
|
@@ -1081,11 +1100,14 @@ automatically, just like with plugins.
|
|
|
1081
1100
|
|
|
1082
1101
|
### Templates
|
|
1083
1102
|
|
|
1084
|
-
|
|
1103
|
+
Templates are \`*.astro\` files **at the theme root** — that's what the site
|
|
1104
|
+
runtime looks up (hierarchy \`home\` → \`index\` → \`404\`, with \`_shared\` →
|
|
1105
|
+
\`default\` fallback). Syntax with variables, raw HTML, and nested
|
|
1106
|
+
loops/conditionals:
|
|
1085
1107
|
|
|
1086
1108
|
\`\`\`html
|
|
1087
1109
|
<main class="site">
|
|
1088
|
-
{{#each
|
|
1110
|
+
{{#each items}}
|
|
1089
1111
|
<article>
|
|
1090
1112
|
<h2>{{title}}</h2>
|
|
1091
1113
|
<p>{{excerpt}}</p>
|
|
@@ -1094,18 +1116,26 @@ Template syntax with variables and loops:
|
|
|
1094
1116
|
</main>
|
|
1095
1117
|
\`\`\`
|
|
1096
1118
|
|
|
1097
|
-
- \`
|
|
1098
|
-
- \`
|
|
1119
|
+
- \`{{variable}}\` — HTML-escaped value; \`{{{html}}}\` — raw (content HTML)
|
|
1120
|
+
- \`{{#each}}\` / \`{{#if}}\` nest, dotted paths (\`content.author.name\`)
|
|
1121
|
+
- \`home.astro\` — home (\`{{site.title}}\`, \`{{#each items}}\`)
|
|
1122
|
+
- \`index.astro\`, \`single.astro\`, \`page.astro\` — content (\`{{content.*}}\`, \`{{page.title}}\`)
|
|
1123
|
+
- \`archive.astro\` — type/taxonomy listing (\`{{#each items}}\`)
|
|
1124
|
+
- \`404.astro\` — last in the chain
|
|
1125
|
+
- Context available: \`site.*\`, \`page.*\`, \`content.*\` (columns + fields), \`items\`,
|
|
1126
|
+
\`menus\`, \`contentTypes\`, \`taxonomies\`, \`terms\`, \`settings\`
|
|
1099
1127
|
|
|
1100
1128
|
## Styles per engine
|
|
1101
1129
|
|
|
1102
1130
|
| \`--style\` | Generated file | Build |
|
|
1103
1131
|
|---|---|---|
|
|
1104
|
-
| \`css\` (default) | \`
|
|
1132
|
+
| \`css\` (default) | \`dist/theme.css\` | none — served as is |
|
|
1105
1133
|
| \`scss\` | \`styles/main.scss\` (+ \`components.scss\`) | \`okcms theme:build -n my-theme\` |
|
|
1106
1134
|
| \`tailwind\` | \`src/input.css\` + \`tailwind.config.js\` | \`okcms theme:build -n my-theme\` |
|
|
1107
1135
|
|
|
1108
|
-
The
|
|
1136
|
+
The public site only links \`/themes/<theme>/dist/theme.css\` — on the \`css\`
|
|
1137
|
+
engine the file is born in \`dist/\` (served with no build). On the others, the
|
|
1138
|
+
build compiles into \`dist/theme.css\` **with \`[data-theme="my-theme"]\`
|
|
1109
1139
|
isolation** (styles never leak between themes; Tailwind already ships with
|
|
1110
1140
|
\`preflight: false\`).
|
|
1111
1141
|
|
|
@@ -1120,7 +1150,7 @@ isolation** (styles never leak between themes; Tailwind already ships with
|
|
|
1120
1150
|
# 1. Create it
|
|
1121
1151
|
okcms theme:create --name my-theme --style scss
|
|
1122
1152
|
|
|
1123
|
-
# 2. Edit templates
|
|
1153
|
+
# 2. Edit the root *.astro templates and styles
|
|
1124
1154
|
|
|
1125
1155
|
# 3. Compile the styles (scss/tailwind)
|
|
1126
1156
|
okcms theme:build --name my-theme
|
|
@@ -1128,6 +1158,8 @@ okcms theme:build --name my-theme
|
|
|
1128
1158
|
# 4. Activate it (writes activeTheme into okcms.config.json)
|
|
1129
1159
|
okcms theme:manage --name my-theme --set-active
|
|
1130
1160
|
# (equivalent: ACTIVE_THEME=my-theme in .env)
|
|
1161
|
+
# The admin Themes screen activates too — the active theme is read from
|
|
1162
|
+
# the database on every request, no site restart needed.
|
|
1131
1163
|
|
|
1132
1164
|
# 5. Management
|
|
1133
1165
|
okcms theme:list # installed + status
|
|
@@ -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":"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"}
|
package/dist/scaffold.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAGnD,kEAAkE;AAClE,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMlD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAWtD;AAoBD,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,IAAI,GAAE,QAA4B;AAClC,4EAA4E;AAC5E,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAClC,OAAO,CAAC,MAAM,CAAC,CAuQjB"}
|
package/dist/scaffold.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
// @oktis-works/cms - Project Scaffolding
|
|
2
2
|
import { mkdir, readFile, writeFile } from 'node:fs/promises';
|
|
3
3
|
import { existsSync } from 'node:fs';
|
|
4
|
-
import { join, resolve } from 'node:path';
|
|
4
|
+
import { dirname, join, resolve } from 'node:path';
|
|
5
5
|
import { defaultProjectConfig, DEFAULT_CONFIG_FILENAME } from './project-config.js';
|
|
6
6
|
import { DEPLOY_GITIGNORE } from './assets.js';
|
|
7
|
+
import { DEFAULT_THEME_FILES } from './theme-assets.js';
|
|
7
8
|
import { writeDeployAssets } from './bluegreen.js';
|
|
8
9
|
import { DEFAULT_DOCS_LANG, docsLangLabel, pluginDoc, projectReadme, themeDoc } from './scaffold-docs.js';
|
|
9
10
|
import { style, symbol } from './prompt.js';
|
|
@@ -68,6 +69,16 @@ beforeSummary) {
|
|
|
68
69
|
await mkdir(join(root, 'themes'), { recursive: true });
|
|
69
70
|
await mkdir(join(root, 'plugins'), { recursive: true });
|
|
70
71
|
await mkdir(join(root, 'migrations'), { recursive: true });
|
|
72
|
+
// Tema default pronto: o projeto novo já renderiza de cara (templates .astro
|
|
73
|
+
// na raiz + dist/theme.css servido direto). Nunca sobrescreve em re-init —
|
|
74
|
+
// o operador pode ter editado o tema.
|
|
75
|
+
for (const [relative, content] of Object.entries(DEFAULT_THEME_FILES)) {
|
|
76
|
+
const target = join(root, 'themes', 'default', relative);
|
|
77
|
+
if (existsSync(target))
|
|
78
|
+
continue;
|
|
79
|
+
await mkdir(dirname(target), { recursive: true });
|
|
80
|
+
await writeFile(target, content, 'utf-8');
|
|
81
|
+
}
|
|
71
82
|
const config = defaultProjectConfig(name);
|
|
72
83
|
await writeFile(join(root, DEFAULT_CONFIG_FILENAME), JSON.stringify(config, null, 2), 'utf-8');
|
|
73
84
|
// package.json do projeto — apps do OkCMS como dependências. O range vem de
|
package/dist/scaffold.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"AAAA,yCAAyC;AAEzC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** Manifesto do tema default (manifest.json = nome legado, aceito pelo runtime e pelo service). */
|
|
2
|
+
export declare const DEFAULT_THEME_MANIFEST: string;
|
|
3
|
+
/** Estilos básicos do tema default — servido direto de dist/theme.css (sem build). */
|
|
4
|
+
export declare const DEFAULT_THEME_CSS = "/* Tema default do OkCMS \u2014 estilos b\u00E1sicos (servido direto de dist/theme.css) */\n:root {\n --brand: #4f46e5;\n --text: #1f2937;\n --muted: #6b7280;\n --surface: #ffffff;\n --border: #e5e7eb;\n}\n\n* { box-sizing: border-box; }\n\nbody {\n margin: 0;\n font-family: system-ui, -apple-system, \"Segoe UI\", sans-serif;\n color: var(--text);\n background: var(--surface);\n line-height: 1.6;\n}\n\nmain {\n max-width: 46rem;\n margin: 0 auto;\n padding: 2.5rem 1.5rem;\n}\n\n.hero__title { margin: 0 0 0.5rem; font-size: 2rem; }\n.hero__description { margin: 0 0 2rem; color: var(--muted); }\n\n.listing { display: grid; gap: 1rem; }\n.card { border: 1px solid var(--border); border-radius: 8px; padding: 1rem 1.25rem; }\n.entry__title { margin: 0 0 0.25rem; font-size: 1.15rem; }\n.entry__title a { color: var(--brand); text-decoration: none; }\n.entry__title a:hover { text-decoration: underline; }\n.entry__excerpt { margin: 0; color: var(--muted); }\n\n.entry__header { margin-bottom: 1.5rem; }\n.entry__cover { max-width: 100%; border-radius: 8px; margin: 1rem 0; }\n.entry__body { font-size: 1.05rem; }\n.entry__date { color: var(--muted); font-size: 0.85rem; }\n\n.not-found__code { margin: 0; font-size: 4rem; color: var(--brand); }\n.not-found__message { color: var(--muted); }\n";
|
|
5
|
+
/**
|
|
6
|
+
* Templates da hierarquia (formato do runtime: `*.astro` NA RAIZ do tema,
|
|
7
|
+
* sintaxe `{{var}}` / `{{{raw}}}` / `{{#each}}` / `{{#if}}`).
|
|
8
|
+
*/
|
|
9
|
+
export declare const THEME_TEMPLATE_FILES: Record<string, string>;
|
|
10
|
+
/** Tema default completo gravado pelo `okcms init` (caminhos relativos a themes/default/). */
|
|
11
|
+
export declare const DEFAULT_THEME_FILES: Record<string, string>;
|
|
12
|
+
//# sourceMappingURL=theme-assets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theme-assets.d.ts","sourceRoot":"","sources":["../src/theme-assets.ts"],"names":[],"mappings":"AAMA,mGAAmG;AACnG,eAAO,MAAM,sBAAsB,QAuBlC,CAAC;AAEF,sFAAsF;AACtF,eAAO,MAAM,iBAAiB,kyCA0C7B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAqHvD,CAAC;AAEF,8FAA8F;AAC9F,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAItD,CAAC"}
|