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

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,131 @@
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"` or `"warning"`), 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 or warnings only, `1` for a compiler error, and `2` for invalid arguments or an
93
+ operational 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
+ Warnings never stop a check or a build. `HT022` warns when a bare word in an expression spells a
106
+ name in scope: `from:title="count"` is the keyword `count`, and `$count` reads the declaration.
107
+
108
+ Parser diagnostics point
109
+ to the relevant declaration or element; backend failures can point to the enclosing component.
110
+ Failures without an authored location show only the available file or message. Diagnostics do
111
+ not yet provide end ranges, unsaved-buffer analysis, or a language server. An editor or lint
112
+ adapter can call the same API:
113
+
114
+ ```ts
115
+ import { checkHtmlNext } from "@nextwebwg/html-next-unplugin";
116
+
117
+ const diagnostics = await checkHtmlNext({
118
+ target: "react",
119
+ mode: "library",
120
+ entries: ["components/"],
121
+ root: process.cwd(),
122
+ });
123
+ ```
124
+
125
+ The API returns a readonly diagnostic array and rejects on operational failures without a
126
+ compiler diagnostic. Native options accept the plugin's `dynamicBoundaries`; framework options
127
+ accept the converter's `publicRootURL` and `targetVersion`.
128
+ `formatCheckDiagnostic(diagnostic, { hyperlinks: false })` formats the same compact row for a
129
+ plain log; omit `hyperlinks: false` to embed the terminal file link.
130
+
6
131
  ## Framework source imports
7
132
 
8
133
  ```ts
@@ -126,8 +251,6 @@ component-relative data URLs. The adapter supplies `parse5` for converted `$html
126
251
 
127
252
  ## Native builds
128
253
 
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
254
  Build integration for a closed Declarative Components application or library graph. The plugin
132
255
  parses component sources during the build, emits native DOM factories, combines the graph's support
133
256
  imports through the bundler, and writes `html-next.manifest.json` with the component and capability
@@ -142,7 +265,6 @@ export default defineConfig({
142
265
  plugins: [htmlNext({
143
266
  entries: ["src/components/app.html"],
144
267
  mode: "application",
145
- experimentalDirectExtend: true,
146
268
  })],
147
269
  });
148
270
  ```
@@ -153,7 +275,7 @@ import { createApp } from "virtual:html-next/components";
153
275
  document.body.append(createApp());
154
276
  ```
155
277
 
156
- `experimentalDirectExtend: true` enables direct DOM generation for supported components, as used in the benchmark. The manifest’s `directExtend` field records whether it applies and which components use runtime fallbacks.
278
+ Each component compiles to direct DOM code: a cloned template plus the exact updates its state, conditions, lists, props, slots, and controller need. The bundle carries no template interpreter, and each component imports only the helpers its features use.
157
279
 
158
280
  In application mode, the virtual module exports one `create<Name>` function for each component declared in the configured
159
281
  application entries. A linked `<link rel="component">` dependency used as an empty custom-element
