dinorex 1.0.2 → 1.0.4

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/server.js CHANGED
@@ -2,8 +2,8 @@ import express from "express";
2
2
  import cors from "cors";
3
3
  import path from "path";
4
4
  import { fileURLToPath } from "url";
5
+ import { loadAuth, apiRequest } from "./auth";
5
6
  import { scanProject } from "./scanner.js";
6
- import { analyzeWithAI, analyzeIncremental } from "./agent.js";
7
7
  import { loadStore, saveStore, diffScan } from "./store.js";
8
8
  import { createHash } from "crypto";
9
9
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
@@ -11,7 +11,7 @@ export async function startServer(targetDir, options = {}) {
11
11
  const { port = 4321, _cachedSpec = null } = options;
12
12
  const app = express();
13
13
  app.use(cors());
14
- app.use(express.json());
14
+ app.use(express.json({ limit: "50mb" }));
15
15
  app.use(express.static(path.join(__dirname, "public")));
16
16
  let specCache = _cachedSpec;
17
17
  let isAnalyzing = false;
@@ -23,6 +23,11 @@ export async function startServer(targetDir, options = {}) {
23
23
  return;
24
24
  isAnalyzing = true;
25
25
  try {
26
+ const auth = loadAuth();
27
+ if (!auth) {
28
+ analysisStatus = { state: "error", message: "Not authenticated. Run: dinorex login" };
29
+ return;
30
+ }
26
31
  const { collected } = await scanProject(targetDir);
27
32
  const allFiles = [
28
33
  ...collected.routes,
@@ -34,30 +39,53 @@ export async function startServer(targetDir, options = {}) {
34
39
  if (!forceRescan && stored?.spec && stored?.hashes) {
35
40
  analysisStatus = { state: "analyzing", message: "Checking for new/changed endpoints..." };
36
41
  const diff = diffScan(stored.hashes, allFiles);
37
- const { spec, changed } = await analyzeIncremental(stored.spec, diff);
38
- specCache = spec;
39
- if (changed) {
40
- const storeData = {
41
- spec,
42
- hashes: diff.newHashes,
43
- lastScan: new Date().toISOString(),
44
- };
45
- saveStore(targetDir, storeData);
46
- analysisStatus = { state: "ready", message: "Spec updated with new endpoints." };
47
- }
48
- else {
42
+ if (!diff.newFiles.length && !diff.changedFiles.length && !diff.removedFiles.length) {
43
+ specCache = stored.spec;
49
44
  analysisStatus = { state: "ready", message: "No changes detected." };
45
+ return;
50
46
  }
47
+ // Send only changed files to server
48
+ const res = await apiRequest("/scan", {
49
+ method: "POST",
50
+ token: auth.token,
51
+ body: {
52
+ projectName: path.basename(targetDir),
53
+ routes: [...diff.newFiles, ...diff.changedFiles].filter(f => collected.routes.find(r => r.path === f.path)),
54
+ controllers: [...diff.newFiles, ...diff.changedFiles].filter(f => collected.controllers.find(r => r.path === f.path)),
55
+ services: [...diff.newFiles, ...diff.changedFiles].filter(f => collected.services.find(r => r.path === f.path)),
56
+ models: [...diff.newFiles, ...diff.changedFiles].filter(f => collected.models.find(r => r.path === f.path)),
57
+ existingSpec: stored.spec,
58
+ removedFiles: diff.removedFiles,
59
+ },
60
+ });
61
+ specCache = res.spec;
62
+ const storeData = {
63
+ spec: res.spec,
64
+ hashes: diff.newHashes,
65
+ lastScan: new Date().toISOString(),
66
+ };
67
+ saveStore(targetDir, storeData);
68
+ analysisStatus = { state: "ready", message: "Spec updated with new endpoints." };
51
69
  }
52
70
  else {
53
- analysisStatus = { state: "analyzing", message: "Running full AI analysis..." };
54
- const projectName = path.basename(targetDir);
55
- specCache = await analyzeWithAI(collected, projectName);
71
+ analysisStatus = { state: "analyzing", message: "Sending files to Dinorex server..." };
72
+ const res = await apiRequest("/scan", {
73
+ method: "POST",
74
+ token: auth.token,
75
+ body: {
76
+ projectName: path.basename(targetDir),
77
+ routes: collected.routes,
78
+ controllers: collected.controllers,
79
+ services: collected.services,
80
+ models: collected.models,
81
+ },
82
+ });
83
+ specCache = res.spec;
56
84
  const hashes = {};
57
85
  for (const f of allFiles) {
58
86
  hashes[f.path] = { hash: createHash("md5").update(f.content).digest("hex") };
59
87
  }
60
- saveStore(targetDir, { spec: specCache, hashes, lastScan: new Date().toISOString() });
88
+ saveStore(targetDir, { spec: res.spec, hashes, lastScan: new Date().toISOString() });
61
89
  analysisStatus = { state: "ready", message: "Full analysis complete." };
62
90
  }
63
91
  }
@@ -71,6 +99,7 @@ export async function startServer(targetDir, options = {}) {
71
99
  isAnalyzing = false;
72
100
  }
73
101
  }
102
+ // Bootstrap
74
103
  if (!specCache) {
75
104
  const stored = loadStore(targetDir);
76
105
  if (stored?.spec) {
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dinorex",
3
- "version": "1.0.2",
3
+ "version": "1.0.4",
4
4
  "description": "AI-powered API documentation generator — one command, full docs.",
5
5
  "type": "module",
6
6
  "main": "./dist/cli.js",
@@ -8,7 +8,7 @@
8
8
  "dinorex": "./dist/cli.js"
9
9
  },
10
10
  "scripts": {
11
- "build": "tsc",
11
+ "build": "tsc && cp -r src/public dist/public",
12
12
  "dev": "tsc --watch",
13
13
  "start": "node dist/server.js",
14
14
  "prepare": "npm run build"