@nowline/cli 0.0.0-dev.20261016125632.gcdc768a → 0.0.0-dev.20261016135659.g7e263e2
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/diagnostics/adapt.d.ts +7 -5
- package/dist/diagnostics/adapt.d.ts.map +1 -1
- package/dist/diagnostics/adapt.js +31 -12
- package/dist/diagnostics/adapt.js.map +1 -1
- package/dist/generated/version.d.ts +1 -1
- package/dist/generated/version.js +2 -2
- package/package.json +14 -14
- package/src/diagnostics/adapt.ts +35 -12
- package/src/generated/version.ts +2 -2
|
@@ -4,11 +4,13 @@ export declare function adaptLangiumDiagnostic(diag: LangiumLikeDiagnostic, file
|
|
|
4
4
|
export declare function adaptParserError(err: ParserErrorLike, file: string): CliDiagnostic;
|
|
5
5
|
export declare function adaptLexerError(err: LexerErrorLike, file: string): CliDiagnostic;
|
|
6
6
|
/**
|
|
7
|
-
* Adapt a routed
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
7
|
+
* Adapt a routed include-resolver diagnostic (a wave rule or an included
|
|
8
|
+
* file's NL.E0302). With a `range`, the column and span are the validator's
|
|
9
|
+
* for the same finding. Without one, the diagnostic carries only a 0-based
|
|
10
|
+
* line: `contents` is the text of the file it points into, when known, and
|
|
11
|
+
* the span covers the line's text, so the code frame still underlines the
|
|
12
|
+
* declaration. A coded diagnostic keeps `{ code, args }` in `data` for
|
|
13
|
+
* re-localization.
|
|
12
14
|
*/
|
|
13
15
|
export declare function adaptResolveDiagnostic(diag: ResolveDiagnostic, file: string, contents?: string): CliDiagnostic;
|
|
14
16
|
//# sourceMappingURL=adapt.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapt.d.ts","sourceRoot":"","sources":["../../src/diagnostics/adapt.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EAEzB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,aAAa,EAA4C,MAAM,YAAY,CAAC;AAE1F,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,CA2B/F;AAgBD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,CAclF;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,CAgBhF;AAMD
|
|
1
|
+
{"version":3,"file":"adapt.d.ts","sourceRoot":"","sources":["../../src/diagnostics/adapt.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EAEzB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,aAAa,EAA4C,MAAM,YAAY,CAAC;AAE1F,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,CA2B/F;AAgBD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,CAclF;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,CAgBhF;AAMD;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAClC,IAAI,EAAE,iBAAiB,EACvB,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,MAAM,GAClB,aAAa,CAWf"}
|
|
@@ -79,29 +79,48 @@ function mapSeverity(severity) {
|
|
|
79
79
|
return severity === 2 ? 'warning' : 'error';
|
|
80
80
|
}
|
|
81
81
|
/**
|
|
82
|
-
* Adapt a routed
|
|
83
|
-
*
|
|
84
|
-
*
|
|
85
|
-
*
|
|
86
|
-
*
|
|
82
|
+
* Adapt a routed include-resolver diagnostic (a wave rule or an included
|
|
83
|
+
* file's NL.E0302). With a `range`, the column and span are the validator's
|
|
84
|
+
* for the same finding. Without one, the diagnostic carries only a 0-based
|
|
85
|
+
* line: `contents` is the text of the file it points into, when known, and
|
|
86
|
+
* the span covers the line's text, so the code frame still underlines the
|
|
87
|
+
* declaration. A coded diagnostic keeps `{ code, args }` in `data` for
|
|
88
|
+
* re-localization.
|
|
87
89
|
*/
|
|
88
90
|
export function adaptResolveDiagnostic(diag, file, contents) {
|
|
91
|
+
return {
|
|
92
|
+
file,
|
|
93
|
+
...resolveLocation(diag, contents),
|
|
94
|
+
severity: diag.severity,
|
|
95
|
+
// WV8 is uncoded; label it the way the validator's copy is labelled.
|
|
96
|
+
code: diag.code ?? inferCodeFromMessage(diag.message),
|
|
97
|
+
message: diag.message,
|
|
98
|
+
suggestion: extractSuggestion(diag.message),
|
|
99
|
+
data: diag.code === undefined ? undefined : { code: diag.code, args: diag.args ?? [] },
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
function resolveLocation(diag, contents) {
|
|
103
|
+
if (diag.range) {
|
|
104
|
+
const line = diag.range.start.line + 1;
|
|
105
|
+
const column = diag.range.start.character + 1;
|
|
106
|
+
return {
|
|
107
|
+
line,
|
|
108
|
+
column,
|
|
109
|
+
span: {
|
|
110
|
+
start: { line, column },
|
|
111
|
+
end: { line: diag.range.end.line + 1, column: diag.range.end.character + 1 },
|
|
112
|
+
},
|
|
113
|
+
};
|
|
114
|
+
}
|
|
89
115
|
const line = (diag.line ?? 0) + 1;
|
|
90
116
|
const text = contents?.split(/\r?\n/)[line - 1]?.trimEnd() ?? '';
|
|
91
117
|
const column = text.length - text.trimStart().length + 1;
|
|
92
118
|
return {
|
|
93
|
-
file,
|
|
94
119
|
line,
|
|
95
120
|
column,
|
|
96
|
-
severity: diag.severity,
|
|
97
121
|
span: text.trim() === ''
|
|
98
122
|
? undefined
|
|
99
123
|
: { start: { line, column }, end: { line, column: text.length + 1 } },
|
|
100
|
-
// WV8 is uncoded; label it the way the validator's copy is labelled.
|
|
101
|
-
code: diag.code ?? inferCodeFromMessage(diag.message),
|
|
102
|
-
message: diag.message,
|
|
103
|
-
suggestion: extractSuggestion(diag.message),
|
|
104
|
-
data: diag.code === undefined ? undefined : { code: diag.code, args: diag.args ?? [] },
|
|
105
124
|
};
|
|
106
125
|
}
|
|
107
126
|
//# sourceMappingURL=adapt.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapt.js","sourceRoot":"","sources":["../../src/diagnostics/adapt.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"adapt.js","sourceRoot":"","sources":["../../src/diagnostics/adapt.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const CLI_VERSION = "0.0.0-dev.
|
|
1
|
+
export declare const CLI_VERSION = "0.0.0-dev.20261016135659.g7e263e2";
|
|
2
2
|
export interface CliBuild {
|
|
3
3
|
/** Short git SHA at build time, or empty when not in a git checkout. */
|
|
4
4
|
readonly sha: string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Auto-generated by scripts/bundle-templates.mjs. Do not edit by hand.
|
|
2
|
-
export const CLI_VERSION = "0.0.0-dev.
|
|
2
|
+
export const CLI_VERSION = "0.0.0-dev.20261016135659.g7e263e2";
|
|
3
3
|
export const CLI_BUILD = {
|
|
4
|
-
"sha": "
|
|
4
|
+
"sha": "7e263e2",
|
|
5
5
|
"isRelease": false,
|
|
6
6
|
"isDirty": true
|
|
7
7
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nowline/cli",
|
|
3
|
-
"version": "0.0.0-dev.
|
|
3
|
+
"version": "0.0.0-dev.20261016135659.g7e263e2",
|
|
4
4
|
"description": "Command-line tool to check, convert, and create Nowline roadmaps.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"engines": {
|
|
@@ -34,19 +34,19 @@
|
|
|
34
34
|
"@clack/prompts": "^1.8.1",
|
|
35
35
|
"@modelcontextprotocol/node": "^2.1.0",
|
|
36
36
|
"@modelcontextprotocol/server": "^2.2.0",
|
|
37
|
-
"@nowline/config": "0.0.0-dev.
|
|
38
|
-
"@nowline/core": "0.0.0-dev.
|
|
39
|
-
"@nowline/export": "0.0.0-dev.
|
|
40
|
-
"@nowline/export-core": "0.0.0-dev.
|
|
41
|
-
"@nowline/export-html": "0.0.0-dev.
|
|
42
|
-
"@nowline/export-mermaid": "0.0.0-dev.
|
|
43
|
-
"@nowline/export-msproj": "0.0.0-dev.
|
|
44
|
-
"@nowline/export-pdf": "0.0.0-dev.
|
|
45
|
-
"@nowline/export-png": "0.0.0-dev.
|
|
46
|
-
"@nowline/export-xlsx": "0.0.0-dev.
|
|
47
|
-
"@nowline/layout": "0.0.0-dev.
|
|
48
|
-
"@nowline/mcp": "0.0.0-dev.
|
|
49
|
-
"@nowline/renderer": "0.0.0-dev.
|
|
37
|
+
"@nowline/config": "0.0.0-dev.20261016135659.g7e263e2",
|
|
38
|
+
"@nowline/core": "0.0.0-dev.20261016135659.g7e263e2",
|
|
39
|
+
"@nowline/export": "0.0.0-dev.20261016135659.g7e263e2",
|
|
40
|
+
"@nowline/export-core": "0.0.0-dev.20261016135659.g7e263e2",
|
|
41
|
+
"@nowline/export-html": "0.0.0-dev.20261016135659.g7e263e2",
|
|
42
|
+
"@nowline/export-mermaid": "0.0.0-dev.20261016135659.g7e263e2",
|
|
43
|
+
"@nowline/export-msproj": "0.0.0-dev.20261016135659.g7e263e2",
|
|
44
|
+
"@nowline/export-pdf": "0.0.0-dev.20261016135659.g7e263e2",
|
|
45
|
+
"@nowline/export-png": "0.0.0-dev.20261016135659.g7e263e2",
|
|
46
|
+
"@nowline/export-xlsx": "0.0.0-dev.20261016135659.g7e263e2",
|
|
47
|
+
"@nowline/layout": "0.0.0-dev.20261016135659.g7e263e2",
|
|
48
|
+
"@nowline/mcp": "0.0.0-dev.20261016135659.g7e263e2",
|
|
49
|
+
"@nowline/renderer": "0.0.0-dev.20261016135659.g7e263e2",
|
|
50
50
|
"chalk": "^6.0.1",
|
|
51
51
|
"citty": "^0.2.2",
|
|
52
52
|
"consola": "^3.4.2",
|
package/src/diagnostics/adapt.ts
CHANGED
|
@@ -91,33 +91,56 @@ function mapSeverity(severity: number | undefined): DiagnosticSeverity {
|
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
/**
|
|
94
|
-
* Adapt a routed
|
|
95
|
-
*
|
|
96
|
-
*
|
|
97
|
-
*
|
|
98
|
-
*
|
|
94
|
+
* Adapt a routed include-resolver diagnostic (a wave rule or an included
|
|
95
|
+
* file's NL.E0302). With a `range`, the column and span are the validator's
|
|
96
|
+
* for the same finding. Without one, the diagnostic carries only a 0-based
|
|
97
|
+
* line: `contents` is the text of the file it points into, when known, and
|
|
98
|
+
* the span covers the line's text, so the code frame still underlines the
|
|
99
|
+
* declaration. A coded diagnostic keeps `{ code, args }` in `data` for
|
|
100
|
+
* re-localization.
|
|
99
101
|
*/
|
|
100
102
|
export function adaptResolveDiagnostic(
|
|
101
103
|
diag: ResolveDiagnostic,
|
|
102
104
|
file: string,
|
|
103
105
|
contents?: string,
|
|
104
106
|
): CliDiagnostic {
|
|
107
|
+
return {
|
|
108
|
+
file,
|
|
109
|
+
...resolveLocation(diag, contents),
|
|
110
|
+
severity: diag.severity,
|
|
111
|
+
// WV8 is uncoded; label it the way the validator's copy is labelled.
|
|
112
|
+
code: diag.code ?? inferCodeFromMessage(diag.message),
|
|
113
|
+
message: diag.message,
|
|
114
|
+
suggestion: extractSuggestion(diag.message),
|
|
115
|
+
data: diag.code === undefined ? undefined : { code: diag.code, args: diag.args ?? [] },
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
function resolveLocation(
|
|
120
|
+
diag: ResolveDiagnostic,
|
|
121
|
+
contents: string | undefined,
|
|
122
|
+
): Pick<CliDiagnostic, 'line' | 'column' | 'span'> {
|
|
123
|
+
if (diag.range) {
|
|
124
|
+
const line = diag.range.start.line + 1;
|
|
125
|
+
const column = diag.range.start.character + 1;
|
|
126
|
+
return {
|
|
127
|
+
line,
|
|
128
|
+
column,
|
|
129
|
+
span: {
|
|
130
|
+
start: { line, column },
|
|
131
|
+
end: { line: diag.range.end.line + 1, column: diag.range.end.character + 1 },
|
|
132
|
+
},
|
|
133
|
+
};
|
|
134
|
+
}
|
|
105
135
|
const line = (diag.line ?? 0) + 1;
|
|
106
136
|
const text = contents?.split(/\r?\n/)[line - 1]?.trimEnd() ?? '';
|
|
107
137
|
const column = text.length - text.trimStart().length + 1;
|
|
108
138
|
return {
|
|
109
|
-
file,
|
|
110
139
|
line,
|
|
111
140
|
column,
|
|
112
|
-
severity: diag.severity,
|
|
113
141
|
span:
|
|
114
142
|
text.trim() === ''
|
|
115
143
|
? undefined
|
|
116
144
|
: { start: { line, column }, end: { line, column: text.length + 1 } },
|
|
117
|
-
// WV8 is uncoded; label it the way the validator's copy is labelled.
|
|
118
|
-
code: diag.code ?? inferCodeFromMessage(diag.message),
|
|
119
|
-
message: diag.message,
|
|
120
|
-
suggestion: extractSuggestion(diag.message),
|
|
121
|
-
data: diag.code === undefined ? undefined : { code: diag.code, args: diag.args ?? [] },
|
|
122
145
|
};
|
|
123
146
|
}
|
package/src/generated/version.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Auto-generated by scripts/bundle-templates.mjs. Do not edit by hand.
|
|
2
2
|
|
|
3
|
-
export const CLI_VERSION = "0.0.0-dev.
|
|
3
|
+
export const CLI_VERSION = "0.0.0-dev.20261016135659.g7e263e2";
|
|
4
4
|
|
|
5
5
|
export interface CliBuild {
|
|
6
6
|
/** Short git SHA at build time, or empty when not in a git checkout. */
|
|
@@ -12,7 +12,7 @@ export interface CliBuild {
|
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
export const CLI_BUILD: CliBuild = {
|
|
15
|
-
"sha": "
|
|
15
|
+
"sha": "7e263e2",
|
|
16
16
|
"isRelease": false,
|
|
17
17
|
"isDirty": true
|
|
18
18
|
};
|