@marko/vite 2.1.1 → 2.2.0

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.js CHANGED
@@ -197,28 +197,20 @@ function markoPlugin(opts = {}) {
197
197
  }
198
198
  }
199
199
  },
200
- async resolveId(importee, importer, _importOpts, ssr) {
201
- var _a2;
202
- const importeeIsAbsolute = import_path.default.isAbsolute(importee);
203
- let importeeQuery = getMarkoQuery(importee);
204
- if (importeeIsAbsolute && !importee.startsWith(root)) {
205
- importee = (await this.resolve(importee, importer, resolveOpts)).id;
200
+ async resolveId(importee, importer, importOpts, ssr = importOpts.ssr) {
201
+ if (virtualFiles.has(importee)) {
202
+ return importee;
206
203
  }
204
+ let importeeQuery = getMarkoQuery(importee);
207
205
  if (importeeQuery) {
208
206
  importee = importee.slice(0, -importeeQuery.length);
209
- } else if (virtualFiles.has(importee)) {
210
- return importee;
211
- } else if (isMarkoFile(importee)) {
212
- if (ssr) {
213
- if (linked && importer && !isMarkoFile(importer.replace(queryReg, ""))) {
214
- importeeQuery = serverEntryQuery;
215
- }
216
- } else if (!importer || ((_a2 = this.getModuleInfo(importer)) == null ? void 0 : _a2.isEntry)) {
217
- importeeQuery = browserEntryQuery;
218
- }
207
+ } else if (ssr && linked && importer && isMarkoFile(importee) && !isMarkoFile(importer.replace(queryReg, ""))) {
208
+ importeeQuery = serverEntryQuery;
209
+ } else if (!ssr && isBuild && importer && isMarkoFile(importee) && this.getModuleInfo(importer).isEntry) {
210
+ importeeQuery = browserEntryQuery;
219
211
  }
220
212
  if (importeeQuery) {
221
- const resolved = importeeIsAbsolute ? { id: importee } : importee[0] === "." ? {
213
+ const resolved = importee[0] === "." ? {
222
214
  id: importer ? import_path.default.resolve(importer, "..", importee) : import_path.default.resolve(root, importee)
223
215
  } : await this.resolve(importee, importer, resolveOpts);
224
216
  if (resolved) {
@@ -262,6 +254,12 @@ function markoPlugin(opts = {}) {
262
254
  }
263
255
  return virtualFiles.get(id) || null;
264
256
  },
257
+ async transformIndexHtml(html) {
258
+ if (isBuild) {
259
+ return html;
260
+ }
261
+ return html.replace(/src\s*=\s*(['"])(\\.|(?!\1).)*\.marko\1/gim, (m) => m.slice(0, -1) + browserEntryQuery + m.slice(-1));
262
+ },
265
263
  async transform(source, id, ssr) {
266
264
  const query = getMarkoQuery(id);
267
265
  if (query && !query.startsWith(virtualFileQuery)) {
@@ -273,7 +271,7 @@ function markoPlugin(opts = {}) {
273
271
  if (!isMarkoFile(id)) {
274
272
  return null;
275
273
  }
276
- const compiled = await compiler.compile(source, id, ssr ? ssrConfig : query === browserEntryQuery ? hydrateConfig : domConfig);
274
+ const compiled = await compiler.compile(source, id, (typeof ssr === "object" ? ssr.ssr : ssr) ? ssrConfig : query === browserEntryQuery ? hydrateConfig : domConfig);
277
275
  const { map, meta } = compiled;
278
276
  let { code } = compiled;
279
277
  if (query !== browserEntryQuery && devServer) {
package/dist/index.mjs CHANGED
@@ -191,28 +191,20 @@ function markoPlugin(opts = {}) {
191
191
  }
192
192
  }
193
193
  },
194
- async resolveId(importee, importer, _importOpts, ssr) {
195
- var _a2;
196
- const importeeIsAbsolute = path.isAbsolute(importee);
197
- let importeeQuery = getMarkoQuery(importee);
198
- if (importeeIsAbsolute && !importee.startsWith(root)) {
199
- importee = (await this.resolve(importee, importer, resolveOpts)).id;
194
+ async resolveId(importee, importer, importOpts, ssr = importOpts.ssr) {
195
+ if (virtualFiles.has(importee)) {
196
+ return importee;
200
197
  }
198
+ let importeeQuery = getMarkoQuery(importee);
201
199
  if (importeeQuery) {
202
200
  importee = importee.slice(0, -importeeQuery.length);
203
- } else if (virtualFiles.has(importee)) {
204
- return importee;
205
- } else if (isMarkoFile(importee)) {
206
- if (ssr) {
207
- if (linked && importer && !isMarkoFile(importer.replace(queryReg, ""))) {
208
- importeeQuery = serverEntryQuery;
209
- }
210
- } else if (!importer || ((_a2 = this.getModuleInfo(importer)) == null ? void 0 : _a2.isEntry)) {
211
- importeeQuery = browserEntryQuery;
212
- }
201
+ } else if (ssr && linked && importer && isMarkoFile(importee) && !isMarkoFile(importer.replace(queryReg, ""))) {
202
+ importeeQuery = serverEntryQuery;
203
+ } else if (!ssr && isBuild && importer && isMarkoFile(importee) && this.getModuleInfo(importer).isEntry) {
204
+ importeeQuery = browserEntryQuery;
213
205
  }
214
206
  if (importeeQuery) {
215
- const resolved = importeeIsAbsolute ? { id: importee } : importee[0] === "." ? {
207
+ const resolved = importee[0] === "." ? {
216
208
  id: importer ? path.resolve(importer, "..", importee) : path.resolve(root, importee)
217
209
  } : await this.resolve(importee, importer, resolveOpts);
218
210
  if (resolved) {
@@ -256,6 +248,12 @@ function markoPlugin(opts = {}) {
256
248
  }
257
249
  return virtualFiles.get(id) || null;
258
250
  },
251
+ async transformIndexHtml(html) {
252
+ if (isBuild) {
253
+ return html;
254
+ }
255
+ return html.replace(/src\s*=\s*(['"])(\\.|(?!\1).)*\.marko\1/gim, (m) => m.slice(0, -1) + browserEntryQuery + m.slice(-1));
256
+ },
259
257
  async transform(source, id, ssr) {
260
258
  const query = getMarkoQuery(id);
261
259
  if (query && !query.startsWith(virtualFileQuery)) {
@@ -267,7 +265,7 @@ function markoPlugin(opts = {}) {
267
265
  if (!isMarkoFile(id)) {
268
266
  return null;
269
267
  }
270
- const compiled = await compiler.compile(source, id, ssr ? ssrConfig : query === browserEntryQuery ? hydrateConfig : domConfig);
268
+ const compiled = await compiler.compile(source, id, (typeof ssr === "object" ? ssr.ssr : ssr) ? ssrConfig : query === browserEntryQuery ? hydrateConfig : domConfig);
271
269
  const { map, meta } = compiled;
272
270
  let { code } = compiled;
273
271
  if (query !== browserEntryQuery && devServer) {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@marko/vite",
3
3
  "description": "A Marko plugin for Vite",
4
- "version": "2.1.1",
4
+ "version": "2.2.0",
5
5
  "author": "Dylan Piercey <dpiercey@ebay.com>",
6
6
  "bugs": "https://github.com/marko-js/vite/issues",
7
7
  "dependencies": {