@marko/vite 2.1.0 → 2.2.2

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.
@@ -0,0 +1,22 @@
1
+ // src/server-entry-template.ts
2
+ import path from "path";
3
+ var server_entry_template_default = async (opts) => {
4
+ const fileNameStr = JSON.stringify(`./${path.basename(opts.fileName)}`);
5
+ return `import template from ${fileNameStr};
6
+ export * from ${fileNameStr};
7
+ $ const $global = out.global;
8
+ ${opts.runtimeId ? `$ $global.runtimeId = ${JSON.stringify(opts.runtimeId)};
9
+ ` : ""}$ ($global.___viteEntries || ($global.___viteEntries = [])).push(${opts.entryData});
10
+ <_vite slot="head-prepend"/>
11
+ <_vite slot="head"/>
12
+ <_vite slot="body-prepend"/>
13
+ <\${template} ...input/>
14
+ <init-components/>
15
+ <await-reorderer/>
16
+ <_vite slot="body"/>
17
+ `;
18
+ };
19
+
20
+ export {
21
+ server_entry_template_default
22
+ };
@@ -0,0 +1,65 @@
1
+ import {
2
+ serialize
3
+ } from "./chunk-VL2HLMVE.mjs";
4
+
5
+ // src/manifest-generator.ts
6
+ import { Parser } from "htmlparser2";
7
+ import { ElementType } from "domelementtype";
8
+ import { DomHandler } from "domhandler";
9
+ var MARKER_COMMENT = "MARKO_VITE";
10
+ function generateDocManifest(rawHtml) {
11
+ return new Promise((resolve, reject) => {
12
+ const parser = new Parser(new DomHandler(function(err, dom) {
13
+ if (err) {
14
+ return reject(err);
15
+ }
16
+ const htmlChildren = dom.find(isElement).childNodes;
17
+ const headPrepend = [];
18
+ const head = [];
19
+ const bodyPrepend = [];
20
+ const body = [];
21
+ splitNodesByMarker(htmlChildren.find((node) => isElement(node) && node.tagName === "head").childNodes, headPrepend, head);
22
+ splitNodesByMarker(htmlChildren.find((node) => isElement(node) && node.tagName === "body").childNodes, bodyPrepend, body);
23
+ resolve({
24
+ "head-prepend": serializeOrNull(headPrepend),
25
+ head: serializeOrNull(head),
26
+ "body-prepend": serializeOrNull(bodyPrepend),
27
+ body: serializeOrNull(body)
28
+ });
29
+ }));
30
+ parser.write(rawHtml);
31
+ parser.end();
32
+ });
33
+ }
34
+ function generateInputDoc(entry) {
35
+ return `<!DOCTYPE html><html><head><!--${MARKER_COMMENT}--></head><body><!--${MARKER_COMMENT}--><script async type="module" src=${JSON.stringify(entry)}><\/script></body></html>`;
36
+ }
37
+ function serializeOrNull(nodes) {
38
+ const result = serialize(nodes);
39
+ if (result.length) {
40
+ return result;
41
+ }
42
+ return null;
43
+ }
44
+ function splitNodesByMarker(nodes, before, after) {
45
+ for (let i = 0; i < nodes.length; i++) {
46
+ let node = nodes[i];
47
+ if (node.data === MARKER_COMMENT) {
48
+ i++;
49
+ for (; i < nodes.length; i++) {
50
+ node = nodes[i];
51
+ after.push(node);
52
+ }
53
+ break;
54
+ }
55
+ before.push(node);
56
+ }
57
+ }
58
+ function isElement(node) {
59
+ return node.type === ElementType.Tag;
60
+ }
61
+
62
+ export {
63
+ generateDocManifest,
64
+ generateInputDoc
65
+ };
@@ -0,0 +1,24 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+
21
+ export {
22
+ __spreadValues,
23
+ __spreadProps
24
+ };
@@ -0,0 +1,80 @@
1
+ // src/serializer.ts
2
+ import { ElementType } from "domelementtype";
3
+ var voidElements = /* @__PURE__ */ new Set([
4
+ "area",
5
+ "base",
6
+ "br",
7
+ "col",
8
+ "embed",
9
+ "hr",
10
+ "img",
11
+ "input",
12
+ "link",
13
+ "meta",
14
+ "param",
15
+ "source",
16
+ "track",
17
+ "wbr"
18
+ ]);
19
+ function serialize(nodes, parts) {
20
+ let curString = parts ? parts.pop() : "";
21
+ parts ?? (parts = []);
22
+ for (const node of nodes) {
23
+ switch (node.type) {
24
+ case ElementType.Tag:
25
+ case ElementType.Style:
26
+ case ElementType.Script: {
27
+ const tag = node;
28
+ const { name } = tag;
29
+ curString += `<${name}`;
30
+ switch (tag.tagName) {
31
+ case "script":
32
+ parts.push(curString);
33
+ curString = "";
34
+ break;
35
+ case "style":
36
+ parts.push(curString);
37
+ curString = "";
38
+ break;
39
+ case "link":
40
+ if (tag.attribs.rel === "stylesheet") {
41
+ parts.push(curString);
42
+ curString = "";
43
+ }
44
+ break;
45
+ }
46
+ for (const attr of tag.attributes) {
47
+ curString += ` ${attr.value === "" ? attr.name : `${attr.name}="${attr.value.replace(/"/g, "&#39;")}"`}`;
48
+ }
49
+ curString += ">";
50
+ if (tag.children.length) {
51
+ parts.push(curString);
52
+ serialize(tag.children, parts);
53
+ curString = parts.pop();
54
+ }
55
+ if (!voidElements.has(name)) {
56
+ curString += `</${name}>`;
57
+ }
58
+ break;
59
+ }
60
+ case ElementType.Text: {
61
+ const text = node.data;
62
+ if (!/^\s*$/.test(text)) {
63
+ curString += text;
64
+ }
65
+ break;
66
+ }
67
+ case ElementType.Comment:
68
+ curString += `<!--${node.data}-->`;
69
+ break;
70
+ }
71
+ }
72
+ if (curString) {
73
+ parts.push(curString);
74
+ }
75
+ return parts;
76
+ }
77
+
78
+ export {
79
+ serialize
80
+ };
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import * as vite from "vite";
1
+ import type * as vite from "vite";
2
2
  import type * as Compiler from "@marko/compiler";
