@polagram/cli 0.1.2 → 0.2.0
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/config.d.ts +1 -1
- package/dist/config.js +1 -1
- package/dist/config.js.map +1 -1
- package/dist/index.js +6 -5
- package/dist/index.js.map +1 -1
- package/dist/preview.d.ts +2 -0
- package/dist/preview.js +35 -0
- package/dist/preview.js.map +1 -0
- package/package.json +5 -3
package/dist/config.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { PolagramConfig } from '@polagram/core';
|
|
1
|
+
import { type PolagramConfig } from '@polagram/core';
|
|
2
2
|
export declare function loadConfig(path: string): Promise<PolagramConfig>;
|
package/dist/config.js
CHANGED
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAuB,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,IAAI,MAAM,SAAS,CAAC;AAE3B,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAY;IAC3C,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACjD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACzE,MAAM,IAAI,KAAK,CAAC,oCAAoC,IAAI,EAAE,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,6EAA6E;YAC7E,oEAAoE;YACpE,MAAM,KAAK,CAAC;QACd,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,iCAAiC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACpE,CAAC;AACH,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { FormatDetector, Polagram } from '@polagram/core';
|
|
3
3
|
import { Command } from 'commander';
|
|
4
|
-
import { promises as fs } from 'fs';
|
|
5
4
|
import { glob } from 'glob';
|
|
6
|
-
import
|
|
5
|
+
import { promises as fs } from 'node:fs';
|
|
6
|
+
import path from 'node:path';
|
|
7
7
|
import { loadConfig } from './config.js';
|
|
8
|
+
import { previewCommand } from './preview.js';
|
|
8
9
|
const program = new Command();
|
|
9
10
|
program
|
|
10
11
|
.name('polagram')
|
|
11
12
|
.description('CLI tool for Polagram - Sequence Diagram CI/CD')
|
|
12
13
|
.version('0.0.1');
|
|
14
|
+
program.addCommand(previewCommand);
|
|
13
15
|
program
|
|
14
16
|
.command('generate')
|
|
15
17
|
.description('Generate diagrams based on polagram.yml')
|
|
@@ -26,13 +28,13 @@ program
|
|
|
26
28
|
const ignores = [
|
|
27
29
|
'**/node_modules/**',
|
|
28
30
|
'**/dist/**',
|
|
29
|
-
...(target.ignore || [])
|
|
31
|
+
...(target.ignore || []),
|
|
30
32
|
];
|
|
31
33
|
// Search for files relative to the config file directory
|
|
32
34
|
const files = await glob(target.input, {
|
|
33
35
|
ignore: ignores,
|
|
34
36
|
cwd: configDir,
|
|
35
|
-
absolute: true
|
|
37
|
+
absolute: true,
|
|
36
38
|
});
|
|
37
39
|
if (files.length === 0) {
|
|
38
40
|
console.warn(`No files found for input: ${target.input}`);
|
|
@@ -60,7 +62,6 @@ program
|
|
|
60
62
|
const lensPipeline = Polagram.init(content, inputFormat);
|
|
61
63
|
// core expects strict discriminated union, Zod inferred type is loose.
|
|
62
64
|
// Validation guarantees structure.
|
|
63
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
64
65
|
lensPipeline.applyLens(lens);
|
|
65
66
|
// 3. Generate based on output format
|
|
66
67
|
const result = outputFormat === 'plantuml'
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/preview.js
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import { Command } from 'commander';
|
|
3
|
+
export const previewCommand = new Command('preview')
|
|
4
|
+
.description('Start preview server or build static site')
|
|
5
|
+
.option('-c, --config <path>', 'Path to config file', process.env.POLAGRAM_CONFIG || 'polagram.yml')
|
|
6
|
+
.option('-p, --port <number>', 'Port to run server on', '6006')
|
|
7
|
+
.option('-b, --build', 'Build static site')
|
|
8
|
+
.option('-o, --out-dir <dir>', 'Output directory for build', 'dist-preview')
|
|
9
|
+
.action(async (options) => {
|
|
10
|
+
const configPath = options.config;
|
|
11
|
+
try {
|
|
12
|
+
// Dynamic import to avoid loading preview logic (and React deps) when running other commands
|
|
13
|
+
// Although currently it is a direct dependency.
|
|
14
|
+
const { startServer, buildStatic } = await import('@polagram/preview');
|
|
15
|
+
const absoluteConfigPath = path.resolve(process.cwd(), configPath);
|
|
16
|
+
if (options.build) {
|
|
17
|
+
await buildStatic({
|
|
18
|
+
config: absoluteConfigPath,
|
|
19
|
+
outDir: options.outDir,
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
await startServer({
|
|
24
|
+
config: absoluteConfigPath,
|
|
25
|
+
port: parseInt(options.port, 10),
|
|
26
|
+
});
|
|
27
|
+
// Keep process alive
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
catch (error) {
|
|
31
|
+
console.error('Preview failed:', error);
|
|
32
|
+
process.exit(1);
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
//# sourceMappingURL=preview.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preview.js","sourceRoot":"","sources":["../src/preview.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC;KACjD,WAAW,CAAC,2CAA2C,CAAC;KACxD,MAAM,CACL,qBAAqB,EACrB,qBAAqB,EACrB,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,cAAc,CAC9C;KACA,MAAM,CAAC,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,CAAC;KAC9D,MAAM,CAAC,aAAa,EAAE,mBAAmB,CAAC;KAC1C,MAAM,CAAC,qBAAqB,EAAE,4BAA4B,EAAE,cAAc,CAAC;KAC3E,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAClC,IAAI,CAAC;QACH,6FAA6F;QAC7F,gDAAgD;QAChD,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAEvE,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,CAAC,CAAC;QAEnE,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,MAAM,WAAW,CAAC;gBAChB,MAAM,EAAE,kBAAkB;gBAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,WAAW,CAAC;gBAChB,MAAM,EAAE,kBAAkB;gBAC1B,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;aACjC,CAAC,CAAC;YACH,qBAAqB;QACvB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;QACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@polagram/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -28,7 +28,8 @@
|
|
|
28
28
|
"commander": "^13.0.0",
|
|
29
29
|
"glob": "^11.0.0",
|
|
30
30
|
"js-yaml": "^4.1.0",
|
|
31
|
-
"@polagram/
|
|
31
|
+
"@polagram/preview": "^0.1.0",
|
|
32
|
+
"@polagram/core": "0.4.2"
|
|
32
33
|
},
|
|
33
34
|
"devDependencies": {
|
|
34
35
|
"@types/glob": "^8.1.0",
|
|
@@ -41,6 +42,7 @@
|
|
|
41
42
|
"build": "rm -rf dist && tsc",
|
|
42
43
|
"dev": "tsc -w",
|
|
43
44
|
"test": "vitest run",
|
|
44
|
-
"start": "node dist/index.js"
|
|
45
|
+
"start": "node dist/index.js",
|
|
46
|
+
"lint": "biome lint ."
|
|
45
47
|
}
|
|
46
48
|
}
|