@reqlan/cli 0.1.1 → 0.2.1
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 +22 -1
- package/README.template.md +2 -0
- package/out/commands/export.d.ts +17 -0
- package/out/commands/export.js +137 -0
- package/out/commands/export.js.map +1 -0
- package/out/main.js +2 -0
- package/out/main.js.map +1 -1
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
# @reqlan/cli
|
|
6
6
|
|
|
7
|
-
CLI for parsing and
|
|
7
|
+
CLI for parsing, analysing, and exporting reqlan requirement graphs
|
|
8
8
|
|
|
9
9
|
## Features
|
|
10
10
|
|
|
@@ -32,6 +32,8 @@ reqlan search <query> [--limit <n>] [--cwd <dir>] [--json]
|
|
|
32
32
|
|
|
33
33
|
Set `REQLAN_WORKSPACE` or pass `--cwd` to override the workspace root.
|
|
34
34
|
|
|
35
|
+
The ideas index is shared application memory at `<workspace>/.reqlan/ideas-index.sqlite` (same path as the VS Code extension and MCP). Override the storage directory with `REQLAN_INDEX_PATH` when needed.
|
|
36
|
+
|
|
35
37
|
## Links
|
|
36
38
|
|
|
37
39
|
- [Site](https://tony.is-a.dev/reqlan)
|
|
@@ -42,6 +44,25 @@ Set `REQLAN_WORKSPACE` or pass `--cwd` to override the workspace root.
|
|
|
42
44
|
|
|
43
45
|
## Changelog
|
|
44
46
|
|
|
47
|
+
### 0.2.1
|
|
48
|
+
|
|
49
|
+
#### Patch Changes
|
|
50
|
+
|
|
51
|
+
- Updated dependencies [4f86d2b]
|
|
52
|
+
- @reqlan/analytical@0.5.1
|
|
53
|
+
|
|
54
|
+
### 0.2.0
|
|
55
|
+
|
|
56
|
+
#### Minor Changes
|
|
57
|
+
|
|
58
|
+
- 627d502: updates to cli, site export, site (showing spec), replace welcome screen, temp remove old extension name.
|
|
59
|
+
|
|
60
|
+
#### Patch Changes
|
|
61
|
+
|
|
62
|
+
- Updated dependencies [627d502]
|
|
63
|
+
- @reqlan/analytical@0.5.0
|
|
64
|
+
- @reqlan/language@1.5.0
|
|
65
|
+
|
|
45
66
|
### 0.1.1
|
|
46
67
|
|
|
47
68
|
#### Patch Changes
|
package/README.template.md
CHANGED
|
@@ -32,6 +32,8 @@ reqlan search <query> [--limit <n>] [--cwd <dir>] [--json]
|
|
|
32
32
|
|
|
33
33
|
Set `REQLAN_WORKSPACE` or pass `--cwd` to override the workspace root.
|
|
34
34
|
|
|
35
|
+
The ideas index is shared application memory at `<workspace>/.reqlan/ideas-index.sqlite` (same path as the VS Code extension and MCP). Override the storage directory with `REQLAN_INDEX_PATH` when needed.
|
|
36
|
+
|
|
35
37
|
## Links
|
|
36
38
|
|
|
37
39
|
- [{{SITE_LABEL}}]({{SITE_URL}})
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Command } from 'clipanion';
|
|
2
|
+
export declare class ExportCommand extends Command {
|
|
3
|
+
static paths: string[][];
|
|
4
|
+
static usage: import("clipanion").Usage;
|
|
5
|
+
output: string | undefined;
|
|
6
|
+
name: string;
|
|
7
|
+
file: string | undefined;
|
|
8
|
+
runtimeMode: string;
|
|
9
|
+
clusterStrategy: string;
|
|
10
|
+
excludeSecret: boolean;
|
|
11
|
+
urlBase: string | undefined;
|
|
12
|
+
headerHref: string | undefined;
|
|
13
|
+
headerLabel: string | undefined;
|
|
14
|
+
cwd: string | undefined;
|
|
15
|
+
json: boolean;
|
|
16
|
+
execute(): Promise<number>;
|
|
17
|
+
}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { Command, Option } from 'clipanion';
|
|
2
|
+
import { resolve } from 'node:path';
|
|
3
|
+
import { toWorkspaceRelativePath } from '@reqlan/analytical';
|
|
4
|
+
import { withAnalysisApi, resolveWorkspaceRoot } from '../runtime.js';
|
|
5
|
+
import { emit } from '../output.js';
|
|
6
|
+
const RUNTIME_MODES = new Set(['interactive', 'document', 'print']);
|
|
7
|
+
const CLUSTER_STRATEGIES = new Set(['hybrid', 'deterministic']);
|
|
8
|
+
export class ExportCommand extends Command {
|
|
9
|
+
constructor() {
|
|
10
|
+
super(...arguments);
|
|
11
|
+
this.output = Option.String('-o,--output', {
|
|
12
|
+
description: 'Parent directory for the export folder (default: <cwd>/reqlan-export)'
|
|
13
|
+
});
|
|
14
|
+
this.name = Option.String('-n,--name', 'reqlan-export', {
|
|
15
|
+
description: 'Export folder name (default: reqlan-export)'
|
|
16
|
+
});
|
|
17
|
+
this.file = Option.String('-f,--file', {
|
|
18
|
+
description: 'Export only the given .rq file and its local graph'
|
|
19
|
+
});
|
|
20
|
+
this.runtimeMode = Option.String('--runtime-mode', 'interactive', {
|
|
21
|
+
description: 'HTML runtime mode: interactive | document | print (default: interactive)'
|
|
22
|
+
});
|
|
23
|
+
this.clusterStrategy = Option.String('--cluster-strategy', 'hybrid', {
|
|
24
|
+
description: 'Cluster strategy: hybrid | deterministic (default: hybrid)'
|
|
25
|
+
});
|
|
26
|
+
this.excludeSecret = Option.Boolean('--exclude-secret', false, {
|
|
27
|
+
description: 'Omit ideas hosted in *.secret.rq files'
|
|
28
|
+
});
|
|
29
|
+
this.urlBase = Option.String('--url-base', {
|
|
30
|
+
description: 'Absolute URL prefix for the export mount (e.g. /spec or /reqlan/spec)'
|
|
31
|
+
});
|
|
32
|
+
this.headerHref = Option.String('--header-href', {
|
|
33
|
+
description: 'Optional topbar link href back to a parent site'
|
|
34
|
+
});
|
|
35
|
+
this.headerLabel = Option.String('--header-label', {
|
|
36
|
+
description: 'Optional topbar link label (requires --header-href)'
|
|
37
|
+
});
|
|
38
|
+
this.cwd = Option.String('--cwd', {
|
|
39
|
+
description: 'Workspace root (default: walk from cwd, or REQLAN_WORKSPACE)'
|
|
40
|
+
});
|
|
41
|
+
this.json = Option.Boolean('--json', false, {
|
|
42
|
+
description: 'Emit machine-readable JSON with export paths'
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
async execute() {
|
|
46
|
+
const runtimeMode = this.runtimeMode;
|
|
47
|
+
if (!RUNTIME_MODES.has(runtimeMode)) {
|
|
48
|
+
this.context.stderr.write(`Invalid --runtime-mode "${this.runtimeMode}". Expected interactive, document, or print.\n`);
|
|
49
|
+
return 1;
|
|
50
|
+
}
|
|
51
|
+
const clusterStrategy = this.clusterStrategy;
|
|
52
|
+
if (!CLUSTER_STRATEGIES.has(clusterStrategy)) {
|
|
53
|
+
this.context.stderr.write(`Invalid --cluster-strategy "${this.clusterStrategy}". Expected hybrid or deterministic.\n`);
|
|
54
|
+
return 1;
|
|
55
|
+
}
|
|
56
|
+
const headerHref = this.headerHref?.trim();
|
|
57
|
+
const headerLabel = this.headerLabel?.trim();
|
|
58
|
+
if ((headerHref && !headerLabel) || (!headerHref && headerLabel)) {
|
|
59
|
+
this.context.stderr.write('Both --header-href and --header-label are required when setting a header link.\n');
|
|
60
|
+
return 1;
|
|
61
|
+
}
|
|
62
|
+
const exportName = this.name.trim() || 'reqlan-export';
|
|
63
|
+
if (/[\\/]/.test(exportName)) {
|
|
64
|
+
this.context.stderr.write('Export name cannot contain path separators.\n');
|
|
65
|
+
return 1;
|
|
66
|
+
}
|
|
67
|
+
const workspaceRoot = resolveWorkspaceRoot(this.cwd);
|
|
68
|
+
const outputDir = resolve(this.output?.trim() || resolve(workspaceRoot, 'reqlan-export'));
|
|
69
|
+
const scope = this.file ? 'currentFile' : 'workspace';
|
|
70
|
+
const sourceFileUri = this.file
|
|
71
|
+
? toWorkspaceRelativePath(resolve(workspaceRoot, this.file), workspaceRoot)
|
|
72
|
+
: undefined;
|
|
73
|
+
try {
|
|
74
|
+
await withAnalysisApi(this.cwd, async (api) => {
|
|
75
|
+
const result = await api.exportHtml({
|
|
76
|
+
format: 'html',
|
|
77
|
+
outputDir,
|
|
78
|
+
exportName,
|
|
79
|
+
templateId: 'default',
|
|
80
|
+
scope,
|
|
81
|
+
sourceFileUri,
|
|
82
|
+
includeRequirementsPage: true,
|
|
83
|
+
includeGraphPage: true,
|
|
84
|
+
printEntryFileName: 'print.html',
|
|
85
|
+
runtimeMode,
|
|
86
|
+
clusterStrategy,
|
|
87
|
+
includeIdeaPages: true,
|
|
88
|
+
includeFilePages: true,
|
|
89
|
+
includeCodeFilePages: true,
|
|
90
|
+
includeClusterPages: true,
|
|
91
|
+
includeAttributePages: true,
|
|
92
|
+
includePrintPages: true,
|
|
93
|
+
excludeSecretFiles: this.excludeSecret,
|
|
94
|
+
urlBase: this.urlBase?.trim() || undefined,
|
|
95
|
+
headerLink: headerHref && headerLabel
|
|
96
|
+
? { href: headerHref, label: headerLabel }
|
|
97
|
+
: undefined
|
|
98
|
+
});
|
|
99
|
+
if (this.json) {
|
|
100
|
+
emit({
|
|
101
|
+
outputDir: result.outputDir,
|
|
102
|
+
indexFilePath: result.indexFilePath,
|
|
103
|
+
printFilePath: result.printFilePath,
|
|
104
|
+
graphFilePath: result.graphFilePath,
|
|
105
|
+
dataFilePath: result.dataFilePath
|
|
106
|
+
}, true);
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
emit(`Exported HTML site to ${result.outputDir}`, false);
|
|
110
|
+
});
|
|
111
|
+
return 0;
|
|
112
|
+
}
|
|
113
|
+
catch (error) {
|
|
114
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
115
|
+
this.context.stderr.write(`${message}\n`);
|
|
116
|
+
return 1;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
ExportCommand.paths = [['export'], ['export', 'html']];
|
|
121
|
+
ExportCommand.usage = Command.Usage({
|
|
122
|
+
description: 'Export the requirement graph as a multi-file static HTML site.',
|
|
123
|
+
details: `
|
|
124
|
+
Writes an HTML export under <output>/<name>/.
|
|
125
|
+
Use --exclude-secret to omit gitignored *.secret.rq files from the export.
|
|
126
|
+
`,
|
|
127
|
+
examples: [
|
|
128
|
+
['Workspace HTML export', '$0 export --output ./reqlan-export --name workspace'],
|
|
129
|
+
['Public non-secret graph', '$0 export html --exclude-secret --output ./out --name spec'],
|
|
130
|
+
[
|
|
131
|
+
'Site embed with mount + home link',
|
|
132
|
+
'$0 export html --exclude-secret --url-base /spec --header-href / --header-label reqlan --output ./out --name spec'
|
|
133
|
+
],
|
|
134
|
+
['Current-file scope', '$0 export --file ./reqlan\\ rq/cli/cli_package.rq --output ./tmp']
|
|
135
|
+
]
|
|
136
|
+
});
|
|
137
|
+
//# sourceMappingURL=export.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"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"}
|
package/out/main.js
CHANGED
|
@@ -5,6 +5,7 @@ import { fileURLToPath } from 'node:url';
|
|
|
5
5
|
import { ParseCommand } from './commands/parse.js';
|
|
6
6
|
import { AnalyseCommand } from './commands/analyse.js';
|
|
7
7
|
import { SearchCommand } from './commands/search.js';
|
|
8
|
+
import { ExportCommand } from './commands/export.js';
|
|
8
9
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
9
10
|
const packageJson = JSON.parse(readFileSync(resolve(__dirname, '..', 'package.json'), 'utf8'));
|
|
10
11
|
const cli = new Cli({
|
|
@@ -17,5 +18,6 @@ cli.register(Builtins.VersionCommand);
|
|
|
17
18
|
cli.register(ParseCommand);
|
|
18
19
|
cli.register(AnalyseCommand);
|
|
19
20
|
cli.register(SearchCommand);
|
|
21
|
+
cli.register(ExportCommand);
|
|
20
22
|
await cli.runExit(process.argv.slice(2));
|
|
21
23
|
//# sourceMappingURL=main.js.map
|
package/out/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAE5F,CAAC;AAEF,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC;IAChB,WAAW,EAAE,QAAQ;IACrB,UAAU,EAAE,QAAQ;IACpB,aAAa,EAAE,WAAW,CAAC,OAAO;CACrC,CAAC,CAAC;AAEH,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AACnC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;AACtC,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;AAC3B,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;AAC7B,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AAE5B,MAAM,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAE5F,CAAC;AAEF,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC;IAChB,WAAW,EAAE,QAAQ;IACrB,UAAU,EAAE,QAAQ;IACpB,aAAa,EAAE,WAAW,CAAC,OAAO;CACrC,CAAC,CAAC;AAEH,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AACnC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;AACtC,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;AAC3B,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;AAC7B,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AAC5B,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AAE5B,MAAM,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reqlan/cli",
|
|
3
|
-
"description": "CLI for parsing and
|
|
4
|
-
"version": "0.
|
|
3
|
+
"description": "CLI for parsing, analysing, and exporting reqlan requirement graphs",
|
|
4
|
+
"version": "0.2.1",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "AGPL-3.0-only",
|
|
7
7
|
"repository": {
|
|
@@ -26,8 +26,8 @@
|
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"clipanion": "3.2.1",
|
|
28
28
|
"langium": "~4.3.0",
|
|
29
|
-
"@reqlan/analytical": "0.
|
|
30
|
-
"@reqlan/language": "1.
|
|
29
|
+
"@reqlan/analytical": "0.5.1",
|
|
30
|
+
"@reqlan/language": "1.5.0"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"shx": "~0.4.0"
|