3
3
  export interface Options {
4
4
  linked?: boolean;
package/dist/index.js CHANGED
@@ -22,38 +22,39 @@ var __spreadValues = (a, b) => {
22
22
  };
23
23
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
24
  var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
25
- var __require = typeof require !== "undefined" ? require : (x) => {
26
- throw new Error('Dynamic require of "' + x + '" is not supported');
27
- };
28
25
  var __export = (target, all) => {
29
- __markAsModule(target);
30
26
  for (var name in all)
31
27
  __defProp(target, name, { get: all[name], enumerable: true });
32
28
  };
33
- var __reExport = (target, module2, desc) => {
29
+ var __reExport = (target, module2, copyDefault, desc) => {
34
30
  if (module2 && typeof module2 === "object" || typeof module2 === "function") {
35
31
  for (let key of __getOwnPropNames(module2))
36
- if (!__hasOwnProp.call(target, key) && key !== "default")
32
+ if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
37
33
  __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
38
34
  }
39
35
  return target;
40
36
  };
41
- var __toModule = (module2) => {
42
- return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
37
+ var __toESM = (module2, isNodeMode) => {
38
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
43
39
  };
44
- __export(exports, {
40
+ var __toCommonJS = /* @__PURE__ */ ((cache) => {
41
+ return (module2, temp) => {
42
+ return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
43
+ };
44
+ })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
45
+ var src_exports = {};
46
+ __export(src_exports, {
45
47
  default: () => markoPlugin
46
48
  });
47
- var import_os = __toModule(require("os"));
48
- var import_fs = __toModule(require("fs"));
49
- var import_path = __toModule(require("path"));
50
- var import_crypto = __toModule(require("crypto"));
51
- var import_url = __toModule(require("url"));
52
- var import_anymatch = __toModule(require("anymatch"));
53
- var import_server_entry_template = __toModule(require("./server-entry-template"));
54
- var import_manifest_generator = __toModule(require("./manifest-generator"));
55
- const import_meta = {};
56
- const virtualFiles = new Map();
49
+ var import_os = __toESM(require("os"));
50
+ var import_fs = __toESM(require("fs"));
51
+ var import_path = __toESM(require("path"));
52
+ var import_crypto = __toESM(require("crypto"));
53
+ var import_url = require("url");
54
+ var import_anymatch = __toESM(require("anymatch"));
55
+ var import_server_entry_template = __toESM(require("./server-entry-template"));
56
+ var import_manifest_generator = require("./manifest-generator");
57
+ const virtualFiles = /* @__PURE__ */ new Map();
57
58
  const queryReg = /\?marko-.+$/;
58
59
  const browserEntryQuery = "?marko-browser-entry";
59
60
  const serverEntryQuery = "?marko-server-entry";
@@ -70,7 +71,7 @@ function markoPlugin(opts = {}) {
70
71
  runtimeId,
71
72
  sourceMaps: true,
72
73
  writeVersionComment: false,
73
- cache: new Map(),
74
+ cache: /* @__PURE__ */ new Map(),
74
75
  babelConfig: __spreadProps(__spreadValues({}, opts.babelConfig), {
75
76
  caller: __spreadValues({
76
77
  name: "@marko/vite",
@@ -108,15 +109,14 @@ function markoPlugin(opts = {}) {
108
109
  let devServer;
109
110
  let registeredTag = false;
110
111
  let serverManifest;
111
- const transformWatchFiles = new Map();
112
- const transformOptionalFiles = new Map();
112
+ const transformWatchFiles = /* @__PURE__ */ new Map();
113
+ const transformOptionalFiles = /* @__PURE__ */ new Map();
113
114
  return [
114
115
  {
115
116
  name: "marko-vite:pre",
116
117
  enforce: "pre",
117
118
  async config(config, env) {
118
- var _a2, _b, _c, _d, _e;
119
- compiler != null ? compiler : compiler = await Promise.resolve().then(() => __toModule(require(opts.compiler || "@marko/compiler")));
119
+ compiler ?? (compiler = await import(opts.compiler || "@marko/compiler"));
120
120
  root = config.root || process.cwd();
121
121
  isBuild = env.command === "build";
122
122
  isSSRBuild = isBuild && linked && Boolean(config.build.ssr);
@@ -148,15 +148,15 @@ function markoPlugin(opts = {}) {
148
148
  }
149
149
  const domDeps = Array.from(new Set(domRuntimeDeps.concat(taglibDeps)));
150
150
  const serverDeps = Array.from(new Set(htmlRuntimeDeps.concat(taglibDeps)));
151
- const optimizeDeps = (_a2 = config.optimizeDeps) != null ? _a2 : config.optimizeDeps = {};
152
- (_b = optimizeDeps.include) != null ? _b : optimizeDeps.include = [];
151
+ const optimizeDeps = config.optimizeDeps ?? (config.optimizeDeps = {});
152
+ optimizeDeps.include ?? (optimizeDeps.include = []);
153
153
  optimizeDeps.include = optimizeDeps.include.concat(domDeps.filter((dep) => import_path.default.extname(dep) !== markoExt));
154
- (_c = optimizeDeps.exclude) != null ? _c : optimizeDeps.exclude = [];
154
+ optimizeDeps.exclude ?? (optimizeDeps.exclude = []);
155
155
  optimizeDeps.exclude = optimizeDeps.exclude.concat(domDeps.filter((dep) => import_path.default.extname(dep) === markoExt));
156
- const ssr = (_d = config.ssr) != null ? _d : config.ssr = {};
157
- (_e = ssr.external) != null ? _e : ssr.external = [];
156
+ const ssr = config.ssr ?? (config.ssr = {});
157
+ ssr.external ?? (ssr.external = []);
158
158
  ssr.external = ssr.external.concat(serverDeps);
159
- (await Promise.resolve().then(() => __toModule(require("@marko/compiler/register")))).default(__spreadProps(__spreadValues({}, ssrConfig), {
159
+ (await import("@marko/compiler/register")).default(__spreadProps(__spreadValues({}, ssrConfig), {
160
160
  sourceMaps: "inline",
161
161
  modules: "cjs"
162
162
  }));
@@ -200,26 +200,27 @@ function markoPlugin(opts = {}) {
200
200
  }
201
201
  }
202
202
  },
203
- async resolveId(importee, importer, _importOpts, ssr) {
204
- const importeeIsAbsolute = import_path.default.isAbsolute(importee);
205
- if (!importeeIsAbsolute || importee.startsWith(root)) {
206
- let importeeQuery = getMarkoQuery(importee);
207
- if (importeeQuery) {
208
- importee = importee.slice(0, -importeeQuery.length);
209
- } else if (ssr && linked && importer && isMarkoFile(importee) && !isMarkoFile(importer.replace(queryReg, ""))) {
210
- importeeQuery = serverEntryQuery;
211
- } else if (virtualFiles.has(importee)) {
212
- return importee;
213
- }
214
- if (importeeQuery) {
215
- const resolved = importeeIsAbsolute ? { id: importee } : importee[0] === "." ? {
216
- id: importer ? import_path.default.resolve(importer, "..", importee) : import_path.default.resolve(root, importee)
217
- } : await this.resolve(importee, importer, resolveOpts);
218
- if (resolved) {
219
- resolved.id += importeeQuery;
220
- }
221
- return resolved;
203
+ async resolveId(importee, importer, importOpts, ssr = importOpts.ssr) {
204
+ var _a2;
205
+ if (virtualFiles.has(importee)) {
206
+ return importee;
207
+ }
208
+ let importeeQuery = getMarkoQuery(importee);
209
+ if (importeeQuery) {
210
+ importee = importee.slice(0, -importeeQuery.length);
211
+ } else if (ssr && linked && importer && isMarkoFile(importee) && !isMarkoFile(importer.replace(queryReg, ""))) {
212
+ importeeQuery = serverEntryQuery;
213
+ } else if (!ssr && isBuild && importer && isMarkoFile(importee) && ((_a2 = this.getModuleInfo(importer)) == null ? void 0 : _a2.isEntry)) {
214
+ importeeQuery = browserEntryQuery;
215
+ }
216
+ if (importeeQuery) {
217
+ const resolved = importee[0] === "." ? {
218
+ id: importer ? import_path.default.resolve(importer, "..", importee) : import_path.default.resolve(root, importee)
219
+ } : await this.resolve(importee, importer, resolveOpts);
220
+ if (resolved) {
221
+ resolved.id += importeeQuery;
222
222
  }
223
+ return resolved;
223
224
  }
224
225
  return null;
225
226
  },
@@ -236,14 +237,14 @@ function markoPlugin(opts = {}) {
236
237
  if (isBuild) {
237
238
  const relativeFileName = import_path.default.relative(root, fileName);
238
239
  const entryId = toEntryId(relativeFileName);
239
- serverManifest != null ? serverManifest : serverManifest = {
240
+ serverManifest ?? (serverManifest = {
240
241
  entries: {},
241
242
  chunksNeedingAssets: []
242
- };
243
+ });
243
244
  serverManifest.entries[entryId] = relativeFileName;
244
245
  entryData = JSON.stringify(entryId);
245
246
  } else {
246
- entryData = JSON.stringify(await (0, import_manifest_generator.generateDocManifest)(await devServer.transformIndexHtml("/", (0, import_manifest_generator.generateInputDoc)(fileNameToURL(fileName, root) + browserEntryQuery))));
247
+ entryData = JSON.stringify(await (0, import_manifest_generator.generateDocManifest)(await devServer.transformIndexHtml("/", (0, import_manifest_generator.generateInputDoc)(fileNameToURL(fileName, root)))));
247
248
  }
248
249
  return (0, import_server_entry_template.default)({
249
250
  fileName,
@@ -257,6 +258,12 @@ function markoPlugin(opts = {}) {
257
258
  }
258
259
  return virtualFiles.get(id) || null;
259
260
  },
261
+ async transformIndexHtml(html) {
262
+ if (isBuild) {
263
+ return html;
264
+ }
265
+ return html.replace(/src\s*=\s*(['"])(\\.|(?!\1).)*\.marko\1/gim, (m) => m.slice(0, -1) + browserEntryQuery + m.slice(-1));
266
+ },
260
267
  async transform(source, id, ssr) {
261
268
  const query = getMarkoQuery(id);
262
269
  if (query && !query.startsWith(virtualFileQuery)) {
@@ -268,7 +275,7 @@ function markoPlugin(opts = {}) {
268
275
  if (!isMarkoFile(id)) {
269
276
  return null;
270
277
  }
271
- const compiled = await compiler.compile(source, id, ssr ? ssrConfig : query === browserEntryQuery ? hydrateConfig : domConfig);
278
+ const compiled = await compiler.compile(source, id, (typeof ssr === "object" ? ssr.ssr : ssr) ? ssrConfig : query === browserEntryQuery ? hydrateConfig : domConfig);
272
279
  const { map, meta } = compiled;
273
280
  let { code } = compiled;
274
281
  if (query !== browserEntryQuery && devServer) {
@@ -356,7 +363,7 @@ function toHTMLEntries(root, serverEntries) {
356
363
  const markoFile = import_path.default.join(root, serverEntries[id]);
357
364
  const htmlFile = markoFile + htmlExt;
358
365
  virtualFiles.set(htmlFile, {
359
- code: (0, import_manifest_generator.generateInputDoc)(markoFile + browserEntryQuery)
366
+ code: (0, import_manifest_generator.generateInputDoc)(markoFile)
360
367
  });
361
368
  result.push(htmlFile);
362
369
  }
@@ -406,5 +413,6 @@ function isEmpty(obj) {
406
413
  }
407
414
  return true;
408
415
  }
416
+ module.exports = __toCommonJS(src_exports);
409
417
  // Annotate the CommonJS export names for ESM import in node:
410
418
  0 && (module.exports = {});
package/dist/index.mjs CHANGED
@@ -1,61 +1,32 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __defProps = Object.defineProperties;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
- var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
- var __getProtoOf = Object.getPrototypeOf;
9
- var __hasOwnProp = Object.prototype.hasOwnProperty;
10
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
- var __spreadValues = (a, b) => {
13
- for (var prop in b || (b = {}))
14
- if (__hasOwnProp.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
16
- if (__getOwnPropSymbols)
17
- for (var prop of __getOwnPropSymbols(b)) {
18
- if (__propIsEnum.call(b, prop))
19
- __defNormalProp(a, prop, b[prop]);
20
- }
21
- return a;
22
- };
23
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
25
- var __require = typeof require !== "undefined" ? require : (x) => {
26
- throw new Error('Dynamic require of "' + x + '" is not supported');
27
- };
28
- var __reExport = (target, module, desc) => {
29
- if (module && typeof module === "object" || typeof module === "function") {
30
- for (let key of __getOwnPropNames(module))
31
- if (!__hasOwnProp.call(target, key) && key !== "default")
32
- __defProp(target, key, { get: () => module[key], enumerable: !(desc = __getOwnPropDesc(module, key)) || desc.enumerable });
33
- }
34
- return target;
35
- };
36
- var __toModule = (module) => {
37
- return __reExport(__markAsModule(__defProp(module != null ? __create(__getProtoOf(module)) : {}, "default", module && module.__esModule && "default" in module ? { get: () => module.default, enumerable: true } : { value: module, enumerable: true })), module);
38
- };
1
+ import {
2
+ generateDocManifest,
3
+ generateInputDoc
4
+ } from "./chunk-MPTD6LHF.mjs";
5
+ import "./chunk-VL2HLMVE.mjs";
6
+ import {
7
+ server_entry_template_default
8
+ } from "./chunk-HWRQJHCN.mjs";
9
+ import {
10
+ __spreadProps,
11
+ __spreadValues
12
+ } from "./chunk-SOEV5HRE.mjs";
13
+
14
+ // src/index.ts
39
15
  import os from "os";
40
16
  import fs from "fs";
41
17
  import path from "path";
42
18
  import crypto from "crypto";
43
19
  import { pathToFileURL } from "url";
44
20
  import anyMatch from "anymatch";
45
- import getServerEntryTemplate from "./server-entry-template";
46
- import {
47
- generateInputDoc,
48
- generateDocManifest
49
- } from "./manifest-generator";
50
- const virtualFiles = new Map();
51
- const queryReg = /\?marko-.+$/;
52
- const browserEntryQuery = "?marko-browser-entry";
53
- const serverEntryQuery = "?marko-server-entry";
54
- const virtualFileQuery = "?marko-virtual";
55
- const markoExt = ".marko";
56
- const htmlExt = ".html";
57
- const resolveOpts = { skipSelf: true };
58
- let tempDir;
21
+ var virtualFiles = /* @__PURE__ */ new Map();
22
+ var queryReg = /\?marko-.+$/;
23
+ var browserEntryQuery = "?marko-browser-entry";
24
+ var serverEntryQuery = "?marko-server-entry";
25
+ var virtualFileQuery = "?marko-virtual";
26
+ var markoExt = ".marko";
27
+ var htmlExt = ".html";
28
+ var resolveOpts = { skipSelf: true };
29
+ var tempDir;
59
30
  function markoPlugin(opts = {}) {
60
31
  var _a;
61
32
  let compiler;
@@ -64,7 +35,7 @@ function markoPlugin(opts = {}) {
64
35
  runtimeId,
65
36
  sourceMaps: true,
66
37
  writeVersionComment: false,
67
- cache: new Map(),
38
+ cache: /* @__PURE__ */ new Map(),
68
39
  babelConfig: __spreadProps(__spreadValues({}, opts.babelConfig), {
69
40
  caller: __spreadValues({
70
41
  name: "@marko/vite",
@@ -102,15 +73,14 @@ function markoPlugin(opts = {}) {
102
73
  let devServer;
103
74
  let registeredTag = false;
104
75
  let serverManifest;
105
- const transformWatchFiles = new Map();
106
- const transformOptionalFiles = new Map();
76
+ const transformWatchFiles = /* @__PURE__ */ new Map();
77
+ const transformOptionalFiles = /* @__PURE__ */ new Map();
107
78
  return [
108
79
  {
109
80
  name: "marko-vite:pre",
110
81
  enforce: "pre",
111
82
  async config(config, env) {
112
- var _a2, _b, _c, _d, _e;
113
- compiler != null ? compiler : compiler = await Promise.resolve().then(() => __toModule(require(opts.compiler || "@marko/compiler")));
83
+ compiler ?? (compiler = await import(opts.compiler || "@marko/compiler"));
114
84
  root = config.root || process.cwd();
115
85
  isBuild = env.command === "build";
116
86
  isSSRBuild = isBuild && linked && Boolean(config.build.ssr);
@@ -142,15 +112,15 @@ function markoPlugin(opts = {}) {
142
112
  }
143
113
  const domDeps = Array.from(new Set(domRuntimeDeps.concat(taglibDeps)));
144
114
  const serverDeps = Array.from(new Set(htmlRuntimeDeps.concat(taglibDeps)));
145
- const optimizeDeps = (_a2 = config.optimizeDeps) != null ? _a2 : config.optimizeDeps = {};
146
- (_b = optimizeDeps.include) != null ? _b : optimizeDeps.include = [];
115
+ const optimizeDeps = config.optimizeDeps ?? (config.optimizeDeps = {});
116
+ optimizeDeps.include ?? (optimizeDeps.include = []);
147
117
  optimizeDeps.include = optimizeDeps.include.concat(domDeps.filter((dep) => path.extname(dep) !== markoExt));
148
- (_c = optimizeDeps.exclude) != null ? _c : optimizeDeps.exclude = [];
118
+ optimizeDeps.exclude ?? (optimizeDeps.exclude = []);
149
119
  optimizeDeps.exclude = optimizeDeps.exclude.concat(domDeps.filter((dep) => path.extname(dep) === markoExt));
150
- const ssr = (_d = config.ssr) != null ? _d : config.ssr = {};
151
- (_e = ssr.external) != null ? _e : ssr.external = [];
120
+ const ssr = config.ssr ?? (config.ssr = {});
121
+ ssr.external ?? (ssr.external = []);
152
122
  ssr.external = ssr.external.concat(serverDeps);
153
- (await Promise.resolve().then(() => __toModule(require("@marko/compiler/register")))).default(__spreadProps(__spreadValues({}, ssrConfig), {
123
+ (await import("@marko/compiler/register")).default(__spreadProps(__spreadValues({}, ssrConfig), {
154
124
  sourceMaps: "inline",
155
125
  modules: "cjs"
156
126
  }));
@@ -194,26 +164,27 @@ function markoPlugin(opts = {}) {
194
164
  }
195
165
  }
196
166
  },
197
- async resolveId(importee, importer, _importOpts, ssr) {
198
- const importeeIsAbsolute = path.isAbsolute(importee);
199
- if (!importeeIsAbsolute || importee.startsWith(root)) {
200
- let importeeQuery = getMarkoQuery(importee);
201
- if (importeeQuery) {
202
- importee = importee.slice(0, -importeeQuery.length);
203
- } else if (ssr && linked && importer && isMarkoFile(importee) && !isMarkoFile(importer.replace(queryReg, ""))) {
204
- importeeQuery = serverEntryQuery;
205
- } else if (virtualFiles.has(importee)) {
206
- return importee;
207
- }
208
- if (importeeQuery) {
209
- const resolved = importeeIsAbsolute ? { id: importee } : importee[0] === "." ? {
210
- id: importer ? path.resolve(importer, "..", importee) : path.resolve(root, importee)
211
- } : await this.resolve(importee, importer, resolveOpts);
212
- if (resolved) {
213
- resolved.id += importeeQuery;
214
- }
215
- return resolved;
167
+ async resolveId(importee, importer, importOpts, ssr = importOpts.ssr) {
168
+ var _a2;
169
+ if (virtualFiles.has(importee)) {
170
+ return importee;
171
+ }
172
+ let importeeQuery = getMarkoQuery(importee);
173
+ if (importeeQuery) {
174
+ importee = importee.slice(0, -importeeQuery.length);
175
+ } else if (ssr && linked && importer && isMarkoFile(importee) && !isMarkoFile(importer.replace(queryReg, ""))) {
176
+ importeeQuery = serverEntryQuery;
177
+ } else if (!ssr && isBuild && importer && isMarkoFile(importee) && ((_a2 = this.getModuleInfo(importer)) == null ? void 0 : _a2.isEntry)) {
178
+ importeeQuery = browserEntryQuery;
179
+ }
180
+ if (importeeQuery) {
181
+ const resolved = importee[0] === "." ? {
182
+ id: importer ? path.resolve(importer, "..", importee) : path.resolve(root, importee)
183
+ } : await this.resolve(importee, importer, resolveOpts);
184
+ if (resolved) {
185
+ resolved.id += importeeQuery;
216
186
  }
187
+ return resolved;
217
188
  }
218
189
  return null;
219
190
  },
@@ -230,16 +201,16 @@ function markoPlugin(opts = {}) {
230
201
  if (isBuild) {
231
202
  const relativeFileName = path.relative(root, fileName);
232
203
  const entryId = toEntryId(relativeFileName);
233
- serverManifest != null ? serverManifest : serverManifest = {
204
+ serverManifest ?? (serverManifest = {
234
205
  entries: {},
235
206
  chunksNeedingAssets: []
236
- };
207
+ });
237
208
  serverManifest.entries[entryId] = relativeFileName;
238
209
  entryData = JSON.stringify(entryId);
239
210
  } else {
240
- entryData = JSON.stringify(await generateDocManifest(await devServer.transformIndexHtml("/", generateInputDoc(fileNameToURL(fileName, root) + browserEntryQuery))));
211
+ entryData = JSON.stringify(await generateDocManifest(await devServer.transformIndexHtml("/", generateInputDoc(fileNameToURL(fileName, root)))));
241
212
  }
242
- return getServerEntryTemplate({
213
+ return server_entry_template_default({
243
214
  fileName,
244
215
  entryData,
245
216
  runtimeId
@@ -251,6 +222,12 @@ function markoPlugin(opts = {}) {
251
222
  }
252
223
  return virtualFiles.get(id) || null;
253
224
  },
225
+ async transformIndexHtml(html) {
226
+ if (isBuild) {
227
+ return html;
228
+ }
229
+ return html.replace(/src\s*=\s*(['"])(\\.|(?!\1).)*\.marko\1/gim, (m) => m.slice(0, -1) + browserEntryQuery + m.slice(-1));
230
+ },
254
231
  async transform(source, id, ssr) {
255
232
  const query = getMarkoQuery(id);
256
233
  if (query && !query.startsWith(virtualFileQuery)) {
@@ -262,7 +239,7 @@ function markoPlugin(opts = {}) {
262
239
  if (!isMarkoFile(id)) {
263
240
  return null;
264
241
  }
265
- const compiled = await compiler.compile(source, id, ssr ? ssrConfig : query === browserEntryQuery ? hydrateConfig : domConfig);
242
+ const compiled = await compiler.compile(source, id, (typeof ssr === "object" ? ssr.ssr : ssr) ? ssrConfig : query === browserEntryQuery ? hydrateConfig : domConfig);
266
243
  const { map, meta } = compiled;
267
244
  let { code } = compiled;
268
245
  if (query !== browserEntryQuery && devServer) {
@@ -350,7 +327,7 @@ function toHTMLEntries(root, serverEntries) {
350
327
  const markoFile = path.join(root, serverEntries[id]);
351
328
  const htmlFile = markoFile + htmlExt;
352
329
  virtualFiles.set(htmlFile, {
353
- code: generateInputDoc(markoFile + browserEntryQuery)
330
+ code: generateInputDoc(markoFile)
354
331
  });
355
332
  result.push(htmlFile);
356
333
  }
@@ -5,33 +5,35 @@ var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __getProtoOf = Object.getPrototypeOf;
6
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
7
  var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
- var __require = typeof require !== "undefined" ? require : (x) => {
9
- throw new Error('Dynamic require of "' + x + '" is not supported');
10
- };
11
8
  var __export = (target, all) => {
12
- __markAsModule(target);
13
9
  for (var name in all)
14
10
  __defProp(target, name, { get: all[name], enumerable: true });
15
11
  };
16
- var __reExport = (target, module2, desc) => {
12
+ var __reExport = (target, module2, copyDefault, desc) => {
17
13
  if (module2 && typeof module2 === "object" || typeof module2 === "function") {
18
14
  for (let key of __getOwnPropNames(module2))
19
- if (!__hasOwnProp.call(target, key) && key !== "default")
15
+ if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
20
16
  __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
21
17
  }
22
18
  return target;
23
19
  };
24
- var __toModule = (module2) => {
25
- return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
20
+ var __toESM = (module2, isNodeMode) => {
21
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
26
22
  };
27
- __export(exports, {
23
+ var __toCommonJS = /* @__PURE__ */ ((cache) => {
24
+ return (module2, temp) => {
25
+ return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
26
+ };
27
+ })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
28
+ var manifest_generator_exports = {};
29
+ __export(manifest_generator_exports, {
28
30
  generateDocManifest: () => generateDocManifest,
29
31
  generateInputDoc: () => generateInputDoc
30
32
  });
31
- var import_htmlparser2 = __toModule(require("htmlparser2"));
32
- var import_domelementtype = __toModule(require("domelementtype"));
33
- var import_domhandler = __toModule(require("domhandler"));
34
- var import_serializer = __toModule(require("./serializer"));
33
+ var import_htmlparser2 = require("htmlparser2");
34
+ var import_domelementtype = require("domelementtype");
35
+ var import_domhandler = require("domhandler");
36
+ var import_serializer = __toESM(require("./serializer"));
35
37
  const MARKER_COMMENT = "MARKO_VITE";
36
38
  function generateDocManifest(rawHtml) {
37
39
  return new Promise((resolve, reject) => {
@@ -84,6 +86,7 @@ function splitNodesByMarker(nodes, before, after) {
84
86
  function isElement(node) {
85
87
  return node.type === import_domelementtype.ElementType.Tag;
86
88
  }
89
+ module.exports = __toCommonJS(manifest_generator_exports);
87
90
  // Annotate the CommonJS export names for ESM import in node:
88
91
  0 && (module.exports = {
89
92
  generateDocManifest,
@@ -1,59 +1,9 @@
1
- import { Parser } from "htmlparser2";
2
- import { ElementType } from "domelementtype";
3
- import { DomHandler } from "domhandler";
4
- import serialize from "./serializer";
5
- const MARKER_COMMENT = "MARKO_VITE";
6
- function generateDocManifest(rawHtml) {
7
- return new Promise((resolve, reject) => {
8
- const parser = new Parser(new DomHandler(function(err, dom) {
9
- if (err) {
10
- return reject(err);
11
- }
12
- const htmlChildren = dom.find(isElement).childNodes;
13
- const headPrepend = [];
14
- const head = [];
15
- const bodyPrepend = [];
16
- const body = [];
17
- splitNodesByMarker(htmlChildren.find((node) => isElement(node) && node.tagName === "head").childNodes, headPrepend, head);
18
- splitNodesByMarker(htmlChildren.find((node) => isElement(node) && node.tagName === "body").childNodes, bodyPrepend, body);
19
- resolve({
20
- "head-prepend": serializeOrNull(headPrepend),
21
- head: serializeOrNull(head),
22
- "body-prepend": serializeOrNull(bodyPrepend),
23
- body: serializeOrNull(body)
24
- });
25
- }));
26
- parser.write(rawHtml);
27
- parser.end();
28
- });
29
- }
30
- function generateInputDoc(entry) {
31
- return `<!DOCTYPE html><html><head><!--${MARKER_COMMENT}--></head><body><!--${MARKER_COMMENT}--><script async type="module" src=${JSON.stringify(entry)}><\/script></body></html>`;
32
- }
33
- function serializeOrNull(nodes) {
34
- const result = serialize(nodes);
35
- if (result.length) {
36
- return result;
37
- }
38
- return null;
39
- }
40
- function splitNodesByMarker(nodes, before, after) {
41
- for (let i = 0; i < nodes.length; i++) {
42
- let node = nodes[i];
43
- if (node.data === MARKER_COMMENT) {
44
- i++;
45
- for (; i < nodes.length; i++) {
46
- node = nodes[i];
47
- after.push(node);
48
- }
49
- break;
50
- }
51
- before.push(node);
52
- }
53
- }
54
- function isElement(node) {
55
- return node.type === ElementType.Tag;
56
- }
1
+ import {
2
+ generateDocManifest,
3
+ generateInputDoc
4
+ } from "./chunk-MPTD6LHF.mjs";
5
+ import "./chunk-VL2HLMVE.mjs";
6
+ import "./chunk-SOEV5HRE.mjs";
57
7
  export {
58
8
  generateDocManifest,
59
9
  generateInputDoc
@@ -1,14 +1,27 @@
1
1
  var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
2
5
  var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
3
- var __require = typeof require !== "undefined" ? require : (x) => {
4
- throw new Error('Dynamic require of "' + x + '" is not supported');
5
- };
6
6
  var __export = (target, all) => {
7
- __markAsModule(target);
8
7
  for (var name in all)
9
8
  __defProp(target, name, { get: all[name], enumerable: true });
10
9
  };
11
- __export(exports, {
10
+ var __reExport = (target, module2, copyDefault, desc) => {
11
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
12
+ for (let key of __getOwnPropNames(module2))
13
+ if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
14
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
15
+ }
16
+ return target;
17
+ };
18
+ var __toCommonJS = /* @__PURE__ */ ((cache) => {
19
+ return (module2, temp) => {
20
+ return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
21
+ };
22
+ })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
23
+ var render_assets_transform_exports = {};
24
+ __export(render_assets_transform_exports, {
12
25
  default: () => render_assets_transform_default
13
26
  });
14
27
  var render_assets_transform_default = (tag, t) => {
@@ -20,5 +33,6 @@ var render_assets_transform_default = (tag, t) => {
20
33
  function renderAssetsCall(t, slot) {
21
34
  return t.callExpression(t.memberExpression(t.memberExpression(t.identifier("out"), t.identifier("global")), t.identifier("___viteRenderAssets")), [t.identifier("out"), t.stringLiteral(slot)]);
22
35
  }
36
+ module.exports = __toCommonJS(render_assets_transform_exports);
23
37
  // Annotate the CommonJS export names for ESM import in node:
24
38
  0 && (module.exports = {});
@@ -1,3 +1,6 @@
1
+ import "./chunk-SOEV5HRE.mjs";
2
+
3
+ // src/render-assets-transform.ts
1
4
  var render_assets_transform_default = (tag, t) => {
2
5
  const body = tag.get("body");
3
6
  const tagName = tag.get("name").node.value;
@@ -1,34 +1,31 @@
1
- var __create = Object.create;
2
1
  var __defProp = Object.defineProperty;
3
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
5
  var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
- var __require = typeof require !== "undefined" ? require : (x) => {
9
- throw new Error('Dynamic require of "' + x + '" is not supported');
10
- };
11
6
  var __export = (target, all) => {
12
- __markAsModule(target);
13
7
  for (var name in all)
14
8
  __defProp(target, name, { get: all[name], enumerable: true });
15
9
  };
16
- var __reExport = (target, module2, desc) => {
10
+ var __reExport = (target, module2, copyDefault, desc) => {
17
11
  if (module2 && typeof module2 === "object" || typeof module2 === "function") {
18
12
  for (let key of __getOwnPropNames(module2))
19
- if (!__hasOwnProp.call(target, key) && key !== "default")
13
+ if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
20
14
  __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
21
15
  }
22
16
  return target;
23
17
  };
24
- var __toModule = (module2) => {
25
- return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
26
- };
27
- __export(exports, {
18
+ var __toCommonJS = /* @__PURE__ */ ((cache) => {
19
+ return (module2, temp) => {
20
+ return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
21
+ };
22
+ })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
23
+ var serializer_exports = {};
24
+ __export(serializer_exports, {
28
25
  default: () => serialize
29
26
  });
30
- var import_domelementtype = __toModule(require("domelementtype"));
31
- const voidElements = new Set([
27
+ var import_domelementtype = require("domelementtype");
28
+ const voidElements = /* @__PURE__ */ new Set([
32
29
  "area",
33
30
  "base",
34
31
  "br",
@@ -46,7 +43,7 @@ const voidElements = new Set([
46
43
  ]);
47
44
  function serialize(nodes, parts) {
48
45
  let curString = parts ? parts.pop() : "";
49
- parts != null ? parts : parts = [];
46
+ parts ?? (parts = []);
50
47
  for (const node of nodes) {
51
48
  switch (node.type) {
52
49
  case import_domelementtype.ElementType.Tag:
@@ -102,5 +99,6 @@ function serialize(nodes, parts) {
102
99
  }
103
100
  return parts;
104
101
  }
102
+ module.exports = __toCommonJS(serializer_exports);
105
103
  // Annotate the CommonJS export names for ESM import in node:
106
104
  0 && (module.exports = {});
@@ -1,78 +1,7 @@
1
- import { ElementType } from "domelementtype";
2
- const voidElements = new Set([
3
- "area",
4
- "base",
5
- "br",
6
- "col",
7
- "embed",
8
- "hr",
9
- "img",
10
- "input",
11
- "link",
12
- "meta",
13
- "param",
14
- "source",
15
- "track",
16
- "wbr"
17
- ]);
18
- function serialize(nodes, parts) {
19
- let curString = parts ? parts.pop() : "";
20
- parts != null ? parts : parts = [];
21
- for (const node of nodes) {
22
- switch (node.type) {
23
- case ElementType.Tag:
24
- case ElementType.Style:
25
- case ElementType.Script: {
26
- const tag = node;
27
- const { name } = tag;
28
- curString += `<${name}`;
29
- switch (tag.tagName) {
30
- case "script":
31
- parts.push(curString);
32
- curString = "";
33
- break;
34
- case "style":
35
- parts.push(curString);
36
- curString = "";
37
- break;
38
- case "link":
39
- if (tag.attribs.rel === "stylesheet") {
40
- parts.push(curString);
41
- curString = "";
42
- }
43
- break;
44
- }
45
- for (const attr of tag.attributes) {
46
- curString += ` ${attr.value === "" ? attr.name : `${attr.name}="${attr.value.replace(/"/g, "&#39;")}"`}`;
47
- }
48
- curString += ">";
49
- if (tag.children.length) {
50
- parts.push(curString);
51
- serialize(tag.children, parts);
52
- curString = parts.pop();
53
- }
54
- if (!voidElements.has(name)) {
55
- curString += `</${name}>`;
56
- }
57
- break;
58
- }
59
- case ElementType.Text: {
60
- const text = node.data;
61
- if (!/^\s*$/.test(text)) {
62
- curString += text;
63
- }
64
- break;
65
- }
66
- case ElementType.Comment:
67
- curString += `<!--${node.data}-->`;
68
- break;
69
- }
70
- }
71
- if (curString) {
72
- parts.push(curString);
73
- }
74
- return parts;
75
- }
1
+ import {
2
+ serialize
3
+ } from "./chunk-VL2HLMVE.mjs";
4
+ import "./chunk-SOEV5HRE.mjs";
76
5
  export {
77
6
  serialize as default
78
7
  };
@@ -5,29 +5,31 @@ var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __getProtoOf = Object.getPrototypeOf;
6
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
7
  var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
- var __require = typeof require !== "undefined" ? require : (x) => {
9
- throw new Error('Dynamic require of "' + x + '" is not supported');
10
- };
11
8
  var __export = (target, all) => {
12
- __markAsModule(target);
13
9
  for (var name in all)
14
10
  __defProp(target, name, { get: all[name], enumerable: true });
15
11
  };
16
- var __reExport = (target, module2, desc) => {
12
+ var __reExport = (target, module2, copyDefault, desc) => {
17
13
  if (module2 && typeof module2 === "object" || typeof module2 === "function") {
18
14
  for (let key of __getOwnPropNames(module2))
19
- if (!__hasOwnProp.call(target, key) && key !== "default")
15
+ if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
20
16
  __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
21
17
  }
22
18
  return target;
23
19
  };
24
- var __toModule = (module2) => {
25
- return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
20
+ var __toESM = (module2, isNodeMode) => {
21
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
26
22
  };
27
- __export(exports, {
23
+ var __toCommonJS = /* @__PURE__ */ ((cache) => {
24
+ return (module2, temp) => {
25
+ return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
26
+ };
27
+ })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
28
+ var server_entry_template_exports = {};
29
+ __export(server_entry_template_exports, {
28
30
  default: () => server_entry_template_default
29
31
  });
30
- var import_path = __toModule(require("path"));
32
+ var import_path = __toESM(require("path"));
31
33
  var server_entry_template_default = async (opts) => {
32
34
  const fileNameStr = JSON.stringify(`./${import_path.default.basename(opts.fileName)}`);
33
35
  return `import template from ${fileNameStr};
@@ -44,5 +46,6 @@ ${opts.runtimeId ? `$ $global.runtimeId = ${JSON.stringify(opts.runtimeId)};
44
46
  <_vite slot="body"/>
45
47
  `;
46
48
  };
49
+ module.exports = __toCommonJS(server_entry_template_exports);
47
50
  // Annotate the CommonJS export names for ESM import in node:
48
51
  0 && (module.exports = {});
@@ -1,20 +1,7 @@
1
- import path from "path";
2
- var server_entry_template_default = async (opts) => {
3
- const fileNameStr = JSON.stringify(`./${path.basename(opts.fileName)}`);
4
- return `import template from ${fileNameStr};
5
- export * from ${fileNameStr};
6
- $ const $global = out.global;
7
- ${opts.runtimeId ? `$ $global.runtimeId = ${JSON.stringify(opts.runtimeId)};
8
- ` : ""}$ ($global.___viteEntries || ($global.___viteEntries = [])).push(${opts.entryData});
9
- <_vite slot="head-prepend"/>
10
- <_vite slot="head"/>
11
- <_vite slot="body-prepend"/>
12
- <\${template} ...input/>
13
- <init-components/>
14
- <await-reorderer/>
15
- <_vite slot="body"/>
16
- `;
17
- };
1
+ import {
2
+ server_entry_template_default
3
+ } from "./chunk-HWRQJHCN.mjs";
4
+ import "./chunk-SOEV5HRE.mjs";
18
5
  export {
19
6
  server_entry_template_default as default
20
7
  };
package/package.json CHANGED
@@ -1,41 +1,45 @@
1
1
  {
2
2
  "name": "@marko/vite",
3
3
  "description": "A Marko plugin for Vite",
4
- "version": "2.1.0",
4
+ "version": "2.2.2",
5
5
  "author": "Dylan Piercey <dpiercey@ebay.com>",
6
6
  "bugs": "https://github.com/marko-js/vite/issues",
7
7
  "dependencies": {
8
8
  "anymatch": "^3.1.2",
9
9
  "domelementtype": "^2.2.0",
10
- "domhandler": "^4.2.2",
11
- "htmlparser2": "^7.1.1"
10
+ "domhandler": "^4.3.0",
11
+ "htmlparser2": "^7.2.0"
12
12
  },
13
13
  "devDependencies": {
14
- "@commitlint/cli": "^13.1.0",
15
- "@commitlint/config-conventional": "^13.1.0",
16
- "@istanbuljs/nyc-config-typescript": "^1.0.1",
17
- "@marko/compiler": "^5.15.10",
14
+ "@commitlint/cli": "^16.0.1",
15
+ "@commitlint/config-conventional": "^16.0.0",
16
+ "@marko/compiler": "^5.17.6",
18
17
  "@types/mocha": "^9.0.0",
19
- "@types/node": "^16.9.4",
20
- "@typescript-eslint/eslint-plugin": "^4.31.1",
21
- "@typescript-eslint/parser": "^4.31.1",
22
- "codecov": "^3.8.3",
23
- "esbuild": "^0.12.28",
24
- "esbuild-register": "^3.0.0",
25
- "eslint": "^7.32.0",
18
+ "@types/node": "^17.0.6",
19
+ "@typescript-eslint/eslint-plugin": "^5.8.1",
20
+ "@typescript-eslint/parser": "^5.8.1",
21
+ "esbuild": "^0.14.10",
22
+ "esbuild-register": "^3.3.1",
23
+ "eslint": "^8.6.0",
26
24
  "eslint-config-prettier": "^8.3.0",
27
25
  "fast-glob": "^3.2.7",
28
26
  "fixpack": "^4.0.0",
29
- "husky": "^7.0.2",
30
- "lint-staged": "^11.1.2",
31
- "marko": "^5.15.10",
32
- "mocha": "^9.1.1",
33
- "mocha-snap": "^4.0.2",
27
+ "husky": "^7.0.4",
28
+ "lint-staged": "^12.1.4",
29
+ "marko": "^5.17.6",
30
+ "mocha": "^9.1.3",
31
+ "mocha-snap": "^4.2.1",
34
32
  "nyc": "^15.1.0",
35
- "prettier": "^2.4.1",
36
- "semantic-release": "^18.0.0",
37
- "typescript": "^4.4.3",
38
- "vite": "^2.5.3"
33
+ "prettier": "^2.5.1",
34
+ "semantic-release": "^18.0.1",
35
+ "typescript": "^4.5.4",
36
+ "vite": "^2.7.10"
37
+ },
38
+ "exports": {
39
+ ".": {
40
+ "import": "./dist/index.mjs",
41
+ "default": "./dist/index.js"
42
+ }
39
43
  },
40
44
  "files": [
41
45
  "dist",
@@ -51,11 +55,11 @@
51
55
  "vite"
52
56
  ],
53
57
  "license": "MIT",
54
- "main": "dist/index.js",
55
- "module": "dist/index.mjs",
58
+ "main": "./dist/index.js",
59
+ "module": "./dist/index.mjs",
56
60
  "peerDependencies": {
57
- "@marko/compiler": "^5.15.10",
58
- "vite": "^2.5.10"
61
+ "@marko/compiler": "^5",
62
+ "vite": "^2"
59
63
  },
60
64
  "repository": {
61
65
  "type": "git",
@@ -63,7 +67,6 @@
63
67
  },
64
68
  "scripts": {
65
69
  "build": "tsc -b && node -r esbuild-register build",
66
- "ci:report": "codecov",
67
70
  "ci:test": "nyc npm run mocha -- --forbid-pending --forbid-only",
68
71
  "format": "npm run lint:eslint -- --fix && npm run lint:prettier -- --write && (fixpack || true)",
69
72
  "lint": "tsc -b && npm run lint:eslint && npm run lint:prettier -- -l && fixpack",