@nextwebwg/html-next-converter 1.0.0-alpha.28 → 1.0.0-alpha.29
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 +53 -16
- package/dist/cli.js +2 -2
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +143 -6
- package/dist/index.js.map +1 -1
- package/package.json +6 -3
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# `@nextwebwg/html-next-converter`
|
|
2
2
|
|
|
3
|
-
Converts a Declarative Components application or library graph into Vue 3.5 single-file
|
|
4
|
-
or React 19.3 TSX components. Once converted, HTML Next is gone. Each `.vue` file imports Vue,
|
|
3
|
+
Converts a Declarative Components application or library graph into Vue 3.5 or Svelte 5 single-file
|
|
4
|
+
components, or React 19.3 TSX components. Once converted, HTML Next is gone. Each `.vue` file imports Vue,
|
|
5
5
|
its nested components, its controller (copied beside it), and only the generated helpers its
|
|
6
6
|
features need. A Vue component using
|
|
7
7
|
`$html` imports `vue/html.ts`; that helper requires `parse5` as an application dependency for
|
|
@@ -9,7 +9,7 @@ deterministic SSR. It parses inert fragments and applies one pinned safe-default
|
|
|
9
9
|
browser and on the server. It deliberately does not call native `setHTML()`, even where available:
|
|
10
10
|
Firefox currently parses malformed table content differently from Chromium, WebKit, and `parse5`,
|
|
11
11
|
which would make hydration browser-dependent. Props, state, computed values, bindings, structural
|
|
12
|
-
directives
|
|
12
|
+
directives and slots map to Vue's own facilities; declared events remain native
|
|
13
13
|
`CustomEvent`s on the lowered root (Vue emits are reserved for `v-model` updates), and styles become
|
|
14
14
|
`<style scoped>`.
|
|
15
15
|
|
|
@@ -40,7 +40,7 @@ conversion emits an `index.ts` entry whose named exports are independently consu
|
|
|
40
40
|
emit `html-next.conversion.json`, which records the input entries, output entry, every artifact,
|
|
41
41
|
the target version, and package-shaped `dependencies` and `peerDependencies`. Copy the relevant
|
|
42
42
|
fields from `package` into the published package's `package.json`. `parse5` appears in
|
|
43
|
-
`dependencies` only when an emitted `$html` helper needs it; Vue or
|
|
43
|
+
`dependencies` only when an emitted `$html` helper needs it; Vue, React, or Svelte appears in
|
|
44
44
|
`peerDependencies` for its respective output. Dependencies imported by authored controller
|
|
45
45
|
modules remain the publisher's responsibility.
|
|
46
46
|
|
|
@@ -60,34 +60,57 @@ context, declared data, native form controls, safe HTML, and structural template
|
|
|
60
60
|
conformance corpus and feature-specific React fixtures compare browser behavior, server output,
|
|
61
61
|
hydration, and exact pixels with the live runtime in Chromium, Firefox, and WebKit. Constructs
|
|
62
62
|
that cannot be represented fail conversion explicitly rather than silently changing behavior.
|
|
63
|
-
Svelte
|
|
63
|
+
Svelte output uses Svelte 5 runes, snippets, attachments, and public lifecycle APIs, with `.svelte`
|
|
64
|
+
components and adjacent imported CSS under `generated/svelte/`. It supports props (including generic
|
|
65
|
+
and state-selected types), state/computed/handlers, named and scoped slots, native events, context, data reads, controllers and refs, native form controls, safe HTML, structural
|
|
66
|
+
flow, and keyed lists. Native-control helpers preserve authored reset defaults and dirty edits;
|
|
67
|
+
Svelte's normal compiler owns rendering, SSR, and hydration.
|
|
68
|
+
|
|
69
|
+
```sh
|
|
70
|
+
html-next-convert svelte 'components/**' --mode library --out-dir generated
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
The current supported Svelte baseline is 5.57.1. Compile generated files with the standard Svelte
|
|
74
|
+
compiler or `@sveltejs/vite-plugin-svelte`. Source consumers can use `svelte-check`; publishers
|
|
75
|
+
emitting declaration files can use `svelte2tsx`. The generated public types cover props, native and
|
|
76
|
+
declared event callbacks and scoped slot fields. Both graph modes export components; application and library consumers use public `mount`/`hydrate`
|
|
77
|
+
or their framework's usual mounting and hydration flow.
|
|
78
|
+
Svelte 5.57.1 loses focus when it moves a focused keyed row in Chromium and Firefox. The
|
|
79
|
+
[compatibility patch](../../patches/README.md#keyed-focus) preserves focus and native focus events.
|
|
80
|
+
Install it in the consuming application when that behavior is required; this repository's pnpm
|
|
81
|
+
patches do not propagate through generated output or published dependencies.
|
|
82
|
+
|
|
83
|
+
Feature helpers are emitted once per converted graph and imported only by components that need
|
|
84
|
+
them. Style bindings record `cssstyle` and `css-tree` in server dependencies; the generated helper's
|
|
85
|
+
standard `browser` mapping uses the live element's CSSOM in browser builds.
|
|
64
86
|
|
|
65
87
|
React applications use their usual `hydrateRoot` call and error options. If the server root is
|
|
66
88
|
incompatible, React reports the recovery through `onRecoverableError` (or its default reporting);
|
|
67
89
|
the converter does not generate an `HR005` hydration entry or replace React's recovery flow.
|
|
68
90
|
|
|
69
|
-
For source-only distribution with automatic Vue or
|
|
70
|
-
use the [Vite adapter](../html-next-unplugin/README.md#
|
|
91
|
+
For source-only distribution with automatic Vue, React, or Svelte conversion in the consuming app,
|
|
92
|
+
use the [Vite adapter](../html-next-unplugin/README.md#framework-source-imports). It also
|
|
71
93
|
generates consumer declarations, so publishers do not need separate framework copies.
|
|
72
94
|
|
|
73
|
-
To distribute preconverted copies of one authored library in all
|
|
74
|
-
the `.html` sources, then run the Vue and
|
|
75
|
-
each conversion its own output directory so
|
|
95
|
+
To distribute preconverted copies of one authored library in all four forms, assemble the native HTML Next package from
|
|
96
|
+
the `.html` sources, then run the Vue, React, and Svelte library converters over the same quoted glob. Give
|
|
97
|
+
each conversion its own output directory so each `html-next.conversion.json` manifest survives:
|
|
76
98
|
|
|
77
99
|
```sh
|
|
78
100
|
html-next-convert vue 'components/**' --mode library --out-dir package/converted/vue-target
|
|
79
101
|
html-next-convert react 'components/**' --mode library --out-dir package/converted/react-target
|
|
102
|
+
html-next-convert svelte 'components/**' --mode library --out-dir package/converted/svelte-target
|
|
80
103
|
```
|
|
81
104
|
|
|
82
|
-
The package can expose the native entry
|
|
83
|
-
separate subpaths. If publishing source output, point `./vue
|
|
84
|
-
`vue/index.ts` and `
|
|
105
|
+
The package can expose the native entry and the converted Vue, React, and Svelte entries as
|
|
106
|
+
separate subpaths. If publishing source output, point `./vue`, `./react`, and `./svelte` at the generated
|
|
107
|
+
`vue/index.ts`, `react/index.ts`, and `svelte/index.ts`, include their component files and CSS, merge the conversion
|
|
85
108
|
inventories' `package.dependencies` and `package.peerDependencies` into the package manifest,
|
|
86
|
-
and mark Vue and
|
|
87
|
-
then compile `.vue
|
|
109
|
+
and mark Vue, React, and Svelte as optional peers when each subpath is independently usable. Consumers
|
|
110
|
+
then compile `.vue`, `.tsx`, and `.svelte` with their normal bundler plugins. For precompiled distribution,
|
|
88
111
|
emit JavaScript and declarations from those entries and point exports at the built files. The
|
|
89
112
|
[installed-library test](./tests/library-distribution.test.ts) packs and installs the source-output
|
|
90
|
-
shape, then renders
|
|
113
|
+
shape, then renders the framework entries from that independent consumer.
|
|
91
114
|
|
|
92
115
|
For guaranteed unused-component **and CSS** pruning in a preconverted package, expose individual
|
|
93
116
|
component subpaths from the conversion inventory, such as `./react/XCard` pointing to
|
|
@@ -95,3 +118,17 @@ component subpaths from the conversion inventory, such as `./react/XCard` pointi
|
|
|
95
118
|
bundlers retain CSS side-effect imports from unused named re-exports in a shared `./react` barrel,
|
|
96
119
|
even when they remove the unused JavaScript. The on-demand Vite adapter handles pruning for its
|
|
97
120
|
generated named exports.
|
|
121
|
+
|
|
122
|
+
Controllers initialize once per component instance. Use `host.on("connect", setup)` for setup
|
|
123
|
+
that must run on every connection; return its disconnect cleanup from `setup`. Register other
|
|
124
|
+
native events with `host.on(type, listener)`, which detaches listeners while disconnected and
|
|
125
|
+
reattaches them on reconnect. A handler can dispatch its native `$$event` or selected event fields
|
|
126
|
+
to that listener. `<method>` and automatic named-export element methods are unsupported.
|
|
127
|
+
|
|
128
|
+
`host.state` contains mutable state, readonly computed state, and inherited context. Resources
|
|
129
|
+
are read through `host.data.name`, including their readonly response and status fields. Invalid
|
|
130
|
+
authored state assignments retain the prior value and warn; native control edits retain their
|
|
131
|
+
ordinary validity behavior. Props use `:host([prop])` styling, and state uses `:host-state([state])`.
|
|
132
|
+
The [public proposal](https://nextwebwg.org/declarative-components/javascript/) defines these contracts.
|
|
133
|
+
|
|
134
|
+
Handler `<dispatch target="name">` resolves the current component instance's `$ref="name"`, never a DOM ID. Collection refs receive separate native events in rendered order; payload expressions are sampled once. React, Vue, and Svelte outputs preserve the authored event type and flags, and a targeted request does not become a framework emit from its sender. See [dispatch targets](https://nextwebwg.org/declarative-components/bindings/#dispatch-target).
|
package/dist/cli.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { fileURLToPath } from "node:url";
|
|
3
3
|
import { convertComponents } from "./index.js";
|
|
4
4
|
function usage() {
|
|
5
|
-
return "Usage: html-next-convert <vue|react> <component.html|directory|glob>... --mode <application|library> --out-dir <directory> [--public-root-url <url>]";
|
|
5
|
+
return "Usage: html-next-convert <vue|react|svelte> <component.html|directory|glob>... --mode <application|library> --out-dir <directory> [--public-root-url <url>]";
|
|
6
6
|
}
|
|
7
7
|
async function main(argv) {
|
|
8
8
|
const target = argv[0];
|
|
@@ -12,7 +12,7 @@ async function main(argv) {
|
|
|
12
12
|
const outDirectory = argv[outIndex + 1];
|
|
13
13
|
const publicRootIndex = argv.indexOf("--public-root-url");
|
|
14
14
|
const publicRootURL = publicRootIndex < 0 ? undefined : argv[publicRootIndex + 1];
|
|
15
|
-
if (target === undefined || !["vue", "react"].includes(target) ||
|
|
15
|
+
if (target === undefined || !["vue", "react", "svelte"].includes(target) ||
|
|
16
16
|
mode === undefined || !["application", "library"].includes(mode) ||
|
|
17
17
|
modeIndex < 2 || outIndex !== modeIndex + 2 || outDirectory === undefined ||
|
|
18
18
|
(publicRootIndex < 0 ? outIndex !== argv.length - 2 : publicRootIndex !== outIndex + 2 || publicRootIndex !== argv.length - 2 || publicRootURL === undefined))
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,iBAAiB,EAA8C,MAAM,YAAY,CAAC;AAE3F,SAAS,KAAK;IACZ,OAAO,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,iBAAiB,EAA8C,MAAM,YAAY,CAAC;AAE3F,SAAS,KAAK;IACZ,OAAO,6JAA6J,CAAC;AACvK,CAAC;AAED,KAAK,UAAU,IAAI,CAAC,IAAuB;IACzC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAgC,CAAC;IACtD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAgC,CAAC;IAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;IACxC,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC1D,MAAM,aAAa,GAAG,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC;IAClF,IACE,MAAM,KAAK,SAAS,IAAI,CAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAW,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC/E,IAAI,KAAK,SAAS,IAAI,CAAE,CAAC,aAAa,EAAE,SAAS,CAAW,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC3E,SAAS,GAAG,CAAC,IAAI,QAAQ,KAAK,SAAS,GAAG,CAAC,IAAI,YAAY,KAAK,SAAS;QACzE,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,KAAK,QAAQ,GAAG,CAAC,IAAI,eAAe,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,KAAK,SAAS,CAAC;QAC7J,MAAM,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAC3B,MAAM,iBAAiB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC;AACxJ,CAAC;AAED,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;IACvD,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACtE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;AACH,CAAC"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
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,11 @@
|
|
|
1
1
|
import { glob, lstat, mkdir, writeFile } from "node:fs/promises";
|
|
2
2
|
import { dirname, extname, isAbsolute, relative, resolve, sep } from "node:path";
|
|
3
3
|
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
4
|
-
import { addControllerGraph, generateVueComponent, generateReactConversion, HtmlDiagnosticError, loadNodeComponents, vueHostArtifact, vueHtmlArtifact, vueControlArtifact, vuePropsArtifact, reactPropsArtifact, reactEventsArtifact, reactControlArtifact, reactDataArtifact, reactHtmlArtifact, reactHostArtifact, reactContextArtifact, reactDepthArtifact, } from "@nextwebwg/html-next";
|
|
4
|
+
import { addControllerGraph, generateVueComponent, generateReactConversion, generateSvelteConversion, HtmlDiagnosticError, loadNodeComponents, vueHostArtifact, vueHtmlArtifact, vueControlArtifact, vuePropsArtifact, reactPropsArtifact, sveltePropsArtifact, svelteHtmlArtifact, svelteEventsArtifact, svelteControlArtifact, svelteDataArtifact, svelteReactivityArtifact, svelteHostArtifact, svelteConnectionArtifact, svelteDecorationsArtifact, svelteStyleArtifacts, reactEventsArtifact, reactControlArtifact, reactDataArtifact, reactHtmlArtifact, reactHostArtifact, reactContextArtifact, reactDepthArtifact, } from "@nextwebwg/html-next";
|
|
5
5
|
const targetVersions = {
|
|
6
6
|
vue: "3.5",
|
|
7
7
|
react: "19.3",
|
|
8
|
+
svelte: "5.57.1",
|
|
8
9
|
};
|
|
9
10
|
export class FrameworkOutputCollisionError extends Error {
|
|
10
11
|
target;
|
|
@@ -67,7 +68,7 @@ async function emit(root, artifact) {
|
|
|
67
68
|
function frameworkEntry(mode, target, entries) {
|
|
68
69
|
const exports = [...entries].sort((left, right) => left.artifact.localeCompare(right.artifact)).map((entry) => {
|
|
69
70
|
const artifact = entry.artifact.slice(entry.artifact.lastIndexOf("/") + 1);
|
|
70
|
-
const name = artifact.replace(/\.(?:vue|tsx)$/, "");
|
|
71
|
+
const name = artifact.replace(/\.(?:vue|tsx|svelte)$/, "");
|
|
71
72
|
return `export { default as ${name} } from ${JSON.stringify(relativeImport(`${target}/index.ts`, entry.artifact))};`;
|
|
72
73
|
});
|
|
73
74
|
return {
|
|
@@ -119,7 +120,7 @@ function componentArtifact(projectRoot, url, tag, name, target) {
|
|
|
119
120
|
const insideRoot = source !== ".." && !source.startsWith(`..${sep}`) && !isAbsolute(source);
|
|
120
121
|
const directory = insideRoot ? dirname(source) : `_external/${tag}`;
|
|
121
122
|
const segments = directory === "." ? [] : directory.split(sep);
|
|
122
|
-
return [target, ...segments, `${name}.${target === "vue" ? "vue" : "tsx"}`].join("/");
|
|
123
|
+
return [target, ...segments, `${name}.${target === "vue" ? "vue" : target === "svelte" ? "svelte" : "tsx"}`].join("/");
|
|
123
124
|
}
|
|
124
125
|
function componentRelativeDataSource(source) {
|
|
125
126
|
return !source.startsWith("/") && !/^[A-Za-z][A-Za-z0-9+.-]*:/.test(source);
|
|
@@ -175,6 +176,83 @@ function needsNestedDepthGuard(graph) {
|
|
|
175
176
|
// An initial root plus 32 nested lowering passes permits 33 component nodes.
|
|
176
177
|
return [...edges.keys()].some((tag) => visit(tag) > 33);
|
|
177
178
|
}
|
|
179
|
+
function decoratedRoots(graph) {
|
|
180
|
+
const receivers = new Map();
|
|
181
|
+
const pending = [];
|
|
182
|
+
const add = (tag, classes, styles) => {
|
|
183
|
+
const previous = receivers.get(tag);
|
|
184
|
+
if ((!classes || previous?.classes) && (!styles || previous?.styles))
|
|
185
|
+
return false;
|
|
186
|
+
receivers.set(tag, { classes: classes || previous?.classes === true, styles: styles || previous?.styles === true });
|
|
187
|
+
pending.push(tag);
|
|
188
|
+
return true;
|
|
189
|
+
};
|
|
190
|
+
for (const node of graph.nodes.values()) {
|
|
191
|
+
const visit = (template) => {
|
|
192
|
+
if (template.kind === "slot")
|
|
193
|
+
for (const child of template.fallback ?? [])
|
|
194
|
+
visit(child);
|
|
195
|
+
else if (template.kind === "element") {
|
|
196
|
+
if (template.name.includes("-"))
|
|
197
|
+
add(template.name, template.attributes.some((attribute) => attribute.kind === "attribute" && attribute.target === "class"), template.attributes.some((attribute) => attribute.kind === "attribute" && attribute.target === "style"));
|
|
198
|
+
for (const child of template.children)
|
|
199
|
+
visit(child);
|
|
200
|
+
}
|
|
201
|
+
};
|
|
202
|
+
visit(node.definition.template);
|
|
203
|
+
}
|
|
204
|
+
while (pending.length > 0) {
|
|
205
|
+
const tag = pending.pop();
|
|
206
|
+
const id = graph.tags.get(tag);
|
|
207
|
+
const root = id === undefined ? undefined : graph.nodes.get(id)?.definition.root;
|
|
208
|
+
if (root?.kind === "component") {
|
|
209
|
+
const receiver = receivers.get(tag);
|
|
210
|
+
add(root.tag, receiver.classes, receiver.styles);
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
return receivers;
|
|
214
|
+
}
|
|
215
|
+
function nativeBindingRoots(graph) {
|
|
216
|
+
const receivers = new Map();
|
|
217
|
+
const pending = [];
|
|
218
|
+
const add = (tag, name) => {
|
|
219
|
+
let names = receivers.get(tag);
|
|
220
|
+
if (names?.has(name))
|
|
221
|
+
return;
|
|
222
|
+
if (names === undefined)
|
|
223
|
+
receivers.set(tag, names = new Set());
|
|
224
|
+
names.add(name);
|
|
225
|
+
pending.push(tag);
|
|
226
|
+
};
|
|
227
|
+
for (const node of graph.nodes.values()) {
|
|
228
|
+
const visit = (template) => {
|
|
229
|
+
if (template.kind === "slot")
|
|
230
|
+
for (const child of template.fallback ?? [])
|
|
231
|
+
visit(child);
|
|
232
|
+
else if (template.kind === "element") {
|
|
233
|
+
const id = graph.tags.get(template.name);
|
|
234
|
+
const props = id === undefined ? undefined : graph.nodes.get(id)?.definition.contract.props;
|
|
235
|
+
if (props !== undefined)
|
|
236
|
+
for (const attribute of template.attributes) {
|
|
237
|
+
if (attribute.kind === "attribute" && attribute.twoWay === true && !Object.keys(props).some((name) => name.toLowerCase() === attribute.name || name.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase() === attribute.name))
|
|
238
|
+
add(template.name, attribute.name);
|
|
239
|
+
}
|
|
240
|
+
for (const child of template.children)
|
|
241
|
+
visit(child);
|
|
242
|
+
}
|
|
243
|
+
};
|
|
244
|
+
visit(node.definition.template);
|
|
245
|
+
}
|
|
246
|
+
while (pending.length > 0) {
|
|
247
|
+
const tag = pending.pop();
|
|
248
|
+
const id = graph.tags.get(tag);
|
|
249
|
+
const root = id === undefined ? undefined : graph.nodes.get(id)?.definition.root;
|
|
250
|
+
if (root?.kind === "component")
|
|
251
|
+
for (const name of receivers.get(tag))
|
|
252
|
+
add(root.tag, name);
|
|
253
|
+
}
|
|
254
|
+
return receivers;
|
|
255
|
+
}
|
|
178
256
|
export async function convertComponents(options) {
|
|
179
257
|
if (options.entries.length === 0)
|
|
180
258
|
throw new Error("Framework conversion requires at least one component entry.");
|
|
@@ -216,6 +294,8 @@ export async function convertComponents(options) {
|
|
|
216
294
|
const propContractsByTag = new Map([...graph.nodes.values()].map((node) => [node.definition.contract.tag,
|
|
217
295
|
node.definition.contract.props]));
|
|
218
296
|
const guardNestedDepth = needsNestedDepthGuard(graph);
|
|
297
|
+
const bindingReceivers = options.target === "svelte" ? nativeBindingRoots(graph) : undefined;
|
|
298
|
+
const decorationReceivers = options.target === "svelte" ? decoratedRoots(graph) : undefined;
|
|
219
299
|
const manifestComponents = [];
|
|
220
300
|
const planned = [];
|
|
221
301
|
const neededHelpers = new Set();
|
|
@@ -252,6 +332,7 @@ export async function convertComponents(options) {
|
|
|
252
332
|
});
|
|
253
333
|
let content;
|
|
254
334
|
let reactConversion;
|
|
335
|
+
let svelteConversion;
|
|
255
336
|
const helpers = new Set();
|
|
256
337
|
try {
|
|
257
338
|
const importSpecifier = (importedTag) => {
|
|
@@ -270,7 +351,25 @@ export async function convertComponents(options) {
|
|
|
270
351
|
return relativeImport(componentPath, `${options.target}/${name}.ts`).replace(/\.ts$/, "");
|
|
271
352
|
},
|
|
272
353
|
...(node.definition.controller === undefined ? {} : { controllerSpecifier: node.definition.controller }),
|
|
273
|
-
}) : (
|
|
354
|
+
}) : options.target === "svelte" ? (svelteConversion = generateSvelteConversion(definition, {
|
|
355
|
+
slotsByTag,
|
|
356
|
+
guardNestedDepth,
|
|
357
|
+
rootDecorations: decorationReceivers?.get(tag),
|
|
358
|
+
...(bindingReceivers?.has(tag) === true ? { rootBindings: [...bindingReceivers.get(tag)] } : {}),
|
|
359
|
+
decorationsSpecifier: relativeImport(componentPath, "svelte/decorations.ts").replace(/\.ts$/, ""),
|
|
360
|
+
styleSpecifier: relativeImport(componentPath, "svelte/style/style.js"),
|
|
361
|
+
hostSpecifier: relativeImport(componentPath, "svelte/host.svelte.ts").replace(/\.ts$/, ""),
|
|
362
|
+
...(node.definition.controller === undefined ? {} : { controllerSpecifier: node.definition.controller }),
|
|
363
|
+
reactivitySpecifier: relativeImport(componentPath, "svelte/reactivity.svelte.ts").replace(/\.ts$/, ""),
|
|
364
|
+
importSpecifier,
|
|
365
|
+
propContractsByTag,
|
|
366
|
+
stylesheetSpecifier: `./${node.definition.contract.name}.css`,
|
|
367
|
+
propsSpecifier: relativeImport(componentPath, "svelte/props.ts").replace(/\.ts$/, ""),
|
|
368
|
+
htmlSpecifier: relativeImport(componentPath, "svelte/html.ts").replace(/\.ts$/, ""),
|
|
369
|
+
eventsSpecifier: relativeImport(componentPath, "svelte/events.ts").replace(/\.ts$/, ""),
|
|
370
|
+
controlSpecifier: relativeImport(componentPath, "svelte/control.ts").replace(/\.ts$/, ""),
|
|
371
|
+
dataSpecifier: relativeImport(componentPath, "svelte/data.svelte.ts").replace(/\.ts$/, ""),
|
|
372
|
+
})).component : (reactConversion = generateReactConversion(definition, {
|
|
274
373
|
slotsByTag,
|
|
275
374
|
propsByTag,
|
|
276
375
|
propContractsByTag,
|
|
@@ -309,6 +408,12 @@ export async function convertComponents(options) {
|
|
|
309
408
|
claim({ path: componentPath.replace(/\.tsx$/, ".css"), content: `${css}\n` }, "style", source);
|
|
310
409
|
}
|
|
311
410
|
}
|
|
411
|
+
if (svelteConversion !== undefined && svelteConversion.css !== "") {
|
|
412
|
+
claim({ path: componentPath.replace(/\.svelte$/, ".css"), content: `${svelteConversion.css}\n` }, "style", source);
|
|
413
|
+
}
|
|
414
|
+
if (svelteConversion !== undefined)
|
|
415
|
+
for (const helper of svelteConversion.helpers)
|
|
416
|
+
neededHelpers.add(helper);
|
|
312
417
|
for (const helper of helpers)
|
|
313
418
|
neededHelpers.add(helper);
|
|
314
419
|
for (const file of controllerFiles.values()) {
|
|
@@ -341,6 +446,37 @@ export async function convertComponents(options) {
|
|
|
341
446
|
if (options.target === "react" && neededHelpers.has("props")) {
|
|
342
447
|
claim(reactPropsArtifact(), "helper");
|
|
343
448
|
}
|
|
449
|
+
if (options.target === "svelte" && neededHelpers.has("props")) {
|
|
450
|
+
claim(sveltePropsArtifact(), "helper");
|
|
451
|
+
}
|
|
452
|
+
if (options.target === "svelte" && neededHelpers.has("html")) {
|
|
453
|
+
claim(svelteHtmlArtifact(), "helper");
|
|
454
|
+
}
|
|
455
|
+
if (options.target === "svelte" && neededHelpers.has("control")) {
|
|
456
|
+
claim(svelteControlArtifact(), "helper");
|
|
457
|
+
}
|
|
458
|
+
if (options.target === "svelte" && neededHelpers.has("decorations")) {
|
|
459
|
+
claim(svelteDecorationsArtifact(), "helper");
|
|
460
|
+
}
|
|
461
|
+
if (options.target === "svelte" && neededHelpers.has("style")) {
|
|
462
|
+
for (const artifact of svelteStyleArtifacts())
|
|
463
|
+
claim(artifact, "helper");
|
|
464
|
+
}
|
|
465
|
+
if (options.target === "svelte" && neededHelpers.has("connection")) {
|
|
466
|
+
claim(svelteConnectionArtifact(), "helper");
|
|
467
|
+
}
|
|
468
|
+
if (options.target === "svelte" && neededHelpers.has("host")) {
|
|
469
|
+
claim(svelteHostArtifact(), "helper");
|
|
470
|
+
}
|
|
471
|
+
if (options.target === "svelte" && neededHelpers.has("reactivity")) {
|
|
472
|
+
claim(svelteReactivityArtifact(), "helper");
|
|
473
|
+
}
|
|
474
|
+
if (options.target === "svelte" && neededHelpers.has("data")) {
|
|
475
|
+
claim(svelteDataArtifact(), "helper");
|
|
476
|
+
}
|
|
477
|
+
if (options.target === "svelte" && neededHelpers.has("events")) {
|
|
478
|
+
claim(svelteEventsArtifact(hasDeclaredEvents), "helper");
|
|
479
|
+
}
|
|
344
480
|
if (options.target === "react" && neededHelpers.has("events")) {
|
|
345
481
|
claim(reactEventsArtifact(hasDeclaredEvents), "helper");
|
|
346
482
|
}
|
|
@@ -391,8 +527,9 @@ export async function convertComponents(options) {
|
|
|
391
527
|
targetVersion,
|
|
392
528
|
graph: options.mode,
|
|
393
529
|
package: Object.freeze({
|
|
394
|
-
dependencies: Object.freeze(neededHelpers.has("html") ? { parse5: "^8.0.1" } : {}),
|
|
395
|
-
|
|
530
|
+
dependencies: Object.freeze({ ...(neededHelpers.has("html") ? { parse5: "^8.0.1" } : {}), ...(options.target === "svelte" && neededHelpers.has("style") ? { cssstyle: "^6.2.0", "css-tree": "^3.2.1" } : {}) }),
|
|
531
|
+
// Vue 3.5.43 restores generic inference through runtime PropType declarations.
|
|
532
|
+
peerDependencies: Object.freeze({ [options.target]: options.target === "vue" ? "^3.5.43" : `^${targetVersion}${options.target === "svelte" ? "" : ".0"}` }),
|
|
396
533
|
}),
|
|
397
534
|
entries: Object.freeze(conversionEntries),
|
|
398
535
|
sourceFiles: Object.freeze([...sourceFiles].map((path) => relative(projectRoot, path).split(sep).join("/")).sort()),
|
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,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nextwebwg/html-next-converter",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
4
|
-
"description": "Vue and
|
|
3
|
+
"version": "1.0.0-alpha.29",
|
|
4
|
+
"description": "Vue, React, and Svelte conversion for Declarative HTML Components.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"sideEffects": false,
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"node": ">=22.13 <23 || >=24 <25"
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@nextwebwg/html-next": "1.0.0-alpha.
|
|
24
|
+
"@nextwebwg/html-next": "1.0.0-alpha.29"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
27
|
"@formatjs/intl-durationformat": "0.11.1",
|
|
@@ -29,11 +29,14 @@
|
|
|
29
29
|
"@types/react": "19.3.0",
|
|
30
30
|
"@types/react-dom": "19.3.0",
|
|
31
31
|
"@vue/compiler-sfc": "3.5.43",
|
|
32
|
+
"css-tree": "3.2.1",
|
|
33
|
+
"cssstyle": "6.2.0",
|
|
32
34
|
"esbuild": "0.28.2",
|
|
33
35
|
"parse5": "8.0.1",
|
|
34
36
|
"playwright": "1.63.0",
|
|
35
37
|
"react": "19.3.0",
|
|
36
38
|
"react-dom": "19.3.0",
|
|
39
|
+
"svelte": "5.57.1",
|
|
37
40
|
"typescript": "5.9.3",
|
|
38
41
|
"vitest": "5.0.3",
|
|
39
42
|
"vue": "3.5.43",
|