@jalvin/vite-plugin 1.0.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,3 +1,11 @@
1
+ export interface JalvinAppEntry {
2
+ /** Path to the root .jalvin file, relative to the Vite project root. */
3
+ file: string;
4
+ /** Name of the component to mount as the React root. */
5
+ component: string;
6
+ /** Optional page title for the generated HTML. */
7
+ title?: string;
8
+ }
1
9
  export interface JalvinViteOptions {
2
10
  /**
3
11
  * Extra file extensions to treat as Jalvin sources.
@@ -14,6 +22,11 @@ export interface JalvinViteOptions {
14
22
  * Default: "@jalvin/runtime"
15
23
  */
16
24
  runtimeImport?: string;
25
+ /**
26
+ * When set, the plugin generates a virtual index.html and React entry point
27
+ * so no hand-written index.html or main.tsx is needed in the project.
28
+ */
29
+ entry?: JalvinAppEntry;
17
30
  }
18
31
  export declare function jalvin(opts?: JalvinViteOptions): any;
19
32
  export default jalvin;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAkBA,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,MAAM,CAAC,IAAI,GAAE,iBAAsB,GAAG,GAAG,CAuExD;AAED,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAgCA,MAAM,WAAW,cAAc;IAC7B,wEAAwE;IACxE,IAAI,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,SAAS,EAAE,MAAM,CAAC;IAClB,kDAAkD;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,KAAK,CAAC,EAAE,cAAc,CAAC;CACxB;AAwCD,wBAAgB,MAAM,CAAC,IAAI,GAAE,iBAAsB,GAAG,GAAG,CAkIxD;AAED,eAAe,MAAM,CAAC"}
package/dist/index.js CHANGED
@@ -13,10 +13,92 @@
13
13
  // You can then import .jalvin files directly in your app:
14
14
  //
15
15
  // import { Counter } from "./Counter.jalvin";
16
+ //
17
+ // To run a Jalvin UI app without any hand-written index.html or entry file,
18
+ // specify an `entry` option:
19
+ //
20
+ // export default defineConfig({
21
+ // plugins: [jalvin({
22
+ // entry: { file: "./UIShowcase.jalvin", component: "UIShowcase" }
23
+ // })],
24
+ // });
16
25
  // ─────────────────────────────────────────────────────────────────────────────
26
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
27
+ if (k2 === undefined) k2 = k;
28
+ var desc = Object.getOwnPropertyDescriptor(m, k);
29
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
30
+ desc = { enumerable: true, get: function() { return m[k]; } };
31
+ }
32
+ Object.defineProperty(o, k2, desc);
33
+ }) : (function(o, m, k, k2) {
34
+ if (k2 === undefined) k2 = k;
35
+ o[k2] = m[k];
36
+ }));
37
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
38
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
39
+ }) : function(o, v) {
40
+ o["default"] = v;
41
+ });
42
+ var __importStar = (this && this.__importStar) || (function () {
43
+ var ownKeys = function(o) {
44
+ ownKeys = Object.getOwnPropertyNames || function (o) {
45
+ var ar = [];
46
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
47
+ return ar;
48
+ };
49
+ return ownKeys(o);
50
+ };
51
+ return function (mod) {
52
+ if (mod && mod.__esModule) return mod;
53
+ var result = {};
54
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
55
+ __setModuleDefault(result, mod);
56
+ return result;
57
+ };
58
+ })();
17
59
  Object.defineProperty(exports, "__esModule", { value: true });
18
60
  exports.jalvin = jalvin;
61
+ const path = __importStar(require("node:path"));
62
+ const fs = __importStar(require("node:fs"));
19
63
  const compiler_1 = require("@jalvin/compiler");
