@marko/compiler 5.39.23 → 5.39.25

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.
@@ -2,8 +2,10 @@
2
2
  var _path = _interopRequireDefault(require("path"));
3
3
  var _relativeImportPath = require("relative-import-path");
4
4
 
5
+ var _modules = require("../../modules");
6
+
5
7
  const IMPORTS_KEY = Symbol();
6
- const FS_START = _path.default.sep === "/" ? _path.default.sep : /^(.*?:)/.exec(process.cwd())[1];
8
+ const FS_START = _path.default.sep === "/" ? _path.default.sep : /^(.*?:)/.exec(_modules.cwd)[1];
7
9
 
8
10
  function resolveRelativePath(file, request) {
9
11
  if (request.startsWith(FS_START)) {
@@ -3,6 +3,7 @@ var _modules = _interopRequireDefault(require("@marko/compiler/modules"));
3
3
  var _lassoPackageRoot = require("lasso-package-root");
4
4
  var _path = require("path");
5
5
 
6
+ var _modules2 = require("../../modules");
6
7
  var _quickHash = require("../util/quick-hash");
7
8
  var _diagnostics = require("./diagnostics");
8
9
  var _imports = require("./imports");
@@ -19,13 +20,6 @@ const TRANSPARENT_TAGS = new Set([
19
20
  "_no-update"]
20
21
  );
21
22
 
22
- const CWD = process.cwd();
23
- let ROOT = CWD;
24
- try {
25
- ROOT = (0, _lassoPackageRoot.getRootDir)(ROOT) || ROOT;
26
- // eslint-disable-next-line no-empty
27
- } catch {}
28
-
29
23
  function isNativeTag(path) {
30
24
  if (path.node._isDynamicString) {
31
25
  return true;
@@ -317,7 +311,7 @@ function resolveMarkoFile(file, filename) {
317
311
  const idCache = new WeakMap();
318
312
  const templateIdHashOpts = { outputLength: 5 };
319
313
  function getTemplateId(opts, request, child) {
320
- const id = (0, _path.relative)(ROOT, request).replace(/[^a-zA-Z0-9_$./-]/g, "/");
314
+ const id = (0, _path.relative)(_modules2.root, request).replace(/[^a-zA-Z0-9_$./-]/g, "/");
321
315
  const optimize = typeof opts === "object" ? opts.optimize : opts;
322
316
 
323
317
  if (optimize) {
@@ -388,7 +382,7 @@ function resolveTagImport(path, request) {
388
382
  function createNewFileOpts(opts, filename) {
389
383
  const sourceFileName = (0, _path.basename)(filename);
390
384
  const sourceRoot = (0, _path.dirname)(filename);
391
- const filenameRelative = (0, _path.relative)(CWD, filename);
385
+ const filenameRelative = (0, _path.relative)(_modules2.cwd, filename);
392
386
  return {
393
387
  ...opts,
394
388
  filename,
package/dist/config.js CHANGED
@@ -1,5 +1,12 @@
1
1
  "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.default = void 0;var _fs = _interopRequireDefault(require("fs"));
2
- var _lassoPackageRoot = require("lasso-package-root");
2
+
3
+ var _modules = require("../modules");
4
+
5
+
6
+
7
+
8
+
9
+
3
10
 
4
11
 
5
12
 
@@ -199,8 +206,7 @@ var _config = _interopRequireDefault(require("./taglib/config"));const config =
199
206
  * This API is sticking around for compatibility purposes.
200
207
  */meta: false, /**
201
208
  * Allows configuring Marko to compile to different runtimes.
202
- */translator: (() => {const translatorReg = /^(?:@marko\/|marko-)runtime-/;let translator;let pkg;try {pkg = (0, _lassoPackageRoot.getRootPackage)(process.cwd()); // eslint-disable-next-line no-empty
203
- } catch {}if (pkg) {for (const name in pkg.dependencies) {if (translatorReg.test(name)) {if (translator && translator !== name) {return;}translator = name;}}for (const name in pkg.peerDependencies) {if (translatorReg.test(name)) {if (translator && translator !== name) {return;}translator = name;}}for (const name in pkg.devDependencies) {if (translatorReg.test(name)) {if (translator && translator !== name) {return;}translator = name;}}}if (translator) {translator += "/translator";}return translator || "marko/translator";})(), /**
209
+ */translator: (() => {const translatorReg = /^(?:@marko\/|marko-)runtime-/;const translatorInterop = "@marko/translator-interop-class-tags";let translator;if (_modules.pkg) {if (_modules.pkg.dependencies?.[translatorInterop] || _modules.pkg.devDependencies?.[translatorInterop]) {return translatorInterop;}for (const name in _modules.pkg.dependencies) {if (translatorReg.test(name)) {if (translator && translator !== name) {return;}translator = name;}}for (const name in _modules.pkg.peerDependencies) {if (translatorReg.test(name)) {if (translator && translator !== name) {return;}translator = name;}}for (const name in _modules.pkg.devDependencies) {if (translatorReg.test(name)) {if (translator && translator !== name) {return;}translator = name;}}}if (translator) {translator += "/translator";}return translator || "marko/translator";})(), /**
204
210
  * Use a different file system object, eg webpacks CachedInputFileSystem or lasso-caching-fs
205
211
  */fileSystem: _fs.default, /**
206
212
  * By default Marko 5 outputs esm, you can optionally specify commonjs.
@@ -235,4 +241,4 @@ var _config = _interopRequireDefault(require("./taglib/config"));const config =
235
241
  * When the errorRecovery is true, any recoverable errors will be
236
242
  * returned in the `meta.diagnostics` property of the compile result.
237
243
  */errorRecovery: false, // When supplied, any diagnostics which have a fix specified in the lookup will be applied to the source code.
238
- applyFixes: undefined };if (process.env.MARKO_CONFIG) {Object.assign(config, JSON.parse(process.env.MARKO_CONFIG));}var _default = exports.default = config;_config.default.fs = config.fileSystem;
244
+ applyFixes: undefined };if (typeof process === "object" && typeof process.env === "object" && process.env.MARKO_CONFIG) {Object.assign(config, JSON.parse(process.env.MARKO_CONFIG));}var _default = exports.default = config;_config.default.fs = config.fileSystem;
@@ -72,7 +72,7 @@ function find(dirname, registeredTaglibs, tagDiscoveryDirs) {
72
72
  foundTaglibPackages: {}
73
73
  };
74
74
 
75
- var rootDirname = process.cwd(); // Don't search up past this directory
75
+ var rootDirname = markoModules.cwd; // Don't search up past this directory
76
76
  var rootPkg = getModuleRootPackage(dirname);
77
77
  if (rootPkg) {
78
78
  rootDirname = rootPkg.__dirname; // Use the package's root directory as the top-level directory
@@ -144,6 +144,9 @@ function resolveTaglib(id) {
144
144
  }
145
145
 
146
146
  function hasRootDependency(id) {
147
- const pkg = (0, _lassoPackageRoot.getRootPackage)(process.cwd());
148
- return !!(pkg && (pkg.dependencies?.[id] || pkg.devDependencies?.[id]));
147
+ return !!(
148
+ _modules.default.pkg && (
149
+ _modules.default.pkg.dependencies?.[id] ||
150
+ _modules.default.pkg.devDependencies?.[id]));
151
+
149
152
  }
@@ -2,8 +2,8 @@
2
2
  var _kleur = _interopRequireDefault(require("kleur"));
3
3
  var _path = _interopRequireDefault(require("path"));
4
4
 
5
+ var _modules = require("../../modules");
5
6
  var _stripAnsi = require("./strip-ansi");
6
- const CWD = process.cwd();
7
7
  const indent = " ";
8
8
 
9
9
  class CompileError extends Error {
@@ -102,7 +102,7 @@ function buildMessage(code, loc, message) {
102
102
  }
103
103
 
104
104
  function buildFileName(filename, loc) {
105
- return `${_kleur.default.cyan(_path.default.relative(CWD, filename))}${
105
+ return `${_kleur.default.cyan(_path.default.relative(_modules.cwd, filename))}${
106
106
  loc ?
107
107
  `:${_kleur.default.yellow(loc.start.line)}:${_kleur.default.yellow(loc.start.column + 1)}` :
108
108
  ""}`;
package/modules.js CHANGED
@@ -3,21 +3,28 @@
3
3
  if (process.env.BUNDLE || typeof document === "object") {
4
4
  exports.cwd = "/";
5
5
  exports.root = "/";
6
- exports.require = undefined;
7
- exports.resolve = undefined;
8
- exports.tryResolve = undefined;
6
+ exports.pkg = null;
7
+ exports.require = null;
8
+ exports.resolve = null;
9
+ exports.tryResolve = null;
9
10
  } else {
10
11
  const resolveFrom = require("resolve-from");
11
- const cwd = process.cwd();
12
- const root = (() => {
12
+ let cwd = "/";
13
+ let root = cwd;
14
+ let pkg = null;
15
+
16
+ if (typeof process === "object" && typeof process.cwd === "function") {
13
17
  try {
14
- return require("lasso-package-root").getRootDir(cwd) || cwd;
18
+ cwd = process.cwd();
19
+ pkg = require("lasso-package-root").getRootPackage(cwd);
20
+ if (pkg) root = pkg.__dirname;
15
21
  } catch {
16
- return cwd;
22
+ // ignore
17
23
  }
18
- })();
24
+ }
19
25
  exports.cwd = cwd;
20
26
  exports.root = root;
27
+ exports.pkg = pkg;
21
28
  exports.require = require;
22
29
  exports.resolve = (id, from) => {
23
30
  return resolveFrom(from || root, id);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@marko/compiler",
3
- "version": "5.39.23",
3
+ "version": "5.39.25",
4
4
  "description": "Marko template to JS compiler.",
5
5
  "keywords": [
6
6
  "babel",
@@ -87,7 +87,7 @@
87
87
  "source-map-support": "^0.5.21"
88
88
  },
89
89
  "devDependencies": {
90
- "marko": "^5.37.34"
90
+ "marko": "^5.37.36"
91
91
  },
92
92
  "engines": {
93
93
  "node": "18 || 20 || >=22"