@nowline/cli 0.8.5 → 0.9.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.
Files changed (102) hide show
  1. package/README.md +42 -12
  2. package/dist/cli/args.d.ts +21 -5
  3. package/dist/cli/args.d.ts.map +1 -1
  4. package/dist/cli/args.js +26 -1
  5. package/dist/cli/args.js.map +1 -1
  6. package/dist/cli/formats.d.ts.map +1 -1
  7. package/dist/cli/help.d.ts.map +1 -1
  8. package/dist/cli/help.js +35 -2
  9. package/dist/cli/help.js.map +1 -1
  10. package/dist/cli/options.d.ts +74 -0
  11. package/dist/cli/options.d.ts.map +1 -0
  12. package/dist/cli/options.js +209 -0
  13. package/dist/cli/options.js.map +1 -0
  14. package/dist/commands/init.d.ts.map +1 -1
  15. package/dist/commands/init.js +2 -3
  16. package/dist/commands/init.js.map +1 -1
  17. package/dist/commands/mcp-install.d.ts +18 -0
  18. package/dist/commands/mcp-install.d.ts.map +1 -0
  19. package/dist/commands/mcp-install.js +151 -0
  20. package/dist/commands/mcp-install.js.map +1 -0
  21. package/dist/commands/mcp.d.ts.map +1 -1
  22. package/dist/commands/mcp.js +6 -12
  23. package/dist/commands/mcp.js.map +1 -1
  24. package/dist/commands/render.d.ts +7 -0
  25. package/dist/commands/render.d.ts.map +1 -1
  26. package/dist/commands/render.js +176 -152
  27. package/dist/commands/render.js.map +1 -1
  28. package/dist/commands/serve.d.ts.map +1 -1
  29. package/dist/commands/serve.js +87 -60
  30. package/dist/commands/serve.js.map +1 -1
  31. package/dist/core/parse.js.map +1 -1
  32. package/dist/diagnostics/adapt.d.ts +12 -1
  33. package/dist/diagnostics/adapt.d.ts.map +1 -1
  34. package/dist/diagnostics/adapt.js +53 -1
  35. package/dist/diagnostics/adapt.js.map +1 -1
  36. package/dist/diagnostics/format.js.map +1 -1
  37. package/dist/diagnostics/model.d.ts +1 -1
  38. package/dist/diagnostics/text.js.map +1 -1
  39. package/dist/generated/version.d.ts +1 -1
  40. package/dist/generated/version.js +2 -2
  41. package/dist/i18n/locale.d.ts +1 -1
  42. package/dist/i18n/locale.d.ts.map +1 -1
  43. package/dist/i18n/locale.js +2 -5
  44. package/dist/i18n/locale.js.map +1 -1
  45. package/dist/index.js +4 -0
  46. package/dist/index.js.map +1 -1
  47. package/dist/io/config.d.ts +1 -1
  48. package/dist/io/config.d.ts.map +1 -1
  49. package/dist/io/config.js +1 -1
  50. package/dist/io/config.js.map +1 -1
  51. package/dist/io/exit-codes.d.ts.map +1 -1
  52. package/dist/io/exit-codes.js.map +1 -1
  53. package/dist/io/log.d.ts +17 -0
  54. package/dist/io/log.d.ts.map +1 -0
  55. package/dist/io/log.js +16 -0
  56. package/dist/io/log.js.map +1 -0
  57. package/dist/io/read.d.ts +3 -0
  58. package/dist/io/read.d.ts.map +1 -1
  59. package/dist/io/read.js +32 -5
  60. package/dist/io/read.js.map +1 -1
  61. package/dist/io/write.js.map +1 -1
  62. package/dist/mcp-install/clients.d.ts +58 -0
  63. package/dist/mcp-install/clients.d.ts.map +1 -0
  64. package/dist/mcp-install/clients.js +304 -0
  65. package/dist/mcp-install/clients.js.map +1 -0
  66. package/dist/mcp-install/host.d.ts +29 -0
  67. package/dist/mcp-install/host.d.ts.map +1 -0
  68. package/dist/mcp-install/host.js +72 -0
  69. package/dist/mcp-install/host.js.map +1 -0
  70. package/dist/mcp-install/json-config.d.ts +29 -0
  71. package/dist/mcp-install/json-config.d.ts.map +1 -0
  72. package/dist/mcp-install/json-config.js +139 -0
  73. package/dist/mcp-install/json-config.js.map +1 -0
  74. package/dist/mcp-install/server-command.d.ts +26 -0
  75. package/dist/mcp-install/server-command.d.ts.map +1 -0
  76. package/dist/mcp-install/server-command.js +52 -0
  77. package/dist/mcp-install/server-command.js.map +1 -0
  78. package/man/fr/nowline.1 +246 -19
  79. package/man/fr/nowline.5 +819 -45
  80. package/man/nowline.1 +191 -18
  81. package/man/nowline.5 +764 -36
  82. package/package.json +24 -24
  83. package/src/cli/args.ts +69 -8
  84. package/src/cli/help.ts +35 -2
  85. package/src/cli/options.ts +286 -0
  86. package/src/commands/init.ts +2 -3
  87. package/src/commands/mcp-install.ts +211 -0
  88. package/src/commands/mcp.ts +9 -14
  89. package/src/commands/render.ts +219 -186
  90. package/src/commands/serve.ts +102 -74
  91. package/src/diagnostics/adapt.ts +62 -0
  92. package/src/diagnostics/model.ts +1 -1
  93. package/src/generated/version.ts +2 -2
  94. package/src/i18n/locale.ts +2 -6
  95. package/src/index.ts +3 -0
  96. package/src/io/config.ts +0 -1
  97. package/src/io/log.ts +33 -0
  98. package/src/io/read.ts +39 -5
  99. package/src/mcp-install/clients.ts +443 -0
  100. package/src/mcp-install/host.ts +106 -0
  101. package/src/mcp-install/json-config.ts +179 -0
  102. package/src/mcp-install/server-command.ts +75 -0
