nexa-vite-plugin 0.5.2 → 0.6.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.d.ts CHANGED
@@ -1,2 +1 @@
1
1
  export { nexaPlugin } from './plugin.js';
2
- //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -1,2 +1 @@
1
1
  export { nexaPlugin } from './plugin.js';
2
- //# sourceMappingURL=index.js.map
package/dist/plugin.d.ts CHANGED
@@ -1,2 +1 @@
1
1
  export declare function nexaPlugin(): any;
2
- //# sourceMappingURL=plugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAIA,wBAAgB,UAAU,IAAI,GAAG,CAqEhC"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAcA,wBAAgB,UAAU,IAAI,GAAG,CA8FhC"}
package/dist/plugin.js CHANGED
@@ -1,13 +1,47 @@
1
+ import { readFileSync, existsSync } from 'fs';
2
+ import { resolve, dirname, normalize } from 'path';
1
3
  import { parseSFC, generateComponentCode } from 'nexa-compiler';
2
4
  const nexaExt = '.nexa';
5
+ const cleanId = (id) => {
6
+ const base = id.split('?')[0];
7
+ if (base.startsWith('/@fs/'))
8
+ return normalize(base.slice('/@fs/'.length));
9
+ return normalize(base);
10
+ };
11
+ const isNexaId = (id) => cleanId(id).endsWith(nexaExt);
3
12
  export function nexaPlugin() {
4
13
  return {
5
14
  name: 'vite-plugin-nexa',
6
15
  enforce: 'pre',
16
+ resolveId(id, importer) {
17
+ if (importer && id.startsWith('.') && id.endsWith('.js')) {
18
+ const from = dirname(cleanId(importer));
19
+ const resolvedJs = resolve(from, id);
20
+ if (!existsSync(resolvedJs)) {
21
+ const resolvedTs = resolvedJs.slice(0, -3) + '.ts';
22
+ if (existsSync(resolvedTs))
23
+ return resolvedTs;
24
+ }
25
+ }
26
+ if (isNexaId(id)) {
27
+ if (importer && id.startsWith('.')) {
28
+ return resolve(dirname(cleanId(importer)), id);
29
+ }
30
+ return { id, external: false };
31
+ }
32
+ return null;
33
+ },
34
+ load(id) {
35
+ if (isNexaId(id)) {
36
+ return readFileSync(cleanId(id), 'utf-8');
37
+ }
38
+ return null;
39
+ },
7
40
  transform(code, id) {
8
- if (!id.endsWith(nexaExt))
41
+ if (!isNexaId(id))
9
42
  return null;
10
- let hmrId = id.split('?')[0].split('/').pop()?.replace(/[^a-zA-Z0-9_]/g, '_') || 'comp';
43
+ const fileId = cleanId(id);
44
+ let hmrId = fileId.split(/[\\/]/).pop()?.replace(/[^a-zA-Z0-9_]/g, '_') || 'comp';
11
45
  if (/^\d/.test(hmrId))
12
46
  hmrId = '_' + hmrId;
13
47
  try {
@@ -38,14 +72,13 @@ export function nexaPlugin() {
38
72
  }
39
73
  catch (err) {
40
74
  const message = err instanceof Error ? err.message : String(err);
41
- this.error(`Nexa compiler error in ${id}: ${message}`);
42
- return null;
75
+ throw new Error(`Nexa compiler error in ${id}: ${message}`);
43
76
  }
44
77
  },
45
78
  handleHotUpdate(ctx) {
46
79
  const { file, server } = ctx;
47
80
  if (file.endsWith(nexaExt)) {
48
- const module = server.moduleGraph.getModuleById(file);
81
+ const module = server.moduleGraph.getModuleById(file) || server.moduleGraph.getModuleById(`/@fs/${file.replace(/\\/g, '/')}`);
49
82
  if (module) {
50
83
  server.moduleGraph.invalidateModule(module);
51
84
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nexa-vite-plugin",
3
- "version": "0.5.2",
3
+ "version": "0.6.0",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
@@ -13,7 +13,7 @@
13
13
  }
14
14
  },
15
15
  "dependencies": {
16
- "nexa-compiler": "0.5.2"
16
+ "nexa-compiler": "0.6.0"
17
17
  },
18
18
  "peerDependencies": {
19
19
  "vite": "^5.0.0 || ^6.0.0"
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA"}