64
+ const VIRTUAL_ENTRY = "virtual:@jalvin/app-entry";
65
+ const VIRTUAL_ENTRY_RESOLVED = "\0virtual:@jalvin/app-entry";
66
+ function generateIndexHtml(title, scriptSrc) {
67
+ return `<!DOCTYPE html>
68
+ <html lang="en">
69
+ <head>
70
+ <meta charset="UTF-8" />
71
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
72
+ <title>${title}</title>
73
+ <style>
74
+ *, *::before, *::after { box-sizing: border-box; }
75
+ body {
76
+ margin: 0;
77
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
78
+ background: #fafafa;
79
+ color: #1c1c1c;
80
+ }
81
+ #root { min-height: 100vh; }
82
+ </style>
83
+ </head>
84
+ <body>
85
+ <div id="root"></div>
86
+ <script type="module" src="${scriptSrc}"></script>
87
+ </body>
88
+ </html>`;
89
+ }
90
+ function generateEntryModule(entryFilePath, component) {
91
+ // Use React.createElement to avoid needing JSX in the virtual module itself.
92
+ return [
93
+ `import React from "react";`,
94
+ `import ReactDOM from "react-dom/client";`,
95
+ `import { ${component} } from ${JSON.stringify(entryFilePath)};`,
96
+ ``,
97
+ `ReactDOM.createRoot(document.getElementById("root")).render(`,
98
+ ` React.createElement(React.StrictMode, null, React.createElement(${component}))`,
99
+ `);`,
100
+ ].join("\n");
101
+ }
20
102
  function jalvin(opts = {}) {
21
103
  const extensions = opts.extensions ?? [".jalvin"];
22
104
  let viteConfig;
@@ -27,13 +109,31 @@ function jalvin(opts = {}) {
27
109
  configResolved(config) {
28
110
  viteConfig = config;
29
111
  },
112
+ config(cfg, { command }) {
113
+ if (!opts.entry)
114
+ return;
115
+ if (command === "build") {
116
+ // For builds, set the virtual entry as the rollup input.
117
+ const rollupOptions = cfg.build?.rollupOptions ?? {};
118
+ rollupOptions.input = VIRTUAL_ENTRY;
119
+ cfg.build = { ...(cfg.build ?? {}), rollupOptions };
120
+ }
121
+ },
30
122
  resolveId(id, importer) {
31
- // Allow .jalvin imports without explicit extension in some scenarios
123
+ if (id === VIRTUAL_ENTRY)
124
+ return VIRTUAL_ENTRY_RESOLVED;
32
125
  if (isJalvinFile(id))
33
126
  return id;
34
127
  return null;
35
128
  },
36
- transform(code, id) {
129
+ load(id) {
130
+ if (id !== VIRTUAL_ENTRY_RESOLVED || !opts.entry)
131
+ return null;
132
+ const root = viteConfig?.root ?? process.cwd();
133
+ const entryFilePath = path.resolve(root, opts.entry.file);
134
+ return generateEntryModule(entryFilePath, opts.entry.component);
135
+ },
136
+ async transform(code, id) {
37
137
  if (!isJalvinFile(id))
38
138
  return null;
39
139
  const result = (0, compiler_1.compile)(code, id, {
@@ -60,18 +160,57 @@ function jalvin(opts = {}) {
60
160
  });
61
161
  }
62
162
  }
163
+ // The compiled output is TSX with JSX syntax. We need to transform
164
+ // JSX → JS here because Vite's React plugin only handles .tsx/.jsx files.
165
+ // Use a dynamic import to work around vite's deprecated CJS type stub.
166
+ const { transformWithEsbuild } = await import("vite");
167
+ const tsxResult = await transformWithEsbuild(result.code, id + ".tsx", {
168
+ jsx: "automatic",
169
+ loader: "tsx",
170
+ target: "esnext",
171
+ });
63
172
  return {
64
- code: result.code,
65
- // Basic line map for source-map support
66
- map: {
67
- version: 3,
68
- sources: [id],
69
- sourcesContent: [code],
70
- mappings: "",
71
- names: [],
72
- },
173
+ code: tsxResult.code,
174
+ map: tsxResult.map,
73
175
  };
74
176
  },
177
+ configureServer(server) {
178
+ if (!opts.entry)
179
+ return;
180
+ // Return a post-hook (runs after Vite's own middlewares).
181
+ // When no static index.html exists, Vite passes requests for "/" through,
182
+ // so this middleware catches them and serves the generated HTML.
183
+ return () => {
184
+ server.middlewares.use(async (req, res, next) => {
185
+ const url = req.url ?? "/";
186
+ if (url !== "/" && url !== "/index.html") {
187
+ next();
188
+ return;
189
+ }
190
+ const root = viteConfig?.root ?? process.cwd();
191
+ // If a static index.html already exists, let Vite handle it normally.
192
+ if (fs.existsSync(path.join(root, "index.html"))) {
193
+ next();
194
+ return;
195
+ }
196
+ const title = opts.entry.title ?? "Jalvin App";
197
+ const html = generateIndexHtml(title, `/${VIRTUAL_ENTRY}`);
198
+ const transformed = await server.transformIndexHtml(url, html);
199
+ res.setHeader("Content-Type", "text/html");
200
+ res.end(transformed);
201
+ });
202
+ };
203
+ },
204
+ generateBundle(_, bundle) {
205
+ if (!opts.entry)
206
+ return;
207
+ // Find the entry chunk to reference in the emitted HTML.
208
+ const entryChunk = Object.values(bundle).find((c) => c.type === "chunk" && c.isEntry);
209
+ const scriptSrc = entryChunk ? `./${entryChunk.fileName}` : `./${VIRTUAL_ENTRY}`;
210
+ const title = opts.entry.title ?? "Jalvin App";
211
+ const html = generateIndexHtml(title, scriptSrc);
212
+ this.emitFile({ type: "asset", fileName: "index.html", source: html });
213
+ },
75
214
  handleHotUpdate({ file, server }) {
76
215
  if (!isJalvinFile(file))
77
216
  return;
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": "@jalvin/vite-plugin",
3
- "version": "1.0.0",
3
+ "version": "2.0.1",
4
4
  "description": "Vite plugin for the Jalvin language — import .jalvin files directly",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -22,7 +22,7 @@
22
22
  "vite": ">=5.0.0"
23
23
  },
24
24
  "dependencies": {
25
- "@jalvin/compiler": "1.0.0"
25
+ "@jalvin/compiler": "2.0.1"
26
26
  },
27
27
  "devDependencies": {
28
28
  "typescript": "^5.4.0",