@@ -1,18 +1,18 @@
1
1
  import { promises as fs } from 'node:fs';
2
2
  import * as path from 'node:path';
3
- import { exportDocument, } from '@nowline/export';
4
- import { lengthToPoints, parseLength } from '@nowline/export-core';
5
- import { normalizeThemeName, normalizeZone, resolveToday, TimezoneError, } from '@nowline/layout';
3
+ import { acceptStagedRoadmap, exportStaged, stageForExport, } from '@nowline/export';
6
4
  import { FormatResolutionError, isInputFormat, resolveFormat, } from '../cli/formats.js';
5
+ import { resolveCliOptions } from '../cli/options.js';
7
6
  import { resolveRenderOutputPath } from '../cli/output-path.js';
8
7
  import { parseNowlineJson } from '../convert/parse-json.js';
9
8
  import { printNowlineFile } from '../convert/printer.js';
10
9
  import { serializeToJson } from '../convert/schema.js';
11
- import { parseSource } from '../core/parse.js';
12
- import { formatDiagnostics } from '../diagnostics/index.js';
10
+ import { getServices, parseSource } from '../core/parse.js';
11
+ import { adaptResolveDiagnostic, formatDiagnostics, } from '../diagnostics/index.js';
13
12
  import { describeContentLocaleSource, operatorLocale, readDirectiveLocale, resolveLocaleOverride, } from '../i18n/locale.js';
14
13
  import { loadConfig } from '../io/config.js';
15
14
  import { CliError, ExitCode } from '../io/exit-codes.js';
15
+ import { createLog } from '../io/log.js';
16
16
  import { readInput } from '../io/read.js';
17
17
  import { writeOutput } from '../io/write.js';
