@nextwebwg/html-next-unplugin 1.0.0-alpha.32 → 1.0.0-alpha.33

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
@@ -3,6 +3,128 @@
3
3
  Vite can convert imported Declarative Components sources into Vue, React, or Svelte components. Libraries
4
4
  publish their HTML definitions; consumers use their normal component imports.
5
5
 
6
+ ## Check components in CI
7
+
8
+ Run `html-next-check` to check an authored component graph without writing generated components,
9
+ declarations, caches, or build output. Install `@nextwebwg/html-next-unplugin` as a development
10
+ dependency to use the command. Select the backend and graph mode used by your build:
11
+
12
+ ```sh
13
+ html-next-check --target native --mode application src/components/app.html
14
+ html-next-check --target react --mode library 'components/**/*.html'
15
+ ```
16
+
17
+ The default target is `native` and the default mode is `application`. All targets accept files,
18
+ directories, and quoted globs; directories scan recursively for HTML files. Linked components are
19
+ checked transitively. Avoid overlapping inputs: an entry listed twice is an error. Native checks
20
+ also discover installed HTML source packages, as the native Vite plugin does, and may omit local
21
+ entries when an installed source package supplies them. Framework checks require explicit HTML
22
+ entries and use the converter's graph planner.
23
+
24
+ The command checks the parser's declarations and constraints, graph resolution, and the selected
25
+ backend's lowering restrictions and output collisions. Controllers are never executed. It runs
26
+ compiler checks in memory; it does not run Vite, resolve application imports, or invoke the
27
+ framework's own typechecker. The existing `html-next check` remains a parser/graph inspection
28
+ check; use `html-next-check` for backend validation.
29
+
30
+ This command does not load `vite.config`. Pass the same entries, target, and mode as your build.
31
+ For framework checks with component-relative data URLs, supply `--public-root-url /app/` as you
32
+ would for conversion. Native checks accept repeated `--external-custom-element x-tag` options
33
+ corresponding to the plugin's declared dynamic boundaries.
34
+
35
+ ### Combine with TypeScript
36
+
37
+ Use both checks: HTML Next checks authored HTML and compiler contracts; TypeScript checks authored
38
+ JS/TS controllers and application code. Include those files in your TypeScript project. To check
39
+ JavaScript too, enable [`allowJs`](https://www.typescriptlang.org/tsconfig/allowJs.html) and
40
+ [`checkJs`](https://www.typescriptlang.org/tsconfig/checkJs.html), with `noEmit: true`.
41
+
42
+ For a native project, a CI script can run:
43
+
44
+ ```json
45
+ {
46
+ "scripts": {
47
+ "check:html": "html-next-check --target native src/components/app.html",
48
+ "typecheck": "pnpm check:html && tsc --noEmit",
49
+ "ci": "pnpm typecheck && vite build"
50
+ }
51
+ }
52
+ ```
53
+
54
+ For a framework project using the Vite source adapter, prepare consumer declarations before
55
+ checking component imports:
56
+
57
+ ```json
58
+ {
59
+ "scripts": {
60
+ "check:html": "html-next-check --target react --mode application 'src/components/**/*.html'",
61
+ "typecheck": "pnpm check:html && html-next-sync && tsc --noEmit",
62
+ "ci": "pnpm typecheck && vite build"
63
+ }
64
+ }
65
+ ```
66
+
67
+ Use `--target vue` with `vue-tsc --noEmit`, or `--target svelte` with `svelte-check`, for those
68
+ frameworks. Configure local HTML entries in the Vite adapter so `html-next-sync` prepares their
69
+ types. Include the generated declarations in the consumer project; local `.html` imports also
70
+ need [`allowArbitraryExtensions`](https://www.typescriptlang.org/tsconfig/allowArbitraryExtensions.html).
71
+ `html-next-sync` writes the files those typecheckers need; `html-next-check` itself writes none.
72
+ For preconverted output, run the converter before the framework typechecker instead of syncing.
73
+ Neither the check command nor declaration preparation provides general TypeScript-style inference
74
+ for every HTML binding expression. Runtime behavior and bundler failures still need tests/builds.
75
+
76
+ ### Diagnostics for tooling
77
+
78
+ `html-next-check --json ...` writes `{ "diagnostics": [...] }` to stdout. Success has an empty
79
+ array. Each diagnostic has `code`, `message`, `severity: "error"`, and an optional `source`
80
+ (a file URL or a converter-relative path). Source-located diagnostics also include one-based
81
+ `line` and `column` coordinates. Human-readable failures go to stderr as compact Jess-style rows,
82
+ without code excerpts:
83
+
84
+ ```text
85
+ error HC013 Prop `age` has a min constraint that does not conform to its type; the constraint is ignored. · components/child.html:3:5
86
+ ```
87
+
88
+ The `file:line:column` label is an OSC 8 hyperlink to `vscode://file/…:line:column`, so terminals
89
+ that support these links can open the authored location in VS Code. Use `--no-color` or set
90
+ `NO_COLOR` to disable links for plain logs. JSON never includes terminal escape sequences.
91
+ Exit status is
92
+ `0` for success, `1` for a compiler diagnostic, and `2` for invalid arguments or an operational
93
+ failure without a compiler diagnostic. Such operational failures go to stderr even with `--json`.
94
+
95
+ Checks collect independent failures across declarations, markup elements, component carriers,
96
+ and linked resources. Shared invalid resources are checked once, and diagnostics are deduplicated
97
+ and sorted by source location. Invalid declarations reserve their names during checking to avoid
98
+ secondary undeclared-name errors. An invalid element stops analysis of that element's dependent
99
+ contents; its siblings can still be checked. Parsing or graph-resolution failures stop backend
100
+ lowering for that graph, while a valid graph can report failures across several backend components.
101
+ Builds and conversions continue to stop at the first error and never emit output from recovered
102
+ check data. The checker can therefore report several errors in one run without promising every
103
+ possible error after a broken prerequisite.
104
+
105
+ Parser diagnostics point
106
+ to the relevant declaration or element; backend failures can point to the enclosing component.
107
+ Failures without an authored location show only the available file or message. Diagnostics do
108
+ not yet provide end ranges, unsaved-buffer analysis, or a language server. An editor or lint
109
+ adapter can call the same API:
110
+
111
+ ```ts
112
+ import { checkHtmlNext } from "@nextwebwg/html-next-unplugin";
113
+
114
+ const diagnostics = await checkHtmlNext({
115
+ target: "react",
116
+ mode: "library",
117
+ entries: ["components/"],
118
+ root: process.cwd(),
119
+ });
120
+ ```
121
+
122
+ The API returns a readonly diagnostic array and rejects on operational failures without a
123
+ compiler diagnostic. Native options accept the plugin's `dynamicBoundaries`; framework options
124
+ accept the converter's `publicRootURL` and `targetVersion`.
125
+ `formatCheckDiagnostic(diagnostic, { hyperlinks: false })` formats the same compact row for a
126
+ plain log; omit `hyperlinks: false` to embed the terminal file link.
127
+
6
128
  ## Framework source imports
7
129
 
8
130
  ```ts
@@ -126,8 +248,6 @@ component-relative data URLs. The adapter supplies `parse5` for converted `$html
126
248
 
127
249
  ## Native builds
128
250
 
129
- **Beats Solid, Svelte, Vue, and React in js-framework-benchmark.** The native build also produces a **23% smaller benchmark bundle than Svelte**. [Results and methodology](https://nextwebwg.org/html-next/performance).
130
-
131
251
  Build integration for a closed Declarative Components application or library graph. The plugin
132
252
  parses component sources during the build, emits native DOM factories, combines the graph's support
133
253
  imports through the bundler, and writes `html-next.manifest.json` with the component and capability
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=check-cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check-cli.d.ts","sourceRoot":"","sources":["../src/check-cli.ts"],"names":[],"mappings":""}
@@ -0,0 +1,71 @@
1
+ #!/usr/bin/env node
2
+ import { checkHtmlNext, formatCheckDiagnostic } from "./index.js";
3
+ const usage = "Usage: html-next-check [--target native|vue|react|svelte] [--mode application|library] [--json] [--no-color] [--public-root-url <url>] [--external-custom-element <tag>] [component.html|directory|glob]...";
4
+ try {
5
+ const args = process.argv.slice(2);
6
+ let target = "native";
7
+ let mode = "application";
8
+ let json = false;
9
+ let hyperlinks = process.env.NO_COLOR === undefined;
10
+ let publicRootURL;
11
+ const entries = [];
12
+ const dynamicBoundaries = [];
13
+ const seen = new Set();
14
+ for (let index = 0; index < args.length; index++) {
15
+ const argument = args[index];
16
+ if (argument === "--help") {
17
+ process.stdout.write(`${usage}\n`);
18
+ process.exit(0);
19
+ }
20
+ if (argument === "--") {
21
+ entries.push(...args.slice(index + 1));
22
+ break;
23
+ }
24
+ if (!argument.startsWith("--")) {
25
+ entries.push(argument);
26
+ continue;
27
+ }
28
+ if (seen.has(argument) && argument !== "--external-custom-element")
29
+ throw new Error(usage);
30
+ seen.add(argument);
31
+ if (argument === "--json") {
32
+ json = true;
33
+ continue;
34
+ }
35
+ if (argument === "--no-color") {
36
+ hyperlinks = false;
37
+ continue;
38
+ }
39
+ const value = args[++index];
40
+ if (value === undefined || value.startsWith("--"))
41
+ throw new Error(usage);
42
+ if (argument === "--target" && (value === "native" || value === "vue" || value === "react" || value === "svelte"))
43
+ target = value;
44
+ else if (argument === "--mode" && (value === "application" || value === "library"))
45
+ mode = value;
46
+ else if (argument === "--public-root-url")
47
+ publicRootURL = value;
48
+ else if (argument === "--external-custom-element")
49
+ dynamicBoundaries.push({ tag: value, strategy: "external-custom-element" });
50
+ else
51
+ throw new Error(usage);
52
+ }
53
+ if ((target === "native" && publicRootURL !== undefined) || (target !== "native" && dynamicBoundaries.length > 0))
54
+ throw new Error(usage);
55
+ const options = target === "native"
56
+ ? { target, mode, entries, dynamicBoundaries }
57
+ : { target, mode, entries, ...(publicRootURL === undefined ? {} : { publicRootURL }) };
58
+ const diagnostics = await checkHtmlNext(options);
59
+ if (json)
60
+ process.stdout.write(`${JSON.stringify({ diagnostics }, null, 2)}\n`);
61
+ else
62
+ for (const diagnostic of diagnostics) {
63
+ process.stderr.write(`${formatCheckDiagnostic(diagnostic, { hyperlinks })}\n`);
64
+ }
65
+ process.exitCode = diagnostics.length === 0 ? 0 : 1;
66
+ }
67
+ catch (error) {
68
+ process.stderr.write(`${error instanceof Error ? error.message : String(error)}\n`);
69
+ process.exitCode = 2;
70
+ }
71
+ //# sourceMappingURL=check-cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check-cli.js","sourceRoot":"","sources":["../src/check-cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { HtmlNextCheckDiagnostic } from "./index.js";
2
+ export interface CheckDiagnosticFormatOptions {
3
+ readonly root?: string;
4
+ /** OSC 8 links open the authored location in VS Code. Default: true. */
5
+ readonly hyperlinks?: boolean;
6
+ }
7
+ /** A compact Jess-style diagnostic row, with no source excerpt or trailing newline. */
8
+ export declare function formatCheckDiagnostic(diagnostic: HtmlNextCheckDiagnostic, options?: CheckDiagnosticFormatOptions): string;
9
+ //# sourceMappingURL=diagnostic-format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostic-format.d.ts","sourceRoot":"","sources":["../src/diagnostic-format.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAE1D,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,wEAAwE;IACxE,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC/B;AAQD,uFAAuF;AACvF,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,uBAAuB,EAAE,OAAO,GAAE,4BAAiC,GAAG,MAAM,CAiB7H"}
@@ -0,0 +1,28 @@
1
+ import { isAbsolute, relative, resolve } from "node:path";
2
+ import { fileURLToPath, pathToFileURL } from "node:url";
3
+ function singleLine(text) {
4
+ // Descriptions and paths must not inject terminal control sequences or extra rows.
5
+ // eslint-disable-next-line no-control-regex
6
+ return text.replace(/[\x00-\x1f\x7f]/g, " ");
7
+ }
8
+ /** A compact Jess-style diagnostic row, with no source excerpt or trailing newline. */
9
+ export function formatCheckDiagnostic(diagnostic, options = {}) {
10
+ const prefix = `${diagnostic.source === undefined ? "" : `${diagnostic.source}: `}${diagnostic.code}: `;
11
+ const description = diagnostic.message.startsWith(prefix) ? diagnostic.message.slice(prefix.length) : diagnostic.message;
12
+ const row = `${diagnostic.severity} ${diagnostic.code} ${singleLine(description)}`;
13
+ if (diagnostic.source === undefined)
14
+ return row;
15
+ const root = resolve(options.root ?? process.cwd());
16
+ const source = diagnostic.source;
17
+ const file = source.startsWith("file:") ? fileURLToPath(source)
18
+ : source.startsWith("<") || (!isAbsolute(source) && /^[a-z][a-z\d+.-]*:/i.test(source)) ? undefined
19
+ : resolve(root, source);
20
+ const suffix = diagnostic.line === undefined || diagnostic.column === undefined ? "" : `:${diagnostic.line}:${diagnostic.column}`;
21
+ const label = singleLine(`${file === undefined ? source : relative(root, file)}${suffix}`);
22
+ const uri = file === undefined ? undefined : new URL(pathToFileURL(file).href);
23
+ const location = uri !== undefined && options.hyperlinks !== false
24
+ ? `\x1b]8;;vscode://file${uri.hostname === "" ? "" : `//${uri.hostname}`}${uri.pathname}${suffix}\x1b\\${label}\x1b]8;;\x1b\\`
25
+ : label;
26
+ return `${row} · ${location}`;
27
+ }
28
+ //# sourceMappingURL=diagnostic-format.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostic-format.js","sourceRoot":"","sources":["../src/diagnostic-format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAUxD,SAAS,UAAU,CAAC,IAAY;IAC9B,mFAAmF;IACnF,4CAA4C;IAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;AAC/C,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,qBAAqB,CAAC,UAAmC,EAAE,UAAwC,EAAE;IACnH,MAAM,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,IAAI,CAAC;IACxG,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC;IACzH,MAAM,GAAG,GAAG,GAAG,UAAU,CAAC,QAAQ,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;IACpF,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC;IAChD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IACjC,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC;QAC7D,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;YACnG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC1B,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;IAClI,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;IAC3F,MAAM,GAAG,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;IAC/E,MAAM,QAAQ,GAAG,GAAG,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,KAAK,KAAK;QAChE,CAAC,CAAC,wBAAwB,GAAG,CAAC,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC,QAAQ,GAAG,MAAM,SAAS,KAAK,gBAAgB;QAC9H,CAAC,CAAC,KAAK,CAAC;IACV,OAAO,GAAG,GAAG,QAAQ,QAAQ,EAAE,CAAC;AAClC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"framework.d.ts","sourceRoot":"","sources":["../src/framework.ts"],"names":[],"mappings":"AAMA,OAAO,EAAqB,KAAK,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEzF,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,MAAM,CAAC;AAOlD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,4FAA4F;IAC5F,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,8FAA8F;IAC9F,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC;AA2UD,qGAAqG;AACrG,wBAAsB,YAAY,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAEhG;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,sBAAsB,GAAG,MAAM,CA+D3E"}
1
+ {"version":3,"file":"framework.d.ts","sourceRoot":"","sources":["../src/framework.ts"],"names":[],"mappings":"AAMA,OAAO,EAAqB,KAAK,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEzF,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,MAAM,CAAC;AAOlD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,4FAA4F;IAC5F,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,8FAA8F;IAC9F,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC;AAmVD,qGAAqG;AACrG,wBAAsB,YAAY,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAEhG;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,sBAAsB,GAAG,MAAM,CA+D3E"}
package/dist/framework.js CHANGED
@@ -283,7 +283,7 @@ class FrameworkCompiler {
283
283
  target: "ES2022", module: "ESNext", moduleResolution: "Bundler", jsx: "react-jsx",
284
284
  strict: true, skipLibCheck: true, allowJs: true, checkJs: false, allowImportingTsExtensions: true,
285
285
  declaration: true, emitDeclarationOnly: true, noEmitOnError: this.options.target !== "svelte",
286
- rootDir: cache, outDir: output, types: [],
286
+ rootDir: cache, outDir: output, types: [], noUncheckedSideEffectImports: false,
287
287
  }, files }), "utf8");
288
288
  const binary = this.options.target === "vue" ? require.resolve("vue-tsc/bin/vue-tsc.js") : require.resolve("typescript/bin/tsc");
289
289
  try {
@@ -299,6 +299,16 @@ class FrameworkCompiler {
299
299
  const result = error;
300
300
  throw new Error(`HTML Next ${this.options.target} declaration generation failed:\n${result.stdout ?? ""}${result.stderr ?? ""}`, { cause: error });
301
301
  }
302
+ // Declarations need no stylesheet imports, and TypeScript 6+ rejects unresolved ones by default.
303
+ for (const file of await readdir(output, { recursive: true })) {
304
+ if (!/\.d\.[cm]?ts$/.test(file))
305
+ continue;
306
+ const path = resolve(output, file);
307
+ const content = await readFile(path, "utf8");
308
+ const stripped = content.replace(/^import\s+["'][^"']+\.css["'];?\r?\n/gm, "");
309
+ if (stripped !== content)
310
+ await writeFile(path, stripped, "utf8");
311
+ }
302
312
  await writeFile(metadata, fingerprint, "utf8");
303
313
  return declarationEntry;
304
314
  }
@@ -1 +1 @@
1
- {"version":3,"file":"framework.js","sourceRoot":"","sources":["../src/framework.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"framework.js","sourceRoot":"","sources":["../src/framework.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,8 @@
1
+ import { type HtmlDiagnostic } from "@nextwebwg/html-next";
2
+ import { type CheckConversionOptions } from "@nextwebwg/html-next-converter";
1
3
  import { type FrameworkPluginOptions } from "./framework.js";
2
4
  export { syncHtmlNext, type FrameworkPluginOptions, type FrameworkSyncResult } from "./framework.js";
5
+ export { formatCheckDiagnostic, type CheckDiagnosticFormatOptions } from "./diagnostic-format.js";
3
6
  export declare const componentsModule = "virtual:html-next/components";
4
7
  export declare const supportModule = "virtual:html-next/support";
5
8
  export interface HtmlNextNativePluginOptions {
@@ -60,6 +63,18 @@ export interface HtmlNextBuildManifest {
60
63
  };
61
64
  }
62
65
  export declare function componentModule(tag: string): string;
66
+ export type HtmlNextCheckOptions = (HtmlNextNativePluginOptions & {
67
+ readonly target?: "native";
68
+ }) | CheckConversionOptions;
69
+ export interface HtmlNextCheckDiagnostic extends HtmlDiagnostic {
70
+ readonly severity: "error";
71
+ }
72
+ /**
73
+ * Runs the selected build backend without emitting files or executing controllers.
74
+ * Returns collected independent compiler diagnostics, or an empty array on success. Operational
75
+ * failures without a compiler diagnostic reject the promise.
76
+ */
77
+ export declare function checkHtmlNext(options?: HtmlNextCheckOptions): Promise<readonly HtmlNextCheckDiagnostic[]>;
63
78
  export declare const htmlNext: import("unplugin").UnpluginInstance<HtmlNextPluginOptions | undefined, boolean>;
64
79
  export default htmlNext;
65
80
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAcA,OAAO,EAAuB,KAAK,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAElF,OAAO,EAAE,YAAY,EAAE,KAAK,sBAAsB,EAAE,KAAK,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErG,eAAO,MAAM,gBAAgB,iCAAiC,CAAC;AAC/D,eAAO,MAAM,aAAa,8BAA8B,CAAC;AAWzD,MAAM,WAAW,2BAA2B;IAC1C,iFAAiF;IACjF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACvC,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;IAChE;;;;;OAKG;IACH,QAAQ,CAAC,wBAAwB,CAAC,EAAE,OAAO,CAAC;CAC7C;AAED,MAAM,MAAM,qBAAqB,GAAG,2BAA2B,GAAG,sBAAsB,CAAC;AAEzF,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,CAAC;CAC9C;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,qCAAqC,CAAC;IACrD,QAAQ,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,CAAC;IAC7C,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,SAAS;QAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACzB,EAAE,CAAC;IACJ,QAAQ,CAAC,UAAU,EAAE,SAAS;QAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;QACzC,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;KAC1C,EAAE,CAAC;IACJ,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C,QAAQ,CAAC,OAAO,EAAE;QAChB,QAAQ,CAAC,MAAM,EAAE,OAAO,aAAa,CAAC;QACtC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;QACpC,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;KAC1C,CAAC;IACF,QAAQ,CAAC,iBAAiB,EAAE,SAAS;QACnC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,CAAC;QAC7C,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;KACpC,EAAE,CAAC;IACJ,6DAA6D;IAC7D,QAAQ,CAAC,YAAY,CAAC,EAAE;QACtB,yDAAyD;QACzD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;QAC1B,yGAAyG;QACzG,QAAQ,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;KAC/C,CAAC;CACH;AAaD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEnD;AAkjBD,eAAO,MAAM,QAAQ,iFAwEnB,CAAC;AAEH,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,10 +1,12 @@
1
1
  import { relative, resolve, sep } from "node:path";
2
2
  import { fileURLToPath, pathToFileURL } from "node:url";
3
- import { generateComponent, HtmlDiagnosticError, loadNodeComponents, parseTypedValue, } from "@nextwebwg/html-next";
3
+ import { generateComponent, getDiagnosticLocation, withDiagnosticLocation, expandComponentEntries, HtmlDiagnosticError, HtmlDiagnosticAggregateError, recoverDiagnostic, loadNodeComponents, parseTypedValue, } from "@nextwebwg/html-next";
4
+ import { checkConversion, FrameworkConversionError, FrameworkDuplicateEntryError, FrameworkOutputCollisionError, FrameworkTargetVersionError, } from "@nextwebwg/html-next-converter";
4
5
  import { createUnplugin } from "unplugin";
5
6
  import { frameworkVitePlugin } from "./framework.js";
6
7
  import { componentSources, sourcePackages } from "./source-packages.js";
7
8
  export { syncHtmlNext } from "./framework.js";
9
+ export { formatCheckDiagnostic } from "./diagnostic-format.js";
8
10
  export const componentsModule = "virtual:html-next/components";
9
11
  export const supportModule = "virtual:html-next/support";
10
12
  const resolvedComponentsModule = "\0html-next:components";
@@ -19,8 +21,8 @@ const resolvedStylePrefix = `\0${stylePrefix}`;
19
21
  export function componentModule(tag) {
20
22
  return `${publicComponentPrefix}${encodeURIComponent(tag)}`;
21
23
  }
22
- function diagnostic(code, message, source) {
23
- throw new HtmlDiagnosticError(source === undefined ? { code, message } : { code, message, source });
24
+ function diagnostic(code, message, source, location) {
25
+ throw new HtmlDiagnosticError({ code, message, ...(source === undefined ? {} : { source }), ...location });
24
26
  }
25
27
  function escapePattern(value) {
26
28
  return value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
@@ -50,26 +52,31 @@ function resolvedComponentId(url) {
50
52
  function publicComponentId(tag) {
51
53
  return `${resolvedPublicComponentPrefix}${encodeURIComponent(tag)}`;
52
54
  }
53
- function collectInvocationEdges(nodes, tags, dynamicBoundaries) {
55
+ function collectInvocationEdges(nodes, tags, dynamicBoundaries, report) {
54
56
  const edges = new Map();
55
57
  const dynamicUses = new Map();
56
58
  for (const node of nodes.values()) {
57
59
  const invoked = new Map();
58
60
  visitComponentNodes(node.definition.template, (invocation) => {
59
- const tag = invocation.name;
60
- const boundary = dynamicBoundaries.get(tag);
61
- if (boundary !== undefined) {
62
- const uses = dynamicUses.get(tag) ?? new Set();
63
- uses.add(node.id);
64
- dynamicUses.set(tag, uses);
65
- return;
61
+ try {
62
+ const tag = invocation.name;
63
+ const boundary = dynamicBoundaries.get(tag);
64
+ if (boundary !== undefined) {
65
+ const uses = dynamicUses.get(tag) ?? new Set();
66
+ uses.add(node.id);
67
+ dynamicUses.set(tag, uses);
68
+ return;
69
+ }
70
+ const target = tags.get(tag);
71
+ // Siblings share their resource scope without materializing every possible sibling edge.
72
+ if (target === undefined || (!node.dependencies.includes(target) && nodes.get(target)?.url !== node.url)) {
73
+ diagnostic("HN001", `Component invocation <${tag}> is not a declared static dependency or dynamic boundary.`, node.url, getDiagnosticLocation(invocation));
74
+ }
75
+ invoked.set(tag, target);
66
76
  }
67
- const target = tags.get(tag);
68
- // Siblings share their resource scope without materializing every possible sibling edge.
69
- if (target === undefined || (!node.dependencies.includes(target) && nodes.get(target)?.url !== node.url)) {
70
- diagnostic("HN001", `Component invocation <${tag}> is not a declared static dependency or dynamic boundary.`, node.url);
77
+ catch (error) {
78
+ recoverDiagnostic(error, report);
71
79
  }
72
- invoked.set(tag, target);
73
80
  });
74
81
  edges.set(node.id, invoked);
75
82
  }
@@ -79,15 +86,31 @@ function collectInvocationEdges(nodes, tags, dynamicBoundaries) {
79
86
  if (visited.has(url))
80
87
  return;
81
88
  if (visiting.has(url))
82
- diagnostic("HN002", "Compiled component invocations form a cycle.", url);
89
+ diagnostic("HN002", "Compiled component invocations form a cycle.", nodes.get(url)?.url ?? url, getDiagnosticLocation(nodes.get(url).definition));
83
90
  visiting.add(url);
84
- for (const target of edges.get(url)?.values() ?? [])
85
- visit(target);
86
- visiting.delete(url);
91
+ try {
92
+ for (const target of edges.get(url)?.values() ?? []) {
93
+ try {
94
+ visit(target);
95
+ }
96
+ catch (error) {
97
+ recoverDiagnostic(error, report);
98
+ }
99
+ }
100
+ }
101
+ finally {
102
+ visiting.delete(url);
103
+ }
87
104
  visited.add(url);
88
105
  };
89
- for (const url of nodes.keys())
90
- visit(url);
106
+ for (const url of nodes.keys()) {
107
+ try {
108
+ visit(url);
109
+ }
110
+ catch (error) {
111
+ recoverDiagnostic(error, report);
112
+ }
113
+ }
91
114
  return { edges, dynamicUses };
92
115
  }
93
116
  function staticProjectionSupported(node, root = true) {
@@ -155,11 +178,11 @@ function assertCompilableInvocations(node, invoked, nodes) {
155
178
  const options = factoryInvocationOptions(invocation, nodes.get(target).definition);
156
179
  if (options === undefined) {
157
180
  diagnostic("HN009", `Compiled invocation <${invocation.name}> cannot yet carry dynamic or unsupported attributes, projected children, ` +
158
- "events, refs, or structural flow. A component the general runtime renders can.", node.url);
181
+ "events, refs, or structural flow. A component the general runtime renders can.", node.url, getDiagnosticLocation(invocation));
159
182
  }
160
183
  if (Object.entries(nodes.get(target).definition.contract.props).some(([name, prop]) => prop.required && !options.props.some(([provided]) => provided === name))) {
161
184
  diagnostic("HN014", `Compiled invocation <${invocation.name}> requires an input that the compiled invocation did not provide. ` +
162
- "A component the general runtime renders can.", node.url);
185
+ "A component the general runtime renders can.", node.url, getDiagnosticLocation(invocation));
163
186
  }
164
187
  });
165
188
  }
@@ -328,7 +351,9 @@ function displayPath(root, url) {
328
351
  const path = fileURLToPath(url);
329
352
  return relative(root, path).split(sep).join("/");
330
353
  }
331
- async function compileGraph(options) {
354
+ async function compileGraph(options, collectDiagnostics = false) {
355
+ const diagnostics = [];
356
+ const report = collectDiagnostics ? (diagnostic) => { diagnostics.push(diagnostic); } : undefined;
332
357
  const root = resolve(options.root ?? process.cwd());
333
358
  const installed = await sourcePackages(root);
334
359
  const packageEntries = new Map();
@@ -344,14 +369,15 @@ async function compileGraph(options) {
344
369
  if (delivery !== "application" && delivery !== "library") {
345
370
  diagnostic("HN012", `Unknown native build mode \`${String(delivery)}\`.`);
346
371
  }
347
- const localURLs = (options.entries ?? []).map((entry) => pathToFileURL(resolve(root, entry)).href);
372
+ const entries = await expandComponentEntries(root, options.entries ?? []);
373
+ const localURLs = entries.map((entry) => pathToFileURL(resolve(root, entry)).href);
348
374
  if (new Set(localURLs).size !== localURLs.length) {
349
375
  diagnostic("HN004", "A component entry may be configured only once.");
350
376
  }
351
377
  const entryURLs = [...new Set([...localURLs, ...[...packageEntries.values()].flat().map((file) => pathToFileURL(file).href)])];
352
378
  if (entryURLs.length === 0)
353
379
  throw new Error("HTML Next requires at least one component entry or an installed HTML source package.");
354
- const graph = await loadNodeComponents(entryURLs, { baseURL: pathToFileURL(`${root}${sep}`).href });
380
+ const graph = await loadNodeComponents(entryURLs, { baseURL: pathToFileURL(`${root}${sep}`).href, collectDiagnostics });
355
381
  const components = new Map();
356
382
  const publicComponents = new Map();
357
383
  const styles = new Map();
@@ -366,7 +392,7 @@ async function compileGraph(options) {
366
392
  const name = node.definition.contract.name;
367
393
  const prior = generatedNames.get(name);
368
394
  if (prior !== undefined && prior !== node.id) {
369
- diagnostic("HN010", `Generated factory name \`${name}\` collides with ${prior}.`, node.url);
395
+ diagnostic("HN010", `Generated factory name \`${name}\` collides with ${prior}.`, node.url, getDiagnosticLocation(node.definition));
370
396
  }
371
397
  generatedNames.set(name, node.id);
372
398
  }
@@ -382,23 +408,31 @@ async function compileGraph(options) {
382
408
  }
383
409
  dynamicBoundaries.set(boundary.tag, Object.freeze({ ...boundary }));
384
410
  }
385
- const invocations = collectInvocationEdges(graph.nodes, graph.tags, dynamicBoundaries);
411
+ const invocations = collectInvocationEdges(graph.nodes, graph.tags, dynamicBoundaries, report);
412
+ if (diagnostics.length > 0)
413
+ throw new HtmlDiagnosticAggregateError(diagnostics);
386
414
  const contextProviders = new Set([...graph.nodes.values()].flatMap((node) => (node.definition.declarations ?? [])
387
415
  .filter((declaration) => declaration.kind === "context")
388
416
  .map((declaration) => declaration.from)));
389
417
  const sortedNodes = [...graph.nodes.values()].sort((left, right) => left.url.localeCompare(right.url));
390
- const generateGraph = (directExtend) => sortedNodes.map((node) => {
391
- const definition = node.controller === undefined
392
- ? node.definition
393
- : Object.freeze({ ...node.definition, controller: fileURLToPath(node.controller.url) });
394
- const artifacts = generateComponent(definition, {
395
- noContextReaders: dynamicBoundaries.size === 0 && !contextProviders.has(definition.contract.tag),
396
- directExtend,
397
- });
398
- const artifact = artifacts.find((candidate) => candidate.path === `vanilla/${definition.contract.name}.js`);
399
- if (artifact === undefined)
400
- throw new Error(`No native module was generated for ${definition.contract.tag}.`);
401
- return { node, definition, artifacts, artifact };
418
+ const generateGraph = (directExtend) => sortedNodes.flatMap((node) => {
419
+ try {
420
+ const definition = node.controller === undefined
421
+ ? node.definition
422
+ : Object.freeze({ ...node.definition, controller: fileURLToPath(node.controller.url) });
423
+ const artifacts = withDiagnosticLocation(getDiagnosticLocation(node.definition), () => generateComponent(definition, {
424
+ noContextReaders: dynamicBoundaries.size === 0 && !contextProviders.has(definition.contract.tag),
425
+ directExtend,
426
+ }));
427
+ const artifact = artifacts.find((candidate) => candidate.path === `vanilla/${definition.contract.name}.js`);
428
+ if (artifact === undefined)
429
+ throw new Error(`No native module was generated for ${definition.contract.tag}.`);
430
+ return [{ node, definition, artifacts, artifact }];
431
+ }
432
+ catch (error) {
433
+ recoverDiagnostic(error, report);
434
+ return [];
435
+ }
402
436
  });
403
437
  const requested = options.experimentalDirectExtend === true;
404
438
  let generated = generateGraph(requested);
@@ -411,32 +445,39 @@ async function compileGraph(options) {
411
445
  if (runtimeComponents.length > 0)
412
446
  generated = generateGraph(false);
413
447
  for (const { node, definition, artifacts, artifact } of generated) {
414
- const encodedURL = encodeURIComponent(node.id);
415
- const styleId = `${stylePrefix}${encodedURL}.css`;
416
- let module = artifact.content.replace(`../styles/${definition.contract.tag}.css`, styleId);
417
- const invoked = invocations.edges.get(node.id) ?? new Map();
418
- if (invoked.size > 0 && module.includes("manageComponentLifecycle")) {
419
- // The general runtime renders this template, so it renders the invocations too.
420
- module = routeRenderedInvocations(module, invoked, graph.nodes, renderedComponents);
448
+ try {
449
+ const encodedURL = encodeURIComponent(node.id);
450
+ const styleId = `${stylePrefix}${encodedURL}.css`;
451
+ let module = artifact.content.replace(`../styles/${definition.contract.tag}.css`, styleId);
452
+ const invoked = invocations.edges.get(node.id) ?? new Map();
453
+ if (invoked.size > 0 && module.includes("manageComponentLifecycle")) {
454
+ // The general runtime renders this template, so it renders the invocations too.
455
+ module = routeRenderedInvocations(module, invoked, graph.nodes, renderedComponents);
456
+ }
457
+ else {
458
+ assertCompilableInvocations(node, invoked, graph.nodes);
459
+ module = routeComponentInvocations(module, node, invoked, graph.nodes);
460
+ }
461
+ module = routeSupportImports(module, supportImports);
462
+ components.set(resolvedComponentId(node.id), module);
463
+ styles.set(`${resolvedStylePrefix}${encodedURL}.css`, artifacts.find((candidate) => candidate.path === `styles/${definition.contract.tag}.css`).content);
464
+ const capabilities = componentCapabilities(definition);
465
+ for (const capability of capabilities)
466
+ allCapabilities.add(capability);
467
+ manifestComponents.push(Object.freeze({
468
+ name: definition.contract.name,
469
+ tag: definition.contract.tag,
470
+ source: displayPath(root, node.url),
471
+ dependencies: Object.freeze(node.dependencies.map((url) => displayPath(root, url))),
472
+ capabilities,
473
+ }));
421
474
  }
422
- else {
423
- assertCompilableInvocations(node, invoked, graph.nodes);
424
- module = routeComponentInvocations(module, node, invoked, graph.nodes);
475
+ catch (error) {
476
+ recoverDiagnostic(error, report);
425
477
  }
426
- module = routeSupportImports(module, supportImports);
427
- components.set(resolvedComponentId(node.id), module);
428
- styles.set(`${resolvedStylePrefix}${encodedURL}.css`, artifacts.find((candidate) => candidate.path === `styles/${definition.contract.tag}.css`).content);
429
- const capabilities = componentCapabilities(definition);
430
- for (const capability of capabilities)
431
- allCapabilities.add(capability);
432
- manifestComponents.push(Object.freeze({
433
- name: definition.contract.name,
434
- tag: definition.contract.tag,
435
- source: displayPath(root, node.url),
436
- dependencies: Object.freeze(node.dependencies.map((url) => displayPath(root, url))),
437
- capabilities,
438
- }));
439
478
  }
479
+ if (diagnostics.length > 0)
480
+ throw new HtmlDiagnosticAggregateError(diagnostics);
440
481
  const publicEntries = graph.roots.map((url) => {
441
482
  const node = graph.nodes.get(url);
442
483
  return Object.freeze({
@@ -496,6 +537,46 @@ async function compileGraph(options) {
496
537
  }),
497
538
  });
498
539
  }
540
+ /**
541
+ * Runs the selected build backend without emitting files or executing controllers.
542
+ * Returns collected independent compiler diagnostics, or an empty array on success. Operational
543
+ * failures without a compiler diagnostic reject the promise.
544
+ */
545
+ export async function checkHtmlNext(options = {}) {
546
+ try {
547
+ if (options.target === "vue" || options.target === "react" || options.target === "svelte")
548
+ await checkConversion(options);
549
+ else
550
+ await compileGraph(options, true);
551
+ return Object.freeze([]);
552
+ }
553
+ catch (error) {
554
+ let diagnostic;
555
+ if (error instanceof HtmlDiagnosticAggregateError)
556
+ return checkDiagnostics(error.diagnostics);
557
+ if (error instanceof HtmlDiagnosticError)
558
+ diagnostic = error.diagnostic;
559
+ else if (error instanceof FrameworkConversionError || error instanceof FrameworkDuplicateEntryError) {
560
+ diagnostic = { code: error.code, message: error.message, source: error.source, ...(error instanceof FrameworkConversionError ? error.location : {}) };
561
+ }
562
+ else if (error instanceof FrameworkOutputCollisionError) {
563
+ diagnostic = { code: error.code, message: error.message, source: error.sources[1] };
564
+ }
565
+ else if (error instanceof FrameworkTargetVersionError) {
566
+ diagnostic = { code: error.code, message: error.message };
567
+ }
568
+ else
569
+ throw error;
570
+ return checkDiagnostics([diagnostic]);
571
+ }
572
+ }
573
+ function checkDiagnostics(diagnostics) {
574
+ const unique = new Map(diagnostics.map((diagnostic) => [
575
+ JSON.stringify([diagnostic.source, diagnostic.line, diagnostic.column, diagnostic.code, diagnostic.message]), diagnostic,
576
+ ]));
577
+ return Object.freeze([...unique.values()].sort((left, right) => (left.source ?? "").localeCompare(right.source ?? "") ||
578
+ (left.line ?? 0) - (right.line ?? 0) || (left.column ?? 0) - (right.column ?? 0) || left.code.localeCompare(right.code)).map((diagnostic) => Object.freeze({ ...diagnostic, severity: "error" })));
579
+ }
499
580
  export const htmlNext = createUnplugin((options = {}, meta) => {
500
581
  if ("target" in options) {
501
582
  if (meta.framework !== "vite")
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nextwebwg/html-next-unplugin",
3
- "version": "1.0.0-alpha.32",
3
+ "version": "1.0.0-alpha.33",
4
4
  "description": "unplugin and Vite build pipeline for Declarative HTML Components.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -22,19 +22,19 @@
22
22
  "node": ">=22.13 <23 || >=24 <25"
23
23
  },
24
24
  "dependencies": {
25
- "@nextwebwg/html-next": "1.0.0-alpha.32",
26
- "@nextwebwg/html-next-converter": "1.0.0-alpha.32",
25
+ "@nextwebwg/html-next": "1.0.0-alpha.33",
26
+ "@nextwebwg/html-next-converter": "1.0.0-alpha.33",
27
27
  "css-tree": "3.2.1",
28
28
  "cssstyle": "6.2.0",
29
29
  "parse5": "8.0.1",
30
30
  "svelte2tsx": "0.7.61",
31
31
  "typescript": "5.9.3",
32
32
  "unplugin": "3.4.0",
33
- "vue-tsc": "3.3.11"
33
+ "vue-tsc": "3.3.12"
34
34
  },
35
35
  "devDependencies": {
36
36
  "@sveltejs/vite-plugin-svelte": "7.3.1",
37
- "@types/node": "25.9.8",
37
+ "@types/node": "25.9.9",
38
38
  "@types/react": "19.3.0",
39
39
  "@types/react-dom": "19.3.0",
40
40
  "@vitejs/plugin-react": "6.1.1",
@@ -59,6 +59,7 @@
59
59
  "directory": "packages/html-next-unplugin"
60
60
  },
61
61
  "bin": {
62
+ "html-next-check": "./dist/check-cli.js",
62
63
  "html-next-sync": "./dist/cli.js"
63
64
  },
64
65
  "peerDependencies": {