@kelceyp/caw-server 0.0.12 → 0.0.13

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/main.js CHANGED
@@ -45146,10 +45146,51 @@ import path3 from "path";
45146
45146
  import Database from "better-sqlite3";
45147
45147
  import fs2 from "fs";
45148
45148
  import path2 from "path";
45149
- import { fileURLToPath } from "url";
45150
- var __filename2 = fileURLToPath(import.meta.url);
45151
- var __dirname2 = path2.dirname(__filename2);
45152
- var SCHEMA_PATH = path2.join(__dirname2, "schema.sql");
45149
+ var SCHEMA = `
45150
+ -- CAW Document Store Schema
45151
+
45152
+ -- Store metadata (one row per store+type combo)
45153
+ CREATE TABLE IF NOT EXISTS store_meta (
45154
+ store_code TEXT NOT NULL,
45155
+ type TEXT NOT NULL,
45156
+ seq INTEGER NOT NULL DEFAULT 0,
45157
+ PRIMARY KEY (store_code, type)
45158
+ );
45159
+
45160
+ -- All document-like objects
45161
+ CREATE TABLE IF NOT EXISTS documents (
45162
+ id TEXT PRIMARY KEY,
45163
+ type TEXT NOT NULL,
45164
+ path TEXT NOT NULL,
45165
+ container_id TEXT,
45166
+ metadata TEXT,
45167
+ published_version_id TEXT,
45168
+ draft_content TEXT,
45169
+ draft_updated_at TEXT,
45170
+ created_at TEXT NOT NULL,
45171
+ updated_at TEXT NOT NULL,
45172
+ deleted_at TEXT,
45173
+ UNIQUE(type, path),
45174
+ FOREIGN KEY (container_id) REFERENCES documents(id),
45175
+ FOREIGN KEY (published_version_id) REFERENCES versions(id)
45176
+ );
45177
+
45178
+ CREATE INDEX IF NOT EXISTS documents_container_id_idx ON documents(container_id);
45179
+ CREATE INDEX IF NOT EXISTS documents_type_idx ON documents(type);
45180
+
45181
+ -- Version history (append-only, immutable)
45182
+ CREATE TABLE IF NOT EXISTS versions (
45183
+ id TEXT PRIMARY KEY,
45184
+ document_id TEXT NOT NULL,
45185
+ version_number INTEGER NOT NULL,
45186
+ content TEXT,
45187
+ created_at TEXT NOT NULL,
45188
+ UNIQUE(document_id, version_number),
45189
+ FOREIGN KEY (document_id) REFERENCES documents(id)
45190
+ );
45191
+
45192
+ CREATE INDEX IF NOT EXISTS versions_document_id_idx ON versions(document_id);
45193
+ `;
45153
45194
  var now = () => new Date().toISOString();
45154
45195
  var openDatabase = (filepath) => {
45155
45196
  const dir = path2.dirname(filepath);
@@ -45159,8 +45200,7 @@ var openDatabase = (filepath) => {
45159
45200
  const db = new Database(filepath);
45160
45201
  db.pragma("foreign_keys = ON");
45161
45202
  db.pragma("journal_mode = WAL");
45162
- const schema = fs2.readFileSync(SCHEMA_PATH, "utf8");
45163
- db.exec(schema);
45203
+ db.exec(SCHEMA);
45164
45204
  return db;
45165
45205
  };
45166
45206
  var db_default = { openDatabase, now };
@@ -45383,16 +45423,16 @@ var StoreDemux_default = { create: create13 };
45383
45423
 
45384
45424
  // src/main.js
45385
45425
  import path4 from "path";
45386
- import { fileURLToPath as fileURLToPath2 } from "url";
45387
- var __filename3 = fileURLToPath2(import.meta.url);
45388
- var __dirname3 = path4.dirname(__filename3);
45426
+ import { fileURLToPath } from "url";
45427
+ var __filename2 = fileURLToPath(import.meta.url);
45428
+ var __dirname2 = path4.dirname(__filename2);
45389
45429
  var port = process.env.CAW_PORT;
45390
45430
  if (!port) {
45391
45431
  console.error("ERROR: CAW_PORT environment variable is required");
45392
45432
  console.error("Run via pm2 or set CAW_PORT manually: CAW_PORT=3131 node dist/main.js");
45393
45433
  process.exit(1);
45394
45434
  }
45395
- var staticPath = process.env.STATIC_PATH || path4.join(__dirname3, "public_html");
45435
+ var staticPath = process.env.STATIC_PATH || path4.join(__dirname2, "public_html");
45396
45436
  var store = ProjectStore_default.create();
45397
45437
  var storeDemux = StoreDemux_default.create();
45398
45438
  var sessionManager = SessionManager_default.create();
@@ -45415,4 +45455,4 @@ ${signal} received, shutting down gracefully...`);
45415
45455
  process.on("SIGINT", () => shutdown("SIGINT"));
45416
45456
  process.on("SIGTERM", () => shutdown("SIGTERM"));
45417
45457
 
45418
- //# debugId=E4238B48CE310B7864756E2164756E21
45458
+ //# debugId=E38D26E27888DE0E64756E2164756E21