@reqlan/cli 0.6.1 → 0.7.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 CHANGED
@@ -44,6 +44,29 @@ The ideas index is shared application memory at `<workspace>/.reqlan/ideas-index
44
44
 
45
45
  ## Changelog
46
46
 
47
+ ### 0.7.1
48
+
49
+ #### Patch Changes
50
+
51
+ - 06e9150: fix build and deps.
52
+ - Updated dependencies [06e9150]
53
+ - @reqlan/analytical@0.10.1
54
+
55
+ ### 0.7.0
56
+
57
+ #### Minor Changes
58
+
59
+ - e9b7e8a: rust
60
+
61
+ #### Patch Changes
62
+
63
+ - 72246b6: up pnpm
64
+ - 70ccc6f: up pnpm version
65
+ - Updated dependencies [72246b6]
66
+ - Updated dependencies [e9b7e8a]
67
+ - Updated dependencies [70ccc6f]
68
+ - @reqlan/analytical@0.10.0
69
+
47
70
  ### 0.6.1
48
71
 
49
72
  #### Patch Changes
@@ -1,6 +1,5 @@
1
1
  import { Command, Option } from 'clipanion';
2
2
  import { resolve } from 'node:path';
3
- import { barrelPage } from '@reqlan/analytical';
4
3
  import { emit } from '../output.js';
5
4
  /**
6
5
  * rq:["../../../reqlan rq/extension/features-commands.rq".barrel_page]
@@ -21,6 +20,7 @@ export class BarrelCommand extends Command {
21
20
  }
22
21
  async execute() {
23
22
  try {
23
+ const { barrelPage } = await import('@reqlan/analytical/core');
24
24
  const result = await barrelPage(resolve(this.file), {
25
25
  containerName: this.name,
26
26
  dryRun: this.dryRun
@@ -1 +1 @@
1
- {"version":3,"file":"barrel.js","sourceRoot":"","sources":["../../src/commands/barrel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,OAAO;IAA1C;;QAiBI,SAAI,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACzC,SAAI,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;YAC3B,WAAW,EAAE,wDAAwD;SACxE,CAAC,CAAC;QACH,WAAM,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE;YACxC,WAAW,EAAE,+CAA+C;SAC/D,CAAC,CAAC;QACH,SAAI,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE;YACnC,WAAW,EAAE,4BAA4B;SAC5C,CAAC,CAAC;IA2CP,CAAC;IAzCG,KAAK,CAAC,OAAO;QACT,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAChD,aAAa,EAAE,IAAI,CAAC,IAAI;gBACxB,MAAM,EAAE,IAAI,CAAC,MAAM;aACtB,CAAC,CAAC;YACH,MAAM,OAAO,GAAG;gBACZ,EAAE,EAAE,IAAI;gBACR,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,YAAY,EAAE,MAAM,CAAC,YAAY;gBACjC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACpC,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;iBAC3B,CAAC,CAAC;aACN,CAAC;YACF,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACZ,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACxB,CAAC;iBAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBACvB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CACrB,yBAAyB,MAAM,CAAC,UAAU,oBAAoB,MAAM,CAAC,aAAa,UAAU,MAAM,CAAC,QAAQ,CAAC,MAAM,kBAAkB,CACvI,CAAC;gBACF,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;oBAClC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,KAAK,CAAC,CAAC;gBAC7E,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CACrB,YAAY,MAAM,CAAC,UAAU,oBAAoB,MAAM,CAAC,aAAa,KAAK,CAC7E,CAAC;gBACF,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;oBACrC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC;gBACnD,CAAC;YACL,CAAC;YACD,OAAO,CAAC,CAAC;QACb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;YAC1C,OAAO,CAAC,CAAC;QACb,CAAC;IACL,CAAC;;AAnEe,mBAAK,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,AAAf,CAAgB;AAErB,mBAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAClC,WAAW,EACP,oFAAoF;IACxF,OAAO,EAAE;;;SAGR;IACD,QAAQ,EAAE;QACN,CAAC,yBAAyB,EAAE,6BAA6B,CAAC;QAC1D,CAAC,gCAAgC,EAAE,qCAAqC,CAAC;QACzE,CAAC,sBAAsB,EAAE,sCAAsC,CAAC;KACnE;CACJ,CAAC,AAZmB,CAYlB"}
1
+ {"version":3,"file":"barrel.js","sourceRoot":"","sources":["../../src/commands/barrel.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { Command, Option } from 'clipanion';
2
2
  import { resolve } from 'node:path';
3
- import { toWorkspaceRelativePath } from '@reqlan/analytical';
3
+ import { toWorkspaceRelativePath } from '@reqlan/analytical/core';
4
4
  import { withAnalysisApi, resolveWorkspaceRoot } from '../runtime.js';
5
5
  import { emit } from '../output.js';
6
6
  const RUNTIME_MODES = new Set(['interactive', 'document', 'print']);
@@ -1 +1 @@
1
- {"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { Command, Option } from 'clipanion';
2
2
  import { resolve } from 'node:path';
3
- import { createBase } from '@reqlan/analytical';
3
+ import { createBase } from '@reqlan/analytical/core';
4
4
  import { emit } from '../output.js';
5
5
  export class InitCommand extends Command {
6
6
  constructor() {
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,MAAM,OAAO,WAAY,SAAQ,OAAO;IAAxC;;QAgBI,cAAS,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/C,SAAI,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE;YACnC,WAAW,EAAE,4BAA4B;SAC5C,CAAC,CAAC;IAiCP,CAAC;IA/BG,KAAK,CAAC,OAAO;QACT,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YACtD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG;gBACZ,EAAE,EAAE,IAAI;gBACR,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;gBACtB,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU;gBAClC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK;aAC3B,CAAC;YACF,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACZ,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACxB,CAAC;iBAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACxB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CACrB,8BAA8B,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI;oBAC9C,WAAW,MAAM,CAAC,IAAI,CAAC,UAAU,IAAI,CAC5C,CAAC;YACN,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CACrB,iCAAiC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI;oBACjD,WAAW,MAAM,CAAC,IAAI,CAAC,UAAU,IAAI,CAC5C,CAAC;YACN,CAAC;YACD,OAAO,CAAC,CAAC;QACb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;YAC1C,OAAO,CAAC,CAAC;QACb,CAAC;IACL,CAAC;;AAlDe,iBAAK,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,AAAb,CAAc;AAEnB,iBAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAClC,WAAW,EAAE,oEAAoE;IACjF,OAAO,EAAE;;;SAGR;IACD,QAAQ,EAAE;QACN,CAAC,4BAA4B,EAAE,SAAS,CAAC;QACzC,CAAC,wBAAwB,EAAE,sBAAsB,CAAC;QAClD,CAAC,aAAa,EAAE,gBAAgB,CAAC;KACpC;CACJ,CAAC,AAXmB,CAWlB"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,MAAM,OAAO,WAAY,SAAQ,OAAO;IAAxC;;QAgBI,cAAS,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/C,SAAI,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE;YACnC,WAAW,EAAE,4BAA4B;SAC5C,CAAC,CAAC;IAiCP,CAAC;IA/BG,KAAK,CAAC,OAAO;QACT,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YACtD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG;gBACZ,EAAE,EAAE,IAAI;gBACR,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;gBACtB,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU;gBAClC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK;aAC3B,CAAC;YACF,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACZ,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACxB,CAAC;iBAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACxB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CACrB,8BAA8B,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI;oBAC9C,WAAW,MAAM,CAAC,IAAI,CAAC,UAAU,IAAI,CAC5C,CAAC;YACN,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CACrB,iCAAiC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI;oBACjD,WAAW,MAAM,CAAC,IAAI,CAAC,UAAU,IAAI,CAC5C,CAAC;YACN,CAAC;YACD,OAAO,CAAC,CAAC;QACb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;YAC1C,OAAO,CAAC,CAAC;QACb,CAAC;IACL,CAAC;;AAlDe,iBAAK,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,AAAb,CAAc;AAEnB,iBAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAClC,WAAW,EAAE,oEAAoE;IACjF,OAAO,EAAE;;;SAGR;IACD,QAAQ,EAAE;QACN,CAAC,4BAA4B,EAAE,SAAS,CAAC;QACzC,CAAC,wBAAwB,EAAE,sBAAsB,CAAC;QAClD,CAAC,aAAa,EAAE,gBAAgB,CAAC;KACpC;CACJ,CAAC,AAXmB,CAWlB"}
@@ -1,14 +1,8 @@
1
1
  import { Command, Option } from 'clipanion';
2
- import { createReqlanServices } from '@reqlan/language';
3
- import { NodeFileSystem } from 'langium/node';
4
- import { parseDocument } from '../util.js';
2
+ import { existsSync, readFileSync } from 'node:fs';
3
+ import { extname, resolve } from 'node:path';
4
+ import { parseReqlanSource } from '@reqlan/analytical/core';
5
5
  import { emit } from '../output.js';
6
- function elementSummary(model) {
7
- return model.elements.map(element => ({
8
- type: element.$type,
9
- name: 'name' in element ? element.name : undefined
10
- }));
11
- }
12
6
  export class ParseCommand extends Command {
13
7
  constructor() {
14
8
  super(...arguments);
@@ -18,32 +12,37 @@ export class ParseCommand extends Command {
18
12
  });
19
13
  }
20
14
  async execute() {
21
- const services = createReqlanServices(NodeFileSystem).Reqlan;
22
15
  try {
23
- const { document, diagnostics, errorCount } = await parseDocument(this.file, services);
24
- const model = document.parseResult?.value;
16
+ if (extname(this.file) !== '.rq') {
17
+ throw new Error('Please choose a file with one of these extensions: .rq.');
18
+ }
19
+ if (!existsSync(this.file)) {
20
+ throw new Error(`File ${this.file} does not exist.`);
21
+ }
22
+ const source = readFileSync(resolve(this.file), 'utf8');
23
+ const parsed = parseReqlanSource(source);
25
24
  const payload = {
26
25
  file: this.file,
27
- ok: errorCount === 0,
28
- errorCount,
29
- diagnostics,
30
- elements: model ? elementSummary(model) : []
26
+ ok: parsed.ok,
27
+ errorCount: parsed.errorCount,
28
+ diagnostics: parsed.diagnostics,
29
+ elements: parsed.elements
31
30
  };
32
31
  if (this.json) {
33
32
  emit(payload, true);
34
33
  }
35
- else if (errorCount > 0) {
34
+ else if (parsed.errorCount > 0) {
36
35
  this.context.stderr.write('There are validation errors:\n');
37
- for (const d of diagnostics.filter(x => x.severity === 1)) {
38
- this.context.stderr.write(`line ${d.line}: ${d.message} [${d.text}]\n`);
36
+ for (const diagnostic of parsed.diagnostics.filter(item => item.severity === 1)) {
37
+ this.context.stderr.write(`line ${diagnostic.line}: ${diagnostic.message} [${diagnostic.text}]\n`);
39
38
  }
40
39
  }
41
40
  else {
42
- const lines = payload.elements.map(el => el.name ? `${el.type} ${el.name}` : el.type);
41
+ const lines = parsed.elements.map(element => element.name ? `${element.type} ${element.name}` : element.type);
43
42
  this.context.stdout.write(`Parsed ${this.file}: ${lines.length} top-level element(s)\n` +
44
- (lines.length > 0 ? lines.map(l => ` - ${l}`).join('\n') + '\n' : ''));
43
+ (lines.length > 0 ? lines.map(line => ` - ${line}`).join('\n') + '\n' : ''));
45
44
  }
46
- return errorCount > 0 ? 1 : 0;
45
+ return parsed.errorCount > 0 ? 1 : 0;
47
46
  }
48
47
  catch (error) {
49
48
  const message = error instanceof Error ? error.message : String(error);
@@ -1 +1 @@
1
- {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../src/commands/parse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../src/commands/parse.ts"],"names":[],"mappings":"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"}
package/out/runtime.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- import { AnalysisApi } from '@reqlan/analytical';
1
+ import { type HeadlessAnalysisApi } from '@reqlan/analytical/core';
2
2
  export declare function resolveWorkspaceRoot(cwd?: string): string;
3
- export declare function withAnalysisApi<T>(cwd: string | undefined, run: (api: AnalysisApi) => Promise<T>): Promise<T>;
3
+ export declare function withAnalysisApi<T>(cwd: string | undefined, run: (api: HeadlessAnalysisApi) => Promise<T>): Promise<T>;
package/out/runtime.js CHANGED
@@ -1,6 +1,11 @@
1
+ /**
2
+ * CLI runtime uses the core analytical engine, not Langium.
3
+ * rq:["../../../reqlan rq/core_analysis/rust_port.rq".cutover]
4
+ * rq:["../../../reqlan rq/cli/cli_package.rq".architecture]
5
+ */
1
6
  import { existsSync } from 'node:fs';
2
7
  import { dirname, resolve } from 'node:path';
3
- import { activateAnalysisRuntime, AnalysisApi, createAnalysisRuntime, deactivateAnalysisRuntime } from '@reqlan/analytical';
8
+ import { openAnalysisApi } from '@reqlan/analytical/core';
4
9
  export function resolveWorkspaceRoot(cwd) {
5
10
  const fromEnv = process.env.REQLAN_WORKSPACE?.trim();
6
11
  if (fromEnv) {
@@ -20,17 +25,15 @@ export function resolveWorkspaceRoot(cwd) {
20
25
  }
21
26
  export async function withAnalysisApi(cwd, run) {
22
27
  const workspaceRoot = resolveWorkspaceRoot(cwd);
23
- const runtime = createAnalysisRuntime({
28
+ const opened = await openAnalysisApi({
24
29
  workspaceRoot,
25
- cwd: cwd ? resolve(cwd) : process.cwd(),
26
30
  storagePath: process.env.REQLAN_INDEX_PATH
27
31
  });
28
- await activateAnalysisRuntime(runtime);
29
32
  try {
30
- return await run(new AnalysisApi(runtime));
33
+ return await run(opened.api);
31
34
  }
32
35
  finally {
33
- await deactivateAnalysisRuntime(runtime);
36
+ await opened.dispose();
34
37
  }
35
38
  }
36
39
  //# sourceMappingURL=runtime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EACH,uBAAuB,EACvB,WAAW,EACX,qBAAqB,EACrB,yBAAyB,EAE5B,MAAM,oBAAoB,CAAC;AAE5B,MAAM,UAAU,oBAAoB,CAAC,GAAY;IAC7C,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC;IACrD,IAAI,OAAO,EAAE,CAAC;QACV,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACxC,SAAS,CAAC;QACN,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC;YACtF,OAAO,GAAG,CAAC;QACf,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YACjB,OAAO,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,GAAG,GAAG,MAAM,CAAC;IACjB,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACjC,GAAuB,EACvB,GAAqC;IAErC,MAAM,aAAa,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAChD,MAAM,OAAO,GAAoB,qBAAqB,CAAC;QACnD,aAAa;QACb,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;QACvC,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;KAC7C,CAAC,CAAC;IACH,MAAM,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACvC,IAAI,CAAC;QACD,OAAO,MAAM,GAAG,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/C,CAAC;YAAS,CAAC;QACP,MAAM,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,eAAe,EAA4B,MAAM,yBAAyB,CAAC;AAEpF,MAAM,UAAU,oBAAoB,CAAC,GAAY;IAC7C,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC;IACrD,IAAI,OAAO,EAAE,CAAC;QACV,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACxC,SAAS,CAAC;QACN,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC;YACtF,OAAO,GAAG,CAAC;QACf,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YACjB,OAAO,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,GAAG,GAAG,MAAM,CAAC;IACjB,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACjC,GAAuB,EACvB,GAA6C;IAE7C,MAAM,aAAa,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC;QACjC,aAAa;QACb,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;KAC7C,CAAC,CAAC;IACH,IAAI,CAAC;QACD,OAAO,MAAM,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;YAAS,CAAC;QACP,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;AACL,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@reqlan/cli",
3
3
  "description": "CLI for parsing, analysing, and exporting reqlan requirement graphs",
4
- "version": "0.6.1",
4
+ "version": "0.7.1",
5
5
  "type": "module",
6
6
  "license": "AGPL-3.0-only",
7
7
  "repository": {
@@ -25,9 +25,7 @@
25
25
  },
26
26
  "dependencies": {
27
27
  "clipanion": "3.2.1",
28
- "langium": "~4.3.0",
29
- "@reqlan/analytical": "0.9.1",
30
- "@reqlan/language": "1.8.3"
28
+ "@reqlan/analytical": "0.10.1"
31
29
  },
32
30
  "devDependencies": {
33
31
  "shx": "~0.4.0",
package/out/util.d.ts DELETED
@@ -1,14 +0,0 @@
1
- import type { AstNode, LangiumCoreServices, LangiumDocument } from 'langium';
2
- export interface ParseResult {
3
- document: LangiumDocument;
4
- diagnostics: Array<{
5
- severity: number;
6
- line: number;
7
- character: number;
8
- message: string;
9
- text: string;
10
- }>;
11
- errorCount: number;
12
- }
13
- export declare function parseDocument(fileName: string, services: LangiumCoreServices): Promise<ParseResult>;
14
- export declare function extractAstNode<T extends AstNode>(fileName: string, services: LangiumCoreServices): Promise<T>;
package/out/util.js DELETED
@@ -1,35 +0,0 @@
1
- import * as path from 'node:path';
2
- import * as fs from 'node:fs';
3
- import { URI } from 'langium';
4
- export async function parseDocument(fileName, services) {
5
- const extensions = services.LanguageMetaData.fileExtensions;
6
- if (!extensions.includes(path.extname(fileName))) {
7
- throw new Error(`Please choose a file with one of these extensions: ${extensions.join(', ')}.`);
8
- }
9
- if (!fs.existsSync(fileName)) {
10
- throw new Error(`File ${fileName} does not exist.`);
11
- }
12
- const document = await services.shared.workspace.LangiumDocuments.getOrCreateDocument(URI.file(path.resolve(fileName)));
13
- await services.shared.workspace.DocumentBuilder.build([document], { validation: true });
14
- const diagnostics = (document.diagnostics ?? []).map(d => ({
15
- severity: d.severity ?? 0,
16
- line: d.range.start.line + 1,
17
- character: d.range.start.character + 1,
18
- message: typeof d.message === 'string' ? d.message : d.message.value,
19
- text: document.textDocument.getText(d.range)
20
- }));
21
- const errorCount = diagnostics.filter(d => d.severity === 1).length;
22
- return { document, diagnostics, errorCount };
23
- }
24
- export async function extractAstNode(fileName, services) {
25
- const { document, errorCount, diagnostics } = await parseDocument(fileName, services);
26
- if (errorCount > 0) {
27
- const details = diagnostics
28
- .filter(d => d.severity === 1)
29
- .map(d => `line ${d.line}: ${d.message}`)
30
- .join('\n');
31
- throw new Error(`Validation errors:\n${details}`);
32
- }
33
- return document.parseResult?.value;
34
- }
35
- //# sourceMappingURL=util.js.map
package/out/util.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAc9B,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,QAAgB,EAAE,QAA6B;IAC/E,MAAM,UAAU,GAAG,QAAQ,CAAC,gBAAgB,CAAC,cAAc,CAAC;IAC5D,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,sDAAsD,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpG,CAAC;IAED,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,QAAQ,QAAQ,kBAAkB,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,mBAAmB,CACjF,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CACnC,CAAC;IACF,MAAM,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;IAExF,MAAM,WAAW,GAAG,CAAC,QAAQ,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACvD,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,CAAC;QACzB,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC;QAC5B,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC;QACtC,OAAO,EAAE,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK;QACpE,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;KAC/C,CAAC,CAAC,CAAC;IACJ,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;IAEpE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;AACjD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAChC,QAAgB,EAChB,QAA6B;IAE7B,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACtF,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,WAAW;aACtB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC;aAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;aACxC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,uBAAuB,OAAO,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,QAAQ,CAAC,WAAW,EAAE,KAAU,CAAC;AAC5C,CAAC"}