@@ -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.some((diagnostic) => diagnostic.severity === "error") ? 1 : 0;
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 {
@@ -9,13 +12,6 @@ export interface HtmlNextNativePluginOptions {
9
12
  readonly manifestFile?: string | false;
10
13
  readonly mode?: "application" | "library";
11
14
  readonly dynamicBoundaries?: readonly HtmlNextDynamicBoundary[];
12
- /**
13
- * Experimental: compile controller components (declared state, `$if`, keyed `$each`) to direct
14
- * DOM updates instead of the general runtime. Until the direct path covers every feature, a graph
15
- * with any component that still needs the general runtime builds exactly as without this option
16
- * (its direct helpers would only add bytes); the manifest names those components.
17
- */
18
- readonly experimentalDirectExtend?: boolean;
19
15
  }
20
16
  export type HtmlNextPluginOptions = HtmlNextNativePluginOptions | FrameworkPluginOptions;
21
17
  export interface HtmlNextDynamicBoundary {
@@ -51,15 +47,20 @@ export interface HtmlNextBuildManifest {
51
47
  readonly strategy: "external-custom-element";
52
48
  readonly usedBy: readonly string[];
53
49
  }[];
54
- /** Present when `experimentalDirectExtend` was requested. */
55
- readonly directExtend?: {
56
- /** Whether the graph was compiled on the direct path. */
57
- readonly applied: boolean;
58
- /** Components that still need the general runtime; any one keeps the whole graph off the direct path. */
59
- readonly runtimeComponents: readonly string[];
60
- };
61
50
  }
62
51
  export declare function componentModule(tag: string): string;
52
+ export type HtmlNextCheckOptions = (HtmlNextNativePluginOptions & {
53
+ readonly target?: "native";
54
+ }) | CheckConversionOptions;
55
+ export interface HtmlNextCheckDiagnostic extends HtmlDiagnostic {
56
+ readonly severity: "error" | "warning";
57
+ }
58
+ /**
59
+ * Runs the selected build backend without emitting files or executing controllers.
60
+ * Returns collected independent compiler diagnostics, or an empty array on success. Operational
61
+ * failures without a compiler diagnostic reject the promise.
62
+ */
63
+ export declare function checkHtmlNext(options?: HtmlNextCheckOptions): Promise<readonly HtmlNextCheckDiagnostic[]>;
63
64
  export declare const htmlNext: import("unplugin").UnpluginInstance<HtmlNextPluginOptions | undefined, boolean>;
64
65
  export default htmlNext;
65
66
  //# 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, } 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,14 +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
- }
25
- function escapePattern(value) {
26
- return value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
27
- }
28
- function propAttributeName(name) {
29
- return name.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
24
+ function diagnostic(code, message, source, location) {
25
+ throw new HtmlDiagnosticError({ code, message, ...(source === undefined ? {} : { source }), ...location });
30
26
  }
31
27
  function visitComponentNodes(node, visit) {
32
28
  if (node.kind === "text")
@@ -50,26 +46,31 @@ function resolvedComponentId(url) {
50
46
  function publicComponentId(tag) {
51
47
  return `${resolvedPublicComponentPrefix}${encodeURIComponent(tag)}`;
52
48
  }
53
- function collectInvocationEdges(nodes, tags, dynamicBoundaries) {
49
+ function collectInvocationEdges(nodes, tags, dynamicBoundaries, report) {
54
50
  const edges = new Map();
55
51
  const dynamicUses = new Map();
56
52
  for (const node of nodes.values()) {
57
53
  const invoked = new Map();
58
54
  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;
55
+ try {
56
+ const tag = invocation.name;
57
+ const boundary = dynamicBoundaries.get(tag);
58
+ if (boundary !== undefined) {
59
+ const uses = dynamicUses.get(tag) ?? new Set();
60
+ uses.add(node.id);
61
+ dynamicUses.set(tag, uses);
62
+ return;
63
+ }
64
+ const target = tags.get(tag);
65
+ // Siblings share their resource scope without materializing every possible sibling edge.
66
+ if (target === undefined || (!node.dependencies.includes(target) && nodes.get(target)?.url !== node.url)) {
67
+ diagnostic("HN001", `Component invocation <${tag}> is not a declared static dependency or dynamic boundary.`, node.url, getDiagnosticLocation(invocation));
68
+ }
69
+ invoked.set(tag, target);
66
70
  }
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);
71
+ catch (error) {
72
+ recoverDiagnostic(error, report);
71
73
  }
72
- invoked.set(tag, target);
73
74
  });
74
75
  edges.set(node.id, invoked);
75
76
  }
@@ -79,91 +80,34 @@ function collectInvocationEdges(nodes, tags, dynamicBoundaries) {
79
80
  if (visited.has(url))
80
81
  return;
81
82
  if (visiting.has(url))
82
- diagnostic("HN002", "Compiled component invocations form a cycle.", url);
83
+ diagnostic("HN002", "Compiled component invocations form a cycle.", nodes.get(url)?.url ?? url, getDiagnosticLocation(nodes.get(url).definition));
83
84
  visiting.add(url);
84
- for (const target of edges.get(url)?.values() ?? [])
85
- visit(target);
86
- visiting.delete(url);
85
+ try {
86
+ for (const target of edges.get(url)?.values() ?? []) {
87
+ try {
88
+ visit(target);
89
+ }
90
+ catch (error) {
91
+ recoverDiagnostic(error, report);
92
+ }
93
+ }
94
+ }
95
+ finally {
96
+ visiting.delete(url);
97
+ }
87
98
  visited.add(url);
88
99
  };
89
- for (const url of nodes.keys())
90
- visit(url);
91
- return { edges, dynamicUses };
92
- }
93
- function staticProjectionSupported(node, root = true) {
94
- if (node.kind === "text")
95
- return true;
96
- if (node.kind === "slot")
97
- return false;
98
- const staticComponent = node.name.includes("-") && node.children.length === 0 && node.attributes.every((attribute) => attribute.kind === "literal" && attribute.name !== "data-component");
99
- return (!node.name.includes("-") || staticComponent) && node.flow === undefined && node.ref === undefined &&
100
- (node.events?.length ?? 0) === 0 && node.attributes.every((attribute) => attribute.kind === "literal" && (root || attribute.name !== "slot")) && node.children.every((child) => staticProjectionSupported(child, false));
101
- }
102
- function projectedSlotName(node) {
103
- if (node.kind !== "element")
104
- return "";
105
- for (const attribute of node.attributes) {
106
- if (attribute.kind === "literal" && attribute.name === "slot")
107
- return attribute.value;
108
- }
109
- return "";
110
- }
111
- function factoryInvocationOptions(invocation, definition) {
112
- if (invocation.flow !== undefined || invocation.ref !== undefined || (invocation.events?.length ?? 0) > 0)
113
- return undefined;
114
- const projectedSlots = invocation.children.map(projectedSlotName);
115
- const declaredSlots = new Set((definition.slots ?? []).map((slot) => slot.name ?? ""));
116
- if (projectedSlots.length > 0 && (!invocation.children.every((child) => staticProjectionSupported(child)) ||
117
- projectedSlots.some((slot) => !declaredSlots.has(slot))))
118
- return undefined;
119
- const propAttributes = new Map(Object.keys(definition.contract.props).map((name) => [propAttributeName(name), name]));
120
- const attributes = [];
121
- const props = [];
122
- const literals = [];
123
- for (const attribute of invocation.attributes) {
124
- if (attribute.kind !== "literal" || attribute.name === "data-component")
125
- return undefined;
126
- literals.push([attribute.name, attribute.value]);
127
- const propName = propAttributes.get(attribute.name.toLowerCase());
128
- if (propName === undefined) {
129
- attributes.push([attribute.name, attribute.value]);
130
- continue;
131
- }
132
- // Factory options reserve these keys for invocation data, not component props.
133
- if (propName === "attributes" || propName === "children" || propName === "slots")
134
- return undefined;
135
- const contract = definition.contract.props[propName];
136
- const input = contract.type === "boolean" && attribute.value === "" ? true : attribute.value;
137
- const parsed = parseTypedValue(input, contract.type);
138
- if (!parsed.ok)
139
- return undefined;
140
- props.push([propName, parsed.value]);
141
- }
142
- return { attributes, props, literals, projectedSlots };
143
- }
144
- /**
145
- * Checks the invocations a factory-compiled parent contains. Such a parent emits plain DOM, so an
146
- * invocation becomes a factory call carrying static invocation data and projected nodes grouped by
147
- * the child's declared slots. A parent the general runtime renders has no such limit: it renders
148
- * the invocation itself.
149
- */
150
- function assertCompilableInvocations(node, invoked, nodes) {
151
- visitComponentNodes(node.definition.template, (invocation) => {
152
- const target = invoked.get(invocation.name);
153
- if (target === undefined)
154
- return;
155
- const options = factoryInvocationOptions(invocation, nodes.get(target).definition);
156
- if (options === undefined) {
157
- 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);
100
+ for (const url of nodes.keys()) {
101
+ try {
102
+ visit(url);
159
103
  }
160
- if (Object.entries(nodes.get(target).definition.contract.props).some(([name, prop]) => prop.required && !options.props.some(([provided]) => provided === name))) {
161
- 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);
104
+ catch (error) {
105
+ recoverDiagnostic(error, report);
163
106
  }
164
- });
107
+ }
108
+ return { edges, dynamicUses };
165
109
  }
166
- function supportSource(imports, runtimeRendered) {
110
+ function supportSource(imports) {
167
111
  const lines = [];
168
112
  // Generated modules import whichever helpers their features use; re-exporting the whole entry
169
113
  // keeps every one of them resolvable, and the bundler still drops what nothing imports.
@@ -171,16 +115,6 @@ function supportSource(imports, runtimeRendered) {
171
115
  if (imports.has(source))
172
116
  lines.push(`export * from ${JSON.stringify(source)};`);
173
117
  }
174
- if (runtimeRendered.size > 0) {
175
- // Components another component's template invokes, where the general runtime renders that
176
- // template. It builds them from these definitions; their styles arrive through the CSS each
177
- // generated module imports, so the registered copies carry none.
178
- const definitions = [...runtimeRendered.values()]
179
- .map((definition) => JSON.stringify({ ...definition, css: "" }));
180
- lines.push('import { registerComponentDefinitions } from "@nextwebwg/html-next/runtime";', `const renderedComponents = [
181
- ${definitions.map((text) => ` ${text},`).join("\n")}
182
- ];`, "let registered = false;", "export function registerRenderedComponents(root) {", " if (registered) return;", " registered = true;", " registerComponentDefinitions(renderedComponents, root);", "}");
183
- }
184
118
  return lines.length === 0 ? "export {};\n" : `${lines.join("\n")}\n`;
185
119
  }
186
120
  function routeSupportImports(module, imports) {
@@ -196,92 +130,6 @@ function routeSupportImports(module, imports) {
196
130
  }
197
131
  return routed;
198
132
  }
199
- /**
200
- * Wires the components a runtime-rendered template invokes. The runtime renders the template, so
201
- * the invocations stay in it; it needs their definitions registered, and each one's stylesheet has
202
- * to reach the build even though nothing imports its factory.
203
- */
204
- function routeRenderedInvocations(module, invoked, nodes, rendered) {
205
- const imports = [`import { registerRenderedComponents } from ${JSON.stringify(supportModule)};`];
206
- for (const [, url] of invoked) {
207
- const target = nodes.get(url);
208
- rendered.set(url, target.definition);
209
- if (target.definition.css !== "") {
210
- imports.push(`import ${JSON.stringify(`${stylePrefix}${encodeURIComponent(url)}.css`)};`);
211
- }
212
- }
213
- const call = " registerRenderedComponents(element.ownerDocument);";
214
- const routed = module.replace(/^(\s*)manageComponentLifecycle\(/m, `${call}
215
- $1manageComponentLifecycle(`);
216
- return `${imports.join("\n")}\n${routed}`;
217
- }
218
- function routeComponentInvocations(module, node, invoked, nodes) {
219
- if (invoked.size === 0)
220
- return module;
221
- const imports = [];
222
- let routed = module;
223
- for (const [tag, url] of invoked) {
224
- const target = nodes.get(url);
225
- const factory = `create${target.definition.contract.name}`;
226
- imports.push(`import { ${factory} } from ${JSON.stringify(componentId(url))};`);
227
- const creation = `document.createElement(${JSON.stringify(tag)})`;
228
- const options = [];
229
- visitComponentNodes(node.definition.template, (invocation) => {
230
- if (invocation.name !== tag)
231
- return;
232
- options.push(factoryInvocationOptions(invocation, target.definition));
233
- });
234
- let invocation = 0;
235
- const removeAttributeLines = new Set();
236
- const variables = new Map();
237
- routed = routed.split("\n").flatMap((line) => {
238
- const match = line.match(new RegExp(`^(\\s*)const ([A-Za-z_$][A-Za-z0-9_$]*) = ${escapePattern(creation)};$`));
239
- if (match === null)
240
- return removeAttributeLines.has(line) ? [] : [line];
241
- const literalOptions = options[invocation++];
242
- if (literalOptions === undefined)
243
- return [line];
244
- variables.set(match[2], literalOptions);
245
- for (const [name, value] of literalOptions.literals) {
246
- removeAttributeLines.add(`${match[1]}${match[2]}.setAttribute(${JSON.stringify(name)}, ${JSON.stringify(value)});`);
247
- }
248
- const properties = [
249
- ...(literalOptions.attributes.length === 0 ? [] : [`attributes: ${JSON.stringify(Object.fromEntries(literalOptions.attributes))}`]),
250
- ...literalOptions.props.map(([name, value]) => `${JSON.stringify(name)}: ${JSON.stringify(value)}`),
251
- ];
252
- const factoryOptions = properties.length === 0 ? "" : `({ ${properties.join(", ")} })`;
253
- return literalOptions.projectedSlots.length > 0 ? [line] : [`${match[1]}const ${match[2]} = ${factory}(${factoryOptions});`];
254
- }).join("\n");
255
- if (variables.size === 0) {
256
- diagnostic("HN013", `The native generator did not expose compiled invocation <${tag}>.`, node.url);
257
- }
258
- for (const [variable, invocationOptions] of variables) {
259
- if (invocationOptions.projectedSlots.length > 0) {
260
- const content = `${variable}Children`;
261
- const slotEntries = new Map();
262
- for (const [index, slot] of invocationOptions.projectedSlots.entries()) {
263
- const nodes = slotEntries.get(slot) ?? [];
264
- nodes.push(`${content}[${index}]`);
265
- slotEntries.set(slot, nodes);
266
- }
267
- const properties = [
268
- ...(invocationOptions.attributes.length === 0 ? [] : [`attributes: ${JSON.stringify(Object.fromEntries(invocationOptions.attributes))}`]),
269
- ...invocationOptions.props.map(([name, value]) => `${JSON.stringify(name)}: ${JSON.stringify(value)}`),
270
- ...(slotEntries.get("") === undefined ? [] : [`children: [${slotEntries.get("").join(", ")}]`]),
271
- ...(slotEntries.size === (slotEntries.has("") ? 1 : 0) ? [] : [
272
- `slots: { ${[...slotEntries.entries()].filter(([slot]) => slot !== "").map(([slot, nodes]) => `${JSON.stringify(slot)}: [${nodes.join(", ")}]`).join(", ")} }`,
273
- ]),
274
- ];
275
- const compiled = `${variable}Projected`;
276
- routed = routed.replace(new RegExp(`^(\\s*)([A-Za-z_$][A-Za-z0-9_$]*)\\.append\\(${escapePattern(variable)}\\);$`, "m"), `$1const ${content} = Array.from(${variable}.childNodes);\n$1const ${compiled} = ${factory}({ ${properties.join(", ")} });\n$1$2.append(${compiled});`);
277
- }
278
- // A delegated root carries every owner's token.
279
- const tag = JSON.stringify(node.definition.contract.tag);
280
- routed = routed.replace(`${variable}.setAttribute("data-component", ${tag});`, `${variable}.setAttribute("data-component", [${variable}.getAttribute("data-component"), ${tag}].filter(Boolean).join(" "));`);
281
- }
282
- }
283
- return `${imports.join("\n")}\n${routed}`;
284
- }
285
133
  function visitTemplate(node, capabilities) {
286
134
  if (node.kind === "slot") {
287
135
  capabilities.add(node.name === undefined ? "default-slot" : "named-slots");
@@ -328,7 +176,9 @@ function displayPath(root, url) {
328
176
  const path = fileURLToPath(url);
329
177
  return relative(root, path).split(sep).join("/");
330
178
  }
331
- async function compileGraph(options) {
179
+ async function compileGraph(options, collectDiagnostics = false) {
180
+ const diagnostics = [];
181
+ const report = collectDiagnostics ? (diagnostic) => { diagnostics.push(diagnostic); } : undefined;
332
182
  const root = resolve(options.root ?? process.cwd());
333
183
  const installed = await sourcePackages(root);
334
184
  const packageEntries = new Map();
@@ -344,29 +194,28 @@ async function compileGraph(options) {
344
194
  if (delivery !== "application" && delivery !== "library") {
345
195
  diagnostic("HN012", `Unknown native build mode \`${String(delivery)}\`.`);
346
196
  }
347
- const localURLs = (options.entries ?? []).map((entry) => pathToFileURL(resolve(root, entry)).href);
197
+ const entries = await expandComponentEntries(root, options.entries ?? []);
198
+ const localURLs = entries.map((entry) => pathToFileURL(resolve(root, entry)).href);
348
199
  if (new Set(localURLs).size !== localURLs.length) {
349
200
  diagnostic("HN004", "A component entry may be configured only once.");
350
201
  }
351
202
  const entryURLs = [...new Set([...localURLs, ...[...packageEntries.values()].flat().map((file) => pathToFileURL(file).href)])];
352
203
  if (entryURLs.length === 0)
353
204
  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 });
205
+ const graph = await loadNodeComponents(entryURLs, { baseURL: pathToFileURL(`${root}${sep}`).href, collectDiagnostics });
355
206
  const components = new Map();
356
207
  const publicComponents = new Map();
357
208
  const styles = new Map();
358
209
  const manifestComponents = [];
359
210
  const allCapabilities = new Set();
360
211
  const supportImports = new Set();
361
- /** Definitions the general runtime builds because a runtime-rendered template invokes them. */
362
- const renderedComponents = new Map();
363
212
  const dynamicBoundaries = new Map();
364
213
  const generatedNames = new Map();
365
214
  for (const node of graph.nodes.values()) {
366
215
  const name = node.definition.contract.name;
367
216
  const prior = generatedNames.get(name);
368
217
  if (prior !== undefined && prior !== node.id) {
369
- diagnostic("HN010", `Generated factory name \`${name}\` collides with ${prior}.`, node.url);
218
+ diagnostic("HN010", `Generated factory name \`${name}\` collides with ${prior}.`, node.url, getDiagnosticLocation(node.definition));
370
219
  }
371
220
  generatedNames.set(name, node.id);
372
221
  }
@@ -382,61 +231,60 @@ async function compileGraph(options) {
382
231
  }
383
232
  dynamicBoundaries.set(boundary.tag, Object.freeze({ ...boundary }));
384
233
  }
385
- const invocations = collectInvocationEdges(graph.nodes, graph.tags, dynamicBoundaries);
234
+ const invocations = collectInvocationEdges(graph.nodes, graph.tags, dynamicBoundaries, report);
235
+ if (diagnostics.length > 0)
236
+ throw new HtmlDiagnosticAggregateError([...graph.warnings ?? [], ...diagnostics]);
386
237
  const contextProviders = new Set([...graph.nodes.values()].flatMap((node) => (node.definition.declarations ?? [])
387
238
  .filter((declaration) => declaration.kind === "context")
388
239
  .map((declaration) => declaration.from)));
389
240
  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 };
241
+ const generated = sortedNodes.flatMap((node) => {
242
+ try {
243
+ const definition = node.controller === undefined
244
+ ? node.definition
245
+ : Object.freeze({ ...node.definition, controller: fileURLToPath(node.controller.url) });
246
+ const artifacts = withDiagnosticLocation(getDiagnosticLocation(node.definition), () => generateComponent(definition, {
247
+ noContextReaders: dynamicBoundaries.size === 0 && !contextProviders.has(definition.contract.tag),
248
+ // Each component the template invokes, by the module exporting its factory.
249
+ invocations: new Map([...invocations.edges.get(node.id) ?? []].map(([tag, url]) => [tag, { module: componentId(url), definition: graph.nodes.get(url).definition }])),
250
+ }));
251
+ const artifact = artifacts.find((candidate) => candidate.path === `vanilla/${definition.contract.name}.js`);
252
+ if (artifact === undefined)
253
+ throw new Error(`No native module was generated for ${definition.contract.tag}.`);
254
+ return [{ node, definition, artifacts, artifact }];
255
+ }
256
+ catch (error) {
257
+ recoverDiagnostic(error, report);
258
+ return [];
259
+ }
402
260
  });
403
- const requested = options.experimentalDirectExtend === true;
404
- let generated = generateGraph(requested);
405
- // ponytail: all or nothing per graph. Direct helpers next to the general runtime only add bytes,
406
- // so one component the direct path does not cover yet keeps the graph on today's output.
407
- const runtimeComponents = requested
408
- ? generated.filter(({ artifact }) => artifact.content.includes('"@nextwebwg/html-next/runtime"'))
409
- .map(({ definition }) => definition.contract.tag).sort()
410
- : [];
411
- if (runtimeComponents.length > 0)
412
- generated = generateGraph(false);
413
261
  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);
262
+ try {
263
+ const encodedURL = encodeURIComponent(node.id);
264
+ const styleId = `${stylePrefix}${encodedURL}.css`;
265
+ let module = artifact.content.replace(`../styles/${definition.contract.tag}.css`, styleId);
266
+ module = routeSupportImports(module, supportImports);
267
+ components.set(resolvedComponentId(node.id), module);
268
+ styles.set(`${resolvedStylePrefix}${encodedURL}.css`, artifacts.find((candidate) => candidate.path === `styles/${definition.contract.tag}.css`).content);
269
+ const capabilities = componentCapabilities(definition);
270
+ for (const capability of capabilities)
271
+ allCapabilities.add(capability);
272
+ manifestComponents.push(Object.freeze({
273
+ name: definition.contract.name,
274
+ tag: definition.contract.tag,
275
+ source: displayPath(root, node.url),
276
+ dependencies: Object.freeze(node.dependencies.map((url) => displayPath(root, url))),
277
+ capabilities,
278
+ }));
421
279
  }
422
- else {
423
- assertCompilableInvocations(node, invoked, graph.nodes);
424
- module = routeComponentInvocations(module, node, invoked, graph.nodes);
280
+ catch (error) {
281
+ recoverDiagnostic(error, report);
425
282
  }
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
283
  }
284
+ // Warnings exist only in check mode, after every phase has had its chance to report.
285
+ diagnostics.unshift(...graph.warnings ?? []);
286
+ if (diagnostics.length > 0)
287
+ throw new HtmlDiagnosticAggregateError(diagnostics);
440
288
  const publicEntries = graph.roots.map((url) => {
441
289
  const node = graph.nodes.get(url);
442
290
  return Object.freeze({
@@ -474,7 +322,7 @@ async function compileGraph(options) {
474
322
  components,
475
323
  publicComponents,
476
324
  styles,
477
- support: supportSource(supportImports, renderedComponents),
325
+ support: supportSource(supportImports),
478
326
  sourceFiles: Object.freeze([...new Set([...graph.nodes.values()].map((node) => fileURLToPath(node.url))), ...installed.map((library) => library.manifest)]),
479
327
  manifest: Object.freeze({
480
328
  mode: "native-application-or-library-build",
@@ -490,12 +338,51 @@ async function compileGraph(options) {
490
338
  capabilities: sortedCapabilities,
491
339
  }),
492
340
  dynamicBoundaries: Object.freeze(dynamicManifest),
493
- ...(requested ? {
494
- directExtend: Object.freeze({ applied: runtimeComponents.length === 0, runtimeComponents: Object.freeze(runtimeComponents) }),
495
- } : {}),
496
341
  }),
497
342
  });
498
343
  }
344
+ /**
345
+ * Runs the selected build backend without emitting files or executing controllers.
346
+ * Returns collected independent compiler diagnostics, or an empty array on success. Operational
347
+ * failures without a compiler diagnostic reject the promise.
348
+ */
349
+ export async function checkHtmlNext(options = {}) {
350
+ try {
351
+ const warnings = [];
352
+ if (options.target === "vue" || options.target === "react" || options.target === "svelte") {
353
+ await checkConversion({ ...options, onWarning: (warning) => { warnings.push(warning); } });
354
+ }
355
+ else
356
+ await compileGraph(options, true);
357
+ return checkDiagnostics(warnings);
358
+ }
359
+ catch (error) {
360
+ let diagnostic;
361
+ if (error instanceof HtmlDiagnosticAggregateError)
362
+ return checkDiagnostics(error.diagnostics);
363
+ if (error instanceof HtmlDiagnosticError)
364
+ diagnostic = error.diagnostic;
365
+ else if (error instanceof FrameworkConversionError || error instanceof FrameworkDuplicateEntryError) {
366
+ diagnostic = { code: error.code, message: error.message, source: error.source, ...(error instanceof FrameworkConversionError ? error.location : {}) };
367
+ }
368
+ else if (error instanceof FrameworkOutputCollisionError) {
369
+ diagnostic = { code: error.code, message: error.message, source: error.sources[1] };
370
+ }
371
+ else if (error instanceof FrameworkTargetVersionError) {
372
+ diagnostic = { code: error.code, message: error.message };
373
+ }
374
+ else
375
+ throw error;
376
+ return checkDiagnostics([diagnostic]);
377
+ }
378
+ }
379
+ function checkDiagnostics(diagnostics) {
380
+ const unique = new Map(diagnostics.map((diagnostic) => [
381
+ JSON.stringify([diagnostic.source, diagnostic.line, diagnostic.column, diagnostic.code, diagnostic.message]), diagnostic,
382
+ ]));
383
+ return Object.freeze([...unique.values()].sort((left, right) => (left.source ?? "").localeCompare(right.source ?? "") ||
384
+ (left.line ?? 0) - (right.line ?? 0) || (left.column ?? 0) - (right.column ?? 0) || left.code.localeCompare(right.code)).map((diagnostic) => Object.freeze({ ...diagnostic, severity: diagnostic.severity ?? "error" })));
385
+ }
499
386
  export const htmlNext = createUnplugin((options = {}, meta) => {
500
387
  if ("target" in options) {
501
388
  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.34",
4
4
  "description": "unplugin and Vite build pipeline for Declarative HTML Components.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -19,22 +19,22 @@
19
19
  "dist"
20
20
  ],
21
21
  "engines": {
22
- "node": ">=22.13 <23 || >=24 <25"
22
+ "node": ">=22.22.2 <23 || >=24.15 <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.34",
26
+ "@nextwebwg/html-next-converter": "1.0.0-alpha.34",
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": {