18
18
  /**
@@ -27,16 +27,18 @@ export async function renderHandler(options) {
27
27
  throw new CliError(ExitCode.InputError, 'nowline: missing input file. Pass a path, "-" for stdin, or run `nowline --help`.');
28
28
  }
29
29
  const isStdoutOutput = args.output === '-';
30
- const config = await loadConfigFor(args.positional, cwd);
30
+ const log = createLog(args.logLevel);
31
+ const { config, path: rcPath } = await loadConfigFor(args.positional, cwd);
32
+ // Every rc-backed setting resolves flag > .nowlinerc > default; a bad
33
+ // value is reported by `assertValid` below, where it always has been.
34
+ const cliOptions = resolveCliOptions(args, config, { rcPath });
31
35
  const format = resolveFormatOrThrow({
32
36
  flag: args.format,
33
37
  outputPath: args.output,
34
- configFormat: typeof config?.defaultFormat === 'string' ? config.defaultFormat : undefined,
38
+ configFormat: cliOptions.defaultFormat,
35
39
  isStdout: isStdoutOutput,
36
40
  });
37
- if (args.logLevel === 'verbose') {
38
- process.stderr.write(`nowline: format=${format} (resolved)\n`);
39
- }
41
+ log.verbose(`nowline: format=${format} (resolved)`);
40
42
  const resolvedOutput = resolveRenderOutputPath({
41
43
  outputArg: args.output,
42
44
  isStdout: isStdoutOutput,
@@ -50,10 +52,11 @@ export async function renderHandler(options) {
50
52
  const resolved = resolveLocaleOverride({
51
53
  flag: args.locale,
52
54
  env: process.env,
53
- rc: stringFromConfig(config, 'locale'),
55
+ rc: cliOptions.rcLocale,
54
56
  });
55
57
  const locale = resolved.tag;
56
58
  const opLocale = operatorLocale(resolved);
59
+ cliOptions.assertValid();
57
60
  const { rendered, isBinary } = await produce({
58
61
  format,
59
62
  inputFormat,
@@ -61,37 +64,38 @@ export async function renderHandler(options) {
61
64
  displayPath: input.displayPath,
62
65
  absInputPath: input.isStdin ? path.resolve(cwd, 'stdin.nowline') : input.path,
63
66
  isStdin: input.isStdin,
64
- theme: parseTheme(args.theme),
65
- today: resolveNowCli(args),
66
- width: parseWidthArg(args.width),
67
+ theme: cliOptions.surface.theme,
68
+ today: cliOptions.surface.today,
69
+ width: cliOptions.surface.width,
70
+ nonWorking: cliOptions.surface.nonWorking,
67
71
  noLinks: args.noLinks,
68
72
  strict: args.strict,
69
- assetRoot: args.assetRoot,
70
- // m2c format-specific options. Strings get parsed inside the format
71
- // dispatch; the CLI just passes them through.
72
- pageSize: args.pageSize ?? stringFromConfig(config, 'pdfPageSize'),
73
- orientation: args.orientation ?? stringFromConfig(config, 'pdfOrientation'),
74
- margin: args.margin ?? stringFromConfig(config, 'pdfMargin'),
75
- fontSans: args.fontSans ?? stringFromConfig(config, 'fontSans'),
76
- fontMono: args.fontMono ?? stringFromConfig(config, 'fontMono'),
77
- headless: args.headless || boolFromConfig(config, 'headlessFonts'),
78
- useSystemFonts: args.useSystemFonts || boolFromConfig(config, 'useSystemFonts'),
73
+ assetRoot: cliOptions.assetRoot,
74
+ // m2c format-specific options. The PDF settings parse in `produce`,
75
+ // after validation, for every format.
76
+ pageSize: cliOptions.surface.pageSize,
77
+ orientation: cliOptions.orientation,
78
+ marginPt: cliOptions.margin,
79
+ assertPdfSettingsValid: () => cliOptions.assertPdfSettingsValid(),
80
+ fontSans: cliOptions.fontSans,
81
+ fontMono: cliOptions.fontMono,
82
+ headless: cliOptions.headless,
83
+ useSystemFonts: cliOptions.useSystemFonts,
79
84
  scale: args.scale,
80
85
  start: args.start,
81
86
  locale,
82
87
  operatorLocale: opLocale,
83
88
  resolvedLocale: resolved,
84
- verbose: args.logLevel === 'verbose',
89
+ log,
90
+ diagnosticFormat: resolveDiagnosticFormat(args),
85
91
  });
86
92
  if (args.dryRun) {
87
- if (args.logLevel === 'verbose') {
88
- process.stderr.write('nowline: --dry-run; skipping write\n');
89
- }
93
+ log.verbose('nowline: --dry-run; skipping write');
90
94
  return;
91
95
  }
92
96
  await writeOutput(resolvedOutput.isStdout ? '-' : resolvedOutput.path, rendered, isBinary ? 'binary' : 'text', { cwd });
93
- if (args.logLevel === 'verbose' && !resolvedOutput.isStdout) {
94
- process.stderr.write(`nowline: wrote ${resolvedOutput.path}\n`);
97
+ if (!resolvedOutput.isStdout) {
98
+ log.verbose(`nowline: wrote ${resolvedOutput.path}`);
95
99
  }
96
100
  }
97
101
  function resolveFormatOrThrow(inputs) {
@@ -136,37 +140,61 @@ async function produce(args) {
136
140
  const sourceText = args.inputFormat === 'json'
137
141
  ? jsonToNowlineText(args.contents, args.displayPath)
138
142
  : args.contents;
139
- // Pre-validate with locale-aware diagnostic formatting so validation
140
- // errors reach the operator in their locale. The kernel will re-parse
141
- // the same source below — double work accepted in exchange for faithful
142
- // stderr output.
143
- await parseAndValidate(sourceText, args);
144
143
  const assetRoot = args.assetRoot
145
144
  ? path.resolve(args.assetRoot)
146
145
  : path.dirname(args.absInputPath);
147
- const host = createNodeHostEnv(assetRoot);
146
+ // Included files' text, kept for the code frames of routed diagnostics.
147
+ const included = new Map();
148
+ const nodeHost = createNodeHostEnv(assetRoot);
149
+ const host = {
150
+ ...nodeHost,
151
+ readSource: async (absPath) => {
152
+ const text = await nodeHost.readSource(absPath);
153
+ included.set(absPath, text);
154
+ return text;
155
+ },
156
+ };
157
+ // What the stage lays out with; the export below must ask for the same.
158
+ const layoutInputs = {
159
+ sourcePath: args.absInputPath,
160
+ today: args.today,
161
+ locale: args.locale ?? 'und',
162
+ theme: args.theme,
163
+ width: args.width,
164
+ nonWorking: args.nonWorking,
165
+ };
166
+ // Parse and stage once. Validation diagnostics come out in the operator's
167
+ // locale, and routed include-resolver diagnostics join the validator's
168
+ // here, so they are reported at the same point and in the same report.
169
+ const { stage, stageFailure } = await parseAndValidate(sourceText, args, {
170
+ stage: { inputs: layoutInputs, host, included },
171
+ });
148
172
  // Resolve fonts lazily — only for formats that rasterize or embed them.
149
173
  let fonts;
150
174
  if (FONT_FORMATS.has(args.format)) {
151
175
  fonts = await resolveNodeFonts(args);
152
176
  }
177
+ args.assertPdfSettingsValid();
153
178
  const kernelInputs = {
154
- sourcePath: args.absInputPath,
155
- today: args.today,
156
- locale: args.locale ?? 'und',
157
- theme: args.theme,
179
+ ...layoutInputs,
158
180
  fonts,
159
- width: args.width,
160
181
  noLinks: args.noLinks,
161
182
  strict: args.strict,
162
183
  pageSize: args.pageSize,
163
- orientation: parseOrientation(args.orientation),
164
- marginPt: parseMargin(args.margin),
184
+ orientation: args.orientation,
185
+ marginPt: args.marginPt,
165
186
  pngScale: parseScale(args.scale),
166
187
  msprojStart: args.start,
188
+ onNotice: (message) => args.log.notice(message),
189
+ onWarning: (message) => args.log.notice(`warning: ${message}`),
167
190
  };
168
191
  try {
169
- const bytes = await exportDocument(sourceText, args.format, kernelInputs, host);
192
+ // A stage failure or an uncoded include error was held back until
193
+ // here, so a bad font or PDF setting is still reported first.
194
+ if (!stage)
195
+ throw stageFailure;
196
+ const staged = acceptStagedRoadmap(stage, kernelInputs);
197
+ const bytes = await exportStaged(staged, args.format, kernelInputs, host);
170
198
  const isBinary = BINARY_FORMATS.has(args.format);
171
199
  const rendered = isBinary
172
200
  ? bytes
@@ -180,6 +208,18 @@ async function produce(args) {
180
208
  throw new CliError(ExitCode.OutputError, `nowline: ${args.format} export failed: ${message}`);
181
209
  }
182
210
  }
211
+ /**
212
+ * How an included file is named in diagnostics: relative to the input's
213
+ * display path, so `examples/a.nowline` including `./teams/b.nowline` prints
214
+ * `examples/teams/b.nowline` (absolute when the input was given absolute).
215
+ */
216
+ function includeDisplayPath(absPath, args) {
217
+ const rel = path.relative(path.dirname(args.absInputPath), absPath);
218
+ if (path.isAbsolute(rel))
219
+ return rel;
220
+ const base = args.isStdin ? '' : path.dirname(args.displayPath);
221
+ return path.join(base, rel);
222
+ }
183
223
  // ---- Node HostEnv -----------------------------------------------------------
