@zipadee/javascript 0.0.12 → 0.0.13

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.
@@ -1 +1 @@
1
- {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../src/lib/serve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,UAAU,EAAC,MAAM,eAAe,CAAC;AAezD,MAAM,WAAW,OAAO;IACtB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;OAIG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE3B;;OAEG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAC5B;AAYD;;GAEG;AACH,eAAO,MAAM,KAAK,SAAU,OAAO,KAAG,UAyGrC,CAAC"}
1
+ {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../src/lib/serve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,UAAU,EAAC,MAAM,eAAe,CAAC;AAezD,MAAM,WAAW,OAAO;IACtB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;OAIG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE3B;;OAEG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAC5B;AAYD;;GAEG;AACH,eAAO,MAAM,KAAK,SAAU,OAAO,KAAG,UAkIrC,CAAC"}
package/lib/serve.js CHANGED
@@ -1,15 +1,10 @@
1
- import {HttpError} from '@zipadee/core';
2
- import {
3
- decodePath,
4
- pathIsHidden,
5
- resolvePath,
6
- stat,
7
- } from '@zipadee/static/lib/utils.js';
8
- import {send} from '@zipadee/static';
1
+ import { HttpError } from '@zipadee/core';
2
+ import { decodePath, pathIsHidden, resolvePath, stat, } from '@zipadee/static/lib/utils.js';
3
+ import { send } from '@zipadee/static';
9
4
  import fs from 'node:fs/promises';
10
5
  import path from 'node:path';
11
- import {parse, init} from 'es-module-lexer';
12
- import {moduleResolve} from 'import-meta-resolve';
6
+ import { parse, init } from 'es-module-lexer';
7
+ import { moduleResolve } from 'import-meta-resolve';
13
8
  await init;
14
9
  // TODO:
15
10
  // - Add caching for both specifier resolution and files
@@ -24,92 +19,128 @@ await init;
24
19
  * Serve static JavaScript files from a `root` directory.
25
20
  */
26
21
  export const serve = (opts) => {
27
- const root =
28
- opts.root === undefined ? process.cwd() : path.resolve(opts.root);
29
- const base = opts.base === undefined ? root : resolvePath(root, opts.base);
30
- const rootPathPrefix = opts.rootPathPrefix ?? '/__root__';
31
- const extensions = opts.extensions ?? ['.js', '.mjs'];
32
- const conditionsArray = opts.conditions ?? ['browser', 'import'];
33
- const conditions = new Set(conditionsArray);
34
- return async (req, res, next) => {
35
- if (!(req.method === 'HEAD' || req.method === 'GET')) {
36
- // TODO: implement HEAD?
37
- return await next();
38
- }
39
- let filePath = decodePath(req.path);
40
- const mountedPath = req.url.pathname.substring(
41
- 0,
42
- req.url.pathname.length - filePath.length,
43
- );
44
- const parsedPath = path.parse(filePath);
45
- const transform = extensions.includes(parsedPath.ext);
46
- if (filePath.startsWith(rootPathPrefix)) {
47
- filePath = filePath.substring(rootPathPrefix.length);
48
- filePath = filePath.slice(parsedPath.root.length);
49
- filePath = resolvePath(root, filePath);
50
- } else {
51
- filePath = filePath.slice(parsedPath.root.length);
52
- filePath = resolvePath(base, filePath);
53
- }
54
- if (pathIsHidden(root, filePath)) {
55
- return await next();
56
- }
57
- const stats = await stat(filePath);
58
- if (stats.isDirectory()) {
59
- return await next();
60
- }
61
- if (!transform) {
62
- const relativePath = path.relative(root, filePath);
63
- await send(req, res, relativePath, {root});
64
- return;
65
- }
66
- const source = await fs.readFile(filePath, 'utf8');
67
- const [imports, _exports, _facade, _hasModuleSyntax] = parse(
68
- source,
69
- filePath,
70
- );
71
- let output = '';
72
- let lastIndex = 0;
73
- for (const impt of imports) {
74
- const {t: type, s: start, e: end, n: unescaped} = impt;
75
- if (type === 1) {
76
- // Static import
77
- const importSpecifier = unescaped || source.substring(start, end);
78
- // If the specifier is relative or absolute, we don't need to resolve it
79
- if (
80
- importSpecifier.startsWith('.') ||
81
- importSpecifier.startsWith('/')
82
- ) {
83
- output += `${source.substring(lastIndex, start)}${importSpecifier}`;
84
- lastIndex = end;
85
- continue;
22
+ const root = opts.root === undefined ? process.cwd() : path.resolve(opts.root);
23
+ const base = opts.base === undefined ? root : resolvePath(root, opts.base);
24
+ const rootPathPrefix = opts.rootPathPrefix ?? '/__root__';
25
+ const extensions = opts.extensions ?? ['.js', '.mjs'];
26
+ const conditionsArray = opts.conditions ?? ['browser', 'import'];
27
+ const conditions = new Set(conditionsArray);
28
+ return async (req, res, next) => {
29
+ if (!(req.method === 'HEAD' || req.method === 'GET')) {
30
+ // TODO: implement HEAD?
31
+ return await next();
32
+ }
33
+ let filePath = decodePath(req.path);
34
+ const mountedPath = req.url.pathname.substring(0, req.url.pathname.length - filePath.length);
35
+ const parsedPath = path.parse(filePath);
36
+ const transform = extensions.includes(parsedPath.ext);
37
+ if (filePath.startsWith(rootPathPrefix)) {
38
+ filePath = filePath.substring(rootPathPrefix.length);
39
+ filePath = filePath.slice(parsedPath.root.length);
40
+ filePath = resolvePath(root, filePath);
41
+ }
42
+ else {
43
+ filePath = filePath.slice(parsedPath.root.length);
44
+ filePath = resolvePath(base, filePath);
86
45
  }
87
- const fileURL = new URL(filePath, 'file://');
88
- const resolvedImportURL = moduleResolve(
89
- importSpecifier,
90
- fileURL,
91
- conditions,
92
- );
93
- const resolvedImportPath = resolvedImportURL.pathname;
94
- if (!resolvedImportPath.startsWith(root)) {
95
- throw new HttpError(500);
46
+ if (pathIsHidden(root, filePath)) {
47
+ return await next();
96
48
  }
97
- let resolvedimport;
98
- if (resolvedImportPath.startsWith(base)) {
99
- resolvedimport = resolvedImportPath.substring(base.length);
100
- } else {
101
- resolvedimport = path.join(
102
- mountedPath,
103
- rootPathPrefix,
104
- resolvedImportPath.substring(root.length),
105
- );
49
+ const stats = await stat(filePath);
50
+ if (stats.isDirectory()) {
51
+ return await next();
52
+ }
53
+ if (!transform) {
54
+ const relativePath = path.relative(root, filePath);
55
+ await send(req, res, relativePath, { root });
56
+ return;
57
+ }
58
+ const source = await fs.readFile(filePath, 'utf8');
59
+ const [imports, _exports, _facade, _hasModuleSyntax] = parse(source, filePath);
60
+ let output = '';
61
+ let lastIndex = 0;
62
+ for (const impt of imports) {
63
+ const { t: type, s: start, e: end, n: unescaped } = impt;
64
+ if (type === 1) {
65
+ // Static import
66
+ let importSpecifier = unescaped || source.substring(start, end);
67
+ let relativeImport = false;
68
+ let absoluteImport = false;
69
+ // If the specifier is relative or absolute, and has an extension,
70
+ // we don't need to resolve it
71
+ if (importSpecifier.startsWith('.') ||
72
+ importSpecifier.startsWith('/')) {
73
+ if (path.extname(importSpecifier) === '') {
74
+ // If we don't have an extension, we need to resolve it, but fix the
75
+ // resolved path to be relative to the current file
76
+ relativeImport = importSpecifier.startsWith('.');
77
+ absoluteImport = importSpecifier.startsWith('/');
78
+ }
79
+ else {
80
+ output += `${source.substring(lastIndex, start)}${importSpecifier}`;
81
+ lastIndex = end;
82
+ continue;
83
+ }
84
+ }
85
+ const fileURL = new URL(filePath, 'file://');
86
+ if (absoluteImport) {
87
+ // If the import is absolute, we need to resolve it relative to the
88
+ // base path
89
+ importSpecifier = path.join(base, importSpecifier);
90
+ }
91
+ const resolvedImportURL = resolveImport(importSpecifier, fileURL, conditions, true);
92
+ const resolvedImportPath = resolvedImportURL.pathname;
93
+ if (!resolvedImportPath.startsWith(root)) {
94
+ throw new HttpError(500);
95
+ }
96
+ let resolvedimport;
97
+ if (relativeImport) {
98
+ resolvedimport = path.relative(path.dirname(filePath), resolvedImportPath);
99
+ if (!resolvedimport.startsWith('.')) {
100
+ resolvedimport = './' + resolvedimport;
101
+ }
102
+ }
103
+ else if (resolvedImportPath.startsWith(base)) {
104
+ resolvedimport = resolvedImportPath.substring(base.length);
105
+ }
106
+ else {
107
+ resolvedimport = path.join(mountedPath, rootPathPrefix, resolvedImportPath.substring(root.length));
108
+ }
109
+ output += `${source.substring(lastIndex, start)}${resolvedimport}`;
110
+ lastIndex = end;
111
+ }
112
+ }
113
+ res.type = 'text/javascript';
114
+ res.body = output + source.substring(lastIndex);
115
+ };
116
+ };
117
+ /**
118
+ * Tries to resolve an import specifier with moduleResolve().
119
+ *
120
+ * When `tryExtensions` is true, if resolution fails and the specifier has no
121
+ * extension, it will try again with a '.js' extension.
122
+ *
123
+ * @param importSpecifier
124
+ * @param fileURL
125
+ * @param conditions
126
+ * @returns
127
+ */
128
+ const resolveImport = (importSpecifier, fileURL, conditions, tryExtensions = false) => {
129
+ try {
130
+ return moduleResolve(importSpecifier, fileURL, conditions);
131
+ }
132
+ catch (e) {
133
+ if (tryExtensions &&
134
+ e.code === 'ERR_MODULE_NOT_FOUND' &&
135
+ path.extname(importSpecifier) === '') {
136
+ try {
137
+ return moduleResolve(importSpecifier + '.js', fileURL, conditions);
138
+ }
139
+ catch (innerError) {
140
+ throw e;
141
+ }
106
142
  }
107
- output += `${source.substring(lastIndex, start)}${resolvedimport}`;
108
- lastIndex = end;
109
- }
143
+ throw e;
110
144
  }
111
- res.type = 'text/javascript';
112
- res.body = output + source.substring(lastIndex);
113
- };
114
145
  };
115
- //# sourceMappingURL=serve.js.map
146
+ //# sourceMappingURL=serve.js.map
package/lib/serve.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"serve.js","sourceRoot":"","sources":["../src/lib/serve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serve.js","sourceRoot":"","sources":["../src/lib/serve.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zipadee/javascript",
3
- "version": "0.0.12",
3
+ "version": "0.0.13",
4
4
  "type": "module",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -56,8 +56,8 @@
56
56
  }
57
57
  },
58
58
  "dependencies": {
59
- "@zipadee/core": "^0.0.12",
60
- "@zipadee/static": "^0.0.12",
59
+ "@zipadee/core": "^0.0.13",
60
+ "@zipadee/static": "^0.0.13",
61
61
  "es-module-lexer": "^1.5.4",
62
62
  "import-meta-resolve": "^4.1.0"
63
63
  }