scribe-cms 0.0.2 → 0.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -3
- package/bin/scribe.js +2 -11
- package/dist/cli/index.cjs +1437 -225
- package/dist/cli/index.cjs.map +1 -1
- package/dist/cli/index.js +1437 -226
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/prompt-translate.d.ts +16 -0
- package/dist/cli/prompt-translate.d.ts.map +1 -0
- package/dist/cli/translate-progress.d.ts +11 -0
- package/dist/cli/translate-progress.d.ts.map +1 -0
- package/dist/index.cjs +591 -147
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +587 -148
- package/dist/index.js.map +1 -1
- package/dist/runtime.cjs +14 -2
- package/dist/runtime.cjs.map +1 -1
- package/dist/runtime.js +14 -2
- package/dist/runtime.js.map +1 -1
- package/dist/src/config/resolve-config.d.ts.map +1 -1
- package/dist/src/core/field.d.ts +2 -0
- package/dist/src/core/field.d.ts.map +1 -1
- package/dist/src/core/types.d.ts +5 -1
- package/dist/src/core/types.d.ts.map +1 -1
- package/dist/src/export/build-static-raw-exports.d.ts +37 -0
- package/dist/src/export/build-static-raw-exports.d.ts.map +1 -0
- package/dist/src/export/write-static-raw-exports.d.ts +12 -0
- package/dist/src/export/write-static-raw-exports.d.ts.map +1 -0
- package/dist/src/history/record-revision.d.ts +2 -0
- package/dist/src/history/record-revision.d.ts.map +1 -1
- package/dist/src/index.d.ts +7 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/storage/sqlite.d.ts.map +1 -1
- package/dist/src/storage/translations.d.ts +6 -0
- package/dist/src/storage/translations.d.ts.map +1 -1
- package/dist/src/translate/gemini-client.d.ts +7 -0
- package/dist/src/translate/gemini-client.d.ts.map +1 -1
- package/dist/src/translate/gemini-models.d.ts +8 -0
- package/dist/src/translate/gemini-models.d.ts.map +1 -0
- package/dist/src/translate/gemini-pricing.d.ts +11 -0
- package/dist/src/translate/gemini-pricing.d.ts.map +1 -0
- package/dist/src/translate/page-translator.d.ts +38 -1
- package/dist/src/translate/page-translator.d.ts.map +1 -1
- package/dist/src/translate/prompts/translation-prompt.d.ts +1 -2
- package/dist/src/translate/prompts/translation-prompt.d.ts.map +1 -1
- package/dist/src/translate/response-schema.d.ts +7 -0
- package/dist/src/translate/response-schema.d.ts.map +1 -0
- package/dist/src/translate/validate-translation.d.ts +14 -0
- package/dist/src/translate/validate-translation.d.ts.map +1 -0
- package/dist/src/translate/worklist.d.ts +3 -0
- package/dist/src/translate/worklist.d.ts.map +1 -1
- package/dist/src/validate/validate-assets.d.ts +20 -0
- package/dist/src/validate/validate-assets.d.ts.map +1 -0
- package/dist/src/validate/validate-project.d.ts +1 -1
- package/dist/src/validate/validate-project.d.ts.map +1 -1
- package/dist/src/version.d.ts +4 -0
- package/dist/src/version.d.ts.map +1 -0
- package/dist/studio/server.cjs +611 -194
- package/dist/studio/server.cjs.map +1 -1
- package/dist/studio/server.d.ts +1 -1
- package/dist/studio/server.d.ts.map +1 -1
- package/dist/studio/server.js +611 -194
- package/dist/studio/server.js.map +1 -1
- package/package.json +16 -5
- package/bin/ensure-built.mjs +0 -31
package/dist/runtime.js
CHANGED
|
@@ -70,6 +70,7 @@ function resolveConfig(input, baseDir) {
|
|
|
70
70
|
const projectRoot = path3.resolve(process.cwd(), raw.rootDir);
|
|
71
71
|
const contentRoot = path3.resolve(projectRoot, raw.contentDir ?? "content");
|
|
72
72
|
const storePath = path3.resolve(projectRoot, raw.store ?? ".scribe/store.sqlite");
|
|
73
|
+
const assetsPath = raw.assetsDir ? path3.resolve(projectRoot, raw.assetsDir) : void 0;
|
|
73
74
|
const seenIds = /* @__PURE__ */ new Set();
|
|
74
75
|
const types = raw.types.map((type) => {
|
|
75
76
|
if (seenIds.has(type.id)) {
|
|
@@ -90,6 +91,7 @@ function resolveConfig(input, baseDir) {
|
|
|
90
91
|
const config = {
|
|
91
92
|
rootDir: contentRoot,
|
|
92
93
|
storePath,
|
|
94
|
+
assetsPath,
|
|
93
95
|
locales: [...raw.locales],
|
|
94
96
|
defaultLocale,
|
|
95
97
|
localePresets: raw.localePresets,
|
|
@@ -409,7 +411,7 @@ function seoFieldsFromEn(enDoc) {
|
|
|
409
411
|
redirectTo: enDoc.redirectTo
|
|
410
412
|
};
|
|
411
413
|
}
|
|
412
|
-
var SCHEMA_VERSION =
|
|
414
|
+
var SCHEMA_VERSION = 3;
|
|
413
415
|
var MIGRATIONS = [
|
|
414
416
|
`CREATE TABLE IF NOT EXISTS meta (
|
|
415
417
|
key TEXT PRIMARY KEY,
|
|
@@ -466,17 +468,27 @@ function resolveStorePath(config) {
|
|
|
466
468
|
}
|
|
467
469
|
function openStore(config, mode = "readwrite") {
|
|
468
470
|
const storePath = resolveStorePath(config);
|
|
469
|
-
|
|
471
|
+
if (mode === "readwrite") {
|
|
472
|
+
fs2.mkdirSync(path3.dirname(storePath), { recursive: true });
|
|
473
|
+
}
|
|
470
474
|
const db = new Database(storePath, { readonly: mode === "readonly" });
|
|
471
475
|
if (mode === "readwrite") {
|
|
472
476
|
migrate(db);
|
|
473
477
|
}
|
|
474
478
|
return db;
|
|
475
479
|
}
|
|
480
|
+
function addColumnIfMissing(db, table, column, ddlType) {
|
|
481
|
+
const columns = db.prepare(`PRAGMA table_info(${table})`).all();
|
|
482
|
+
if (!columns.some((c) => c.name === column)) {
|
|
483
|
+
db.exec(`ALTER TABLE ${table} ADD COLUMN ${column} ${ddlType}`);
|
|
484
|
+
}
|
|
485
|
+
}
|
|
476
486
|
function migrate(db) {
|
|
477
487
|
for (const sql of MIGRATIONS) {
|
|
478
488
|
db.exec(sql);
|
|
479
489
|
}
|
|
490
|
+
addColumnIfMissing(db, "revisions", "frontmatter_json", "TEXT");
|
|
491
|
+
addColumnIfMissing(db, "revisions", "body", "TEXT");
|
|
480
492
|
db.prepare(
|
|
481
493
|
`INSERT INTO meta(key, value) VALUES('schema_version', ?)
|
|
482
494
|
ON CONFLICT(key) DO UPDATE SET value = excluded.value`
|