184
224
  function createNodeHostEnv(assetRoot) {
185
225
  const root = path.resolve(assetRoot);
@@ -240,16 +280,16 @@ async function resolveNodeFonts(args) {
240
280
  if (args.strict) {
241
281
  throw new CliError(ExitCode.InputError, `nowline: ${message}`);
242
282
  }
243
- process.stderr.write(`warning: ${message}\n`);
283
+ args.log.notice(`warning: ${message}`);
244
284
  }
245
285
  // Bundled fallback after an opted-in probe found no usable system font.
246
286
  // Only meaningful when --use-system-fonts is set; warn under --strict.
247
287
  if (args.strict) {
248
288
  if (result.sansFellBackToBundled) {
249
- process.stderr.write('warning: sans font fell back to bundled DejaVu (no platform font found)\n');
289
+ args.log.notice('warning: sans font fell back to bundled DejaVu (no platform font found)');
250
290
  }
251
291
  if (result.monoFellBackToBundled) {
252
- process.stderr.write('warning: mono font fell back to bundled DejaVu (no platform font found)\n');
292
+ args.log.notice('warning: mono font fell back to bundled DejaVu (no platform font found)');
253
293
  }
254
294
  }
255
295
  return { sans: result.sans, mono: result.mono };
@@ -269,138 +309,122 @@ function jsonToNowlineText(contents, displayPath) {
269
309
  const { ast } = parseNowlineJson(contents, displayPath);
270
310
  return printNowlineFile(ast);
271
311
  }
272
- async function parseAndValidate(contents, args) {
312
+ /**
313
+ * Parse and validate; on errors, report them and throw. With `stage`, the
314
+ * validated document is also staged (include resolution, logo, layout) and a
315
+ * file that has includes reports the routed (wave-rule) diagnostics of that
316
+ * stage with the validator's, in the same report (specs/waves.md §6.1). The
317
+ * stage is returned for the export to reuse. Every other include error, and a
318
+ * stage that throws, is left for the caller to report where the kernel always
319
+ * did (exit 3).
320
+ */
321
+ async function parseAndValidate(contents, args, options = {}) {
273
322
  const result = await parseSource(contents, args.displayPath, { validate: true });
274
- if (result.hasErrors) {
275
- emitDiagnostics(result.diagnostics, result.source, args.displayPath, args.operatorLocale);
276
- throw new CliError(ExitCode.ValidationError, '');
277
- }
278
- if (args.verbose) {
279
- const directive = readDirectiveLocale(result.ast);
280
- const { tag, source } = describeContentLocaleSource(directive, args.resolvedLocale);
281
- process.stderr.write(`nowline: locale=${tag} (${source})\n`);
282
- }
283
- return result;
284
- }
285
- async function loadConfigFor(inputArg, cwd) {
286
- try {
287
- if (inputArg === '-') {
288
- const { config } = await loadConfig(cwd);
289
- return config;
290
- }
291
- const abs = path.resolve(cwd, inputArg);
292
- const dir = path.dirname(abs);
293
- const { config } = await loadConfig(dir);
294
- return config;
295
- }
296
- catch {
297
- return null;
298
- }
299
- }
300
- function parseTheme(raw) {
301
- if (!raw)
302
- return 'light';
303
- // `greyscale` (UK) is accepted and canonicalized to `grayscale` (US).
304
- const theme = normalizeThemeName(raw);
305
- if (!theme) {
306
- throw new CliError(ExitCode.InputError, `nowline: invalid --theme "${raw}". Expected light, dark, or grayscale.`);
307
- }
308
- return theme;
309
- }
310
- // Resolve the now-line date from the CLI flags.
311
- //
312
- // Precedence:
313
- // 1. `--now -` → undefined (suppress now-line)
314
- // 2. `--now YYYY-MM-DD` → floating date; zone ignored
315
- // 3. `--now YYYY-MM-DDTHH:MM:SS[±HH:MM]` → civil date at embedded offset; --timezone ignored
316
- // 4. `--now YYYY-MM-DDTHH:MM:SSZ` → civil date in UTC; --timezone ignored
317
- // 5. `--now YYYY-MM-DDTHH:MM:SS` → floating; written date part; zone ignored
318
- // 6. flag omitted → civil date of today in --timezone (default: local)
319
- //
320
- // `--timezone` is only consulted for case 6. Authored dates in the roadmap
321
- // (bars, milestones, axis) are floating and are never affected.
322
- function resolveNowCli(args) {
323
- let zone;
324
- if (args.timezone) {
323
+ const diagnostics = [...result.diagnostics];
324
+ const sources = new Map([[args.displayPath, result.source]]);
325
+ let failed = result.hasErrors;
326
+ let stage;
327
+ let stageFailure;
328
+ if (!failed && options.stage) {
329
+ const { inputs, host, included } = options.stage;
325
330
  try {
326
- zone = normalizeZone(args.timezone);
331
+ stage = await stageForExport(contents, inputs, host, {
332
+ document: result.document,
333
+ services: getServices(),
334
+ });
327
335
  }
328
336
  catch (err) {
329
- if (err instanceof TimezoneError) {
330
- throw new CliError(ExitCode.InputError, err.message);
337
+ stageFailure = err;
338
+ }
339
+ if (stage && result.ast.includes.length > 0) {
340
+ for (const d of routedDiagnostics(stage)) {
341
+ const isRoot = d.sourcePath === args.absInputPath;
342
+ const file = isRoot ? args.displayPath : includeDisplayPath(d.sourcePath, args);
343
+ const text = isRoot ? result.source.contents : included.get(d.sourcePath);
344
+ if (text !== undefined)
345
+ sources.set(file, { file, contents: text });
346
+ diagnostics.push(adaptResolveDiagnostic(d, file, text));
347
+ if (d.severity === 'error')
348
+ failed = true;
331
349
  }
332
- throw err;
333
350
  }
334
351
  }
335
- const result = resolveToday({ now: args.now, zone });
336
- // resolveToday returns undefined for unrecognised strings; surface that as
337
- // an input error so the user gets a clear message instead of a silent no-line.
338
- if (result === undefined && args.now !== undefined && args.now !== '-') {
339
- throw new CliError(ExitCode.InputError, `nowline: invalid --now "${args.now}". ` +
340
- `Expected YYYY-MM-DD, YYYY-MM-DDTHH:MM:SS[Z|±HH:MM], or "-".`);
352
+ // Text mode prints only when the run fails. JSON mode prints one document
353
+ // whenever any diagnostic exists, warnings included, so a warnings-only
354
+ // run still exits 0 with the document on stderr.
355
+ if (failed || (args.diagnosticFormat === 'json' && diagnostics.length > 0)) {
356
+ emitDiagnostics(diagnostics, sources, args.operatorLocale, args.diagnosticFormat, args.log);
341
357
  }
342
- return result;
343
- }
344
- function parseScale(raw) {
345
- if (!raw)
346
- return undefined;
347
- const value = Number(raw);
348
- if (!Number.isFinite(value) || value <= 0) {
349
- throw new CliError(ExitCode.InputError, `nowline: invalid --scale "${raw}". Must be a positive number.`);
358
+ if (failed) {
359
+ throw new CliError(ExitCode.ValidationError, '');
350
360
  }
351
- return value;
361
+ const directive = readDirectiveLocale(result.ast);
362
+ const { tag, source } = describeContentLocaleSource(directive, args.resolvedLocale);
363
+ args.log.verbose(`nowline: locale=${tag} (${source})`);
364
+ return { ...result, stage, stageFailure };
352
365
  }
353
- function parseOrientation(raw) {
354
- if (!raw)
355
- return undefined;
356
- const lower = raw.toLowerCase();
357
- if (lower === 'portrait' || lower === 'landscape' || lower === 'auto')
358
- return lower;
359
- throw new CliError(ExitCode.InputError, `nowline: invalid --orientation "${raw}". Expected portrait, landscape, or auto.`);
366
+ /**
367
+ * The routed (wave-rule) diagnostics of a stage's include resolution. Empty
368
+ * when the resolver reports any other include error: that one is more
369
+ * fundamental, and the export reports it as before (exit 3).
370
+ */
371
+ function routedDiagnostics(stage) {
372
+ if (stage.kind === 'staged' || (stage.kind === 'include-error' && !stage.legacy)) {
373
+ return stage.routed;
374
+ }
375
+ return [];
360
376
  }
361
- function parseMargin(raw) {
362
- if (!raw)
363
- return undefined;
364
- if (/^\d+(?:\.\d+)?$/.test(raw))
365
- return Number(raw); // bare number → points
377
+ // Walk up from the input (or `cwd` for stdin) to the nearest `.nowlinerc`.
378
+ // No rc file is not an error. One that exists but cannot be read or parsed is
379
+ // a usage error (specs/cli.md, `.nowlinerc`): silently ignoring it would
380
+ // render with settings the user believes they changed. The loader's reason
381
+ // already names the file, so it is passed through. `--serve` shares this.
382
+ export async function loadConfigFor(inputArg, cwd) {
366
383
  try {
367
- return lengthToPoints(parseLength(raw));
384
+ if (inputArg === '-')
385
+ return await loadConfig(cwd);
386
+ const abs = path.resolve(cwd, inputArg);
387
+ return await loadConfig(path.dirname(abs));
368
388
  }
369
389
  catch (err) {
370
- const message = err instanceof Error ? err.message : String(err);
371
- throw new CliError(ExitCode.InputError, `nowline: invalid --margin "${raw}": ${message}`);
390
+ throw new CliError(ExitCode.InputError, `nowline: invalid .nowlinerc: ${err instanceof Error ? err.message : String(err)}`);
372
391
  }
373
392
  }
374
- function stringFromConfig(config, key) {
375
- if (!config)
376
- return undefined;
377
- const value = config[key];
378
- return typeof value === 'string' ? value : undefined;
379
- }
380
- function boolFromConfig(config, key) {
381
- if (!config)
382
- return false;
383
- const value = config[key];
384
- return value === true;
385
- }
386
- function parseWidthArg(raw) {
393
+ function parseScale(raw) {
387
394
  if (!raw)
388
395
  return undefined;
389
- const value = parseInt(raw, 10);
390
- if (!Number.isFinite(value) || value < 320) {
391
- throw new CliError(ExitCode.InputError, `nowline: invalid --width "${raw}". Must be an integer ≥ 320.`);
396
+ const value = Number(raw);
397
+ if (!Number.isFinite(value) || value <= 0) {
398
+ throw new CliError(ExitCode.InputError, `nowline: invalid --scale "${raw}". Must be a positive number.`);
392
399
  }
393
400
  return value;
394
401
  }
395
- function emitDiagnostics(diagnostics, source, displayPath, operatorLocale) {
396
- const sources = new Map([[displayPath, source]]);
397
- const rendered = formatDiagnostics(diagnostics, 'text', sources, {
402
+ /**
403
+ * `--diagnostic-format` is the explicit switch. Left unset, a `--dry-run` that
404
+ * asks for `--format=json` gets JSON diagnostics (the machine-consumer shape
405
+ * in `specs/cli.md`); every other run keeps the text frames.
406
+ */
407
+ function resolveDiagnosticFormat(args) {
408
+ if (args.diagnosticFormat)
409
+ return args.diagnosticFormat;
410
+ if (args.dryRun && args.format?.toLowerCase() === 'json')
411
+ return 'json';
412
+ return 'text';
413
+ }
414
+ function emitDiagnostics(diagnostics, sources, operatorLocale, format, log) {
415
+ // JSON is machine output and always prints whole; text drops warnings under -q.
416
+ const shown = format === 'text' ? errorsOnlyWhenQuiet(diagnostics, log) : diagnostics;
417
+ const rendered = formatDiagnostics(shown, format, sources, {
398
418
  color: process.stderr.isTTY === true,
399
419
  operatorLocale,
400
420
  });
401
421
  if (rendered)
402
422
  process.stderr.write(`${rendered}\n`);
403
423
  }
424
+ /** Under `-q`, text-mode diagnostics keep only errors. Shared with serve. */
425
+ export function errorsOnlyWhenQuiet(diagnostics, log) {
426
+ return log.quiet ? diagnostics.filter((d) => d.severity === 'error') : diagnostics;
427
+ }
404
428
  // ---- Asset resolver (still used by serve.ts) --------------------------------
405
429
  export function createAssetResolver(assetRoot) {
406
430
  const root = path.resolve(assetRoot);
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/commands/render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/commands/render.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAYjD,MAAM,WAAW,mBAAmB;IAChC,IAAI,EAAE,UAAU,CAAC;IACjB,4DAA4D;IAC5D,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA0K9E"}
1
+ {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAkBjD,MAAM,WAAW,mBAAmB;IAChC,IAAI,EAAE,UAAU,CAAC;IACjB,4DAA4D;IAC5D,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuO9E"}