UNPKG

alinea

Version:

[![npm](https://img.shields.io/npm/v/alinea.svg)](https://npmjs.org/package/alinea) [![install size](https://packagephobia.com/badge?p=alinea)](https://packagephobia.com/result?p=alinea)

724 lines (718 loc) 23.8 kB
import "../../chunks/chunk-U5RRZUYZ.js"; // src/cli/util/ExternalPlugin.ts import { dirname, normalize, relative } from "alinea/core/util/Paths"; // node_modules/get-tsconfig/dist/index.mjs import r from "path"; import $ from "fs"; import ue from "module"; // node_modules/resolve-pkg-maps/dist/index.mjs var A = (r2) => r2 !== null && typeof r2 == "object"; var a = (r2, t) => Object.assign(new Error(`[${r2}]: ${t}`), { code: r2 }); var _ = "ERR_INVALID_PACKAGE_CONFIG"; var E = "ERR_INVALID_PACKAGE_TARGET"; var I = "ERR_PACKAGE_PATH_NOT_EXPORTED"; var R = /^\d+$/; var O = /^(\.{1,2}|node_modules)$/i; var w = /\/|\\/; var h = ((r2) => (r2.Export = "exports", r2.Import = "imports", r2))(h || {}); var f = (r2, t, e, o, c) => { if (t == null) return []; if (typeof t == "string") { const [n, ...i] = t.split(w); if (n === ".." || i.some((l) => O.test(l))) throw a(E, `Invalid "${r2}" target "${t}" defined in the package config`); return [c ? t.replace(/\*/g, c) : t]; } if (Array.isArray(t)) return t.flatMap((n) => f(r2, n, e, o, c)); if (A(t)) { for (const n of Object.keys(t)) { if (R.test(n)) throw a(_, "Cannot contain numeric property keys"); if (n === "default" || o.includes(n)) return f(r2, t[n], e, o, c); } return []; } throw a(E, `Invalid "${r2}" target "${t}"`); }; var s = "*"; var m = (r2, t) => { const e = r2.indexOf(s), o = t.indexOf(s); return e === o ? t.length > r2.length : o > e; }; function d(r2, t) { if (!t.includes(s) && r2.hasOwnProperty(t)) return [t]; let e, o; for (const c of Object.keys(r2)) if (c.includes(s)) { const [n, i, l] = c.split(s); if (l === void 0 && t.startsWith(n) && t.endsWith(i)) { const g = t.slice(n.length, -i.length || void 0); g && (!e || m(e, c)) && (e = c, o = g); } } return [e, o]; } var p = (r2) => Object.keys(r2).reduce((t, e) => { const o = e === "" || e[0] !== "."; if (t === void 0 || t === o) return o; throw a(_, '"exports" cannot contain some keys starting with "." and some not'); }, void 0); var u = /^\w+:/; var v = (r2, t, e) => { if (!r2) throw new Error('"exports" is required'); t = t === "" ? "." : `./${t}`, (typeof r2 == "string" || Array.isArray(r2) || A(r2) && p(r2)) && (r2 = { ".": r2 }); const [o, c] = d(r2, t), n = f(h.Export, r2[o], t, e, c); if (n.length === 0) throw a(I, t === "." ? 'No "exports" main defined' : `Package subpath '${t}' is not defined by "exports"`); for (const i of n) if (!i.startsWith("./") && !u.test(i)) throw a(E, `Invalid "exports" target "${i}" defined in the package config`); return n; }; // node_modules/get-tsconfig/dist/index.mjs function U(e) { return e.startsWith("\\\\?\\") ? e : e.replace(/\\/g, "/"); } var Y = (e, s2) => { for (; ; ) { const i = r.posix.join(e, s2); if ($.existsSync(i)) return i; const n = r.dirname(e); if (n === e) return; e = n; } }; var V = /^\.{1,2}(\/.*)?$/; var P = (e) => U(V.test(e) ? e : `./${e}`); function re(e, s2 = false) { const i = e.length; let n = 0, t = "", l = 0, c = 16, a2 = 0, p2 = 0, L = 0, g = 0, T = 0; function k(o, f2) { let u2 = 0, E2 = 0; for (; u2 < o || !f2; ) { let O2 = e.charCodeAt(n); if (O2 >= 48 && O2 <= 57) E2 = E2 * 16 + O2 - 48; else if (O2 >= 65 && O2 <= 70) E2 = E2 * 16 + O2 - 65 + 10; else if (O2 >= 97 && O2 <= 102) E2 = E2 * 16 + O2 - 97 + 10; else break; n++, u2++; } return u2 < o && (E2 = -1), E2; } function j(o) { n = o, t = "", l = 0, c = 16, T = 0; } function w2() { let o = n; if (e.charCodeAt(n) === 48) n++; else for (n++; n < e.length && h2(e.charCodeAt(n)); ) n++; if (n < e.length && e.charCodeAt(n) === 46) if (n++, n < e.length && h2(e.charCodeAt(n))) for (n++; n < e.length && h2(e.charCodeAt(n)); ) n++; else return T = 3, e.substring(o, n); let f2 = n; if (n < e.length && (e.charCodeAt(n) === 69 || e.charCodeAt(n) === 101)) if (n++, (n < e.length && e.charCodeAt(n) === 43 || e.charCodeAt(n) === 45) && n++, n < e.length && h2(e.charCodeAt(n))) { for (n++; n < e.length && h2(e.charCodeAt(n)); ) n++; f2 = n; } else T = 3; return e.substring(o, f2); } function b() { let o = "", f2 = n; for (; ; ) { if (n >= i) { o += e.substring(f2, n), T = 2; break; } const u2 = e.charCodeAt(n); if (u2 === 34) { o += e.substring(f2, n), n++; break; } if (u2 === 92) { if (o += e.substring(f2, n), n++, n >= i) { T = 2; break; } switch (e.charCodeAt(n++)) { case 34: o += '"'; break; case 92: o += "\\"; break; case 47: o += "/"; break; case 98: o += "\b"; break; case 102: o += "\f"; break; case 110: o += ` `; break; case 114: o += "\r"; break; case 116: o += " "; break; case 117: const O2 = k(4, true); O2 >= 0 ? o += String.fromCharCode(O2) : T = 4; break; default: T = 5; } f2 = n; continue; } if (u2 >= 0 && u2 <= 31) if (F(u2)) { o += e.substring(f2, n), T = 2; break; } else T = 6; n++; } return o; } function A2() { if (t = "", T = 0, l = n, p2 = a2, g = L, n >= i) return l = i, c = 17; let o = e.charCodeAt(n); if (W(o)) { do n++, t += String.fromCharCode(o), o = e.charCodeAt(n); while (W(o)); return c = 15; } if (F(o)) return n++, t += String.fromCharCode(o), o === 13 && e.charCodeAt(n) === 10 && (n++, t += ` `), a2++, L = n, c = 14; switch (o) { case 123: return n++, c = 1; case 125: return n++, c = 2; case 91: return n++, c = 3; case 93: return n++, c = 4; case 58: return n++, c = 6; case 44: return n++, c = 5; case 34: return n++, t = b(), c = 10; case 47: const f2 = n - 1; if (e.charCodeAt(n + 1) === 47) { for (n += 2; n < i && !F(e.charCodeAt(n)); ) n++; return t = e.substring(f2, n), c = 12; } if (e.charCodeAt(n + 1) === 42) { n += 2; const u2 = i - 1; let E2 = false; for (; n < u2; ) { const O2 = e.charCodeAt(n); if (O2 === 42 && e.charCodeAt(n + 1) === 47) { n += 2, E2 = true; break; } n++, F(O2) && (O2 === 13 && e.charCodeAt(n) === 10 && n++, a2++, L = n); } return E2 || (n++, T = 1), t = e.substring(f2, n), c = 13; } return t += String.fromCharCode(o), n++, c = 16; case 45: if (t += String.fromCharCode(o), n++, n === i || !h2(e.charCodeAt(n))) return c = 16; case 48: case 49: case 50: case 51: case 52: case 53: case 54: case 55: case 56: case 57: return t += w2(), c = 11; default: for (; n < i && N(o); ) n++, o = e.charCodeAt(n); if (l !== n) { switch (t = e.substring(l, n), t) { case "true": return c = 8; case "false": return c = 9; case "null": return c = 7; } return c = 16; } return t += String.fromCharCode(o), n++, c = 16; } } function N(o) { if (W(o) || F(o)) return false; switch (o) { case 125: case 93: case 123: case 91: case 34: case 58: case 44: case 47: return false; } return true; } function _2() { let o; do o = A2(); while (o >= 12 && o <= 15); return o; } return { setPosition: j, getPosition: () => n, scan: s2 ? _2 : A2, getToken: () => c, getTokenValue: () => t, getTokenOffset: () => l, getTokenLength: () => n - l, getTokenStartLine: () => p2, getTokenStartCharacter: () => l - g, getTokenError: () => T }; } function W(e) { return e === 32 || e === 9; } function F(e) { return e === 10 || e === 13; } function h2(e) { return e >= 48 && e <= 57; } var Z; (function(e) { e[e.lineFeed = 10] = "lineFeed", e[e.carriageReturn = 13] = "carriageReturn", e[e.space = 32] = "space", e[e._0 = 48] = "_0", e[e._1 = 49] = "_1", e[e._2 = 50] = "_2", e[e._3 = 51] = "_3", e[e._4 = 52] = "_4", e[e._5 = 53] = "_5", e[e._6 = 54] = "_6", e[e._7 = 55] = "_7", e[e._8 = 56] = "_8", e[e._9 = 57] = "_9", e[e.a = 97] = "a", e[e.b = 98] = "b", e[e.c = 99] = "c", e[e.d = 100] = "d", e[e.e = 101] = "e", e[e.f = 102] = "f", e[e.g = 103] = "g", e[e.h = 104] = "h", e[e.i = 105] = "i", e[e.j = 106] = "j", e[e.k = 107] = "k", e[e.l = 108] = "l", e[e.m = 109] = "m", e[e.n = 110] = "n", e[e.o = 111] = "o", e[e.p = 112] = "p", e[e.q = 113] = "q", e[e.r = 114] = "r", e[e.s = 115] = "s", e[e.t = 116] = "t", e[e.u = 117] = "u", e[e.v = 118] = "v", e[e.w = 119] = "w", e[e.x = 120] = "x", e[e.y = 121] = "y", e[e.z = 122] = "z", e[e.A = 65] = "A", e[e.B = 66] = "B", e[e.C = 67] = "C", e[e.D = 68] = "D", e[e.E = 69] = "E", e[e.F = 70] = "F", e[e.G = 71] = "G", e[e.H = 72] = "H", e[e.I = 73] = "I", e[e.J = 74] = "J", e[e.K = 75] = "K", e[e.L = 76] = "L", e[e.M = 77] = "M", e[e.N = 78] = "N", e[e.O = 79] = "O", e[e.P = 80] = "P", e[e.Q = 81] = "Q", e[e.R = 82] = "R", e[e.S = 83] = "S", e[e.T = 84] = "T", e[e.U = 85] = "U", e[e.V = 86] = "V", e[e.W = 87] = "W", e[e.X = 88] = "X", e[e.Y = 89] = "Y", e[e.Z = 90] = "Z", e[e.asterisk = 42] = "asterisk", e[e.backslash = 92] = "backslash", e[e.closeBrace = 125] = "closeBrace", e[e.closeBracket = 93] = "closeBracket", e[e.colon = 58] = "colon", e[e.comma = 44] = "comma", e[e.dot = 46] = "dot", e[e.doubleQuote = 34] = "doubleQuote", e[e.minus = 45] = "minus", e[e.openBrace = 123] = "openBrace", e[e.openBracket = 91] = "openBracket", e[e.plus = 43] = "plus", e[e.slash = 47] = "slash", e[e.formFeed = 12] = "formFeed", e[e.tab = 9] = "tab"; })(Z || (Z = {})); var x; (function(e) { e.DEFAULT = { allowTrailingComma: false }; })(x || (x = {})); function pe(e, s2 = [], i = x.DEFAULT) { let n = null, t = []; const l = []; function c(p2) { Array.isArray(t) ? t.push(p2) : n !== null && (t[n] = p2); } return ge(e, { onObjectBegin: () => { const p2 = {}; c(p2), l.push(t), t = p2, n = null; }, onObjectProperty: (p2) => { n = p2; }, onObjectEnd: () => { t = l.pop(); }, onArrayBegin: () => { const p2 = []; c(p2), l.push(t), t = p2, n = null; }, onArrayEnd: () => { t = l.pop(); }, onLiteralValue: c, onError: (p2, L, g) => { s2.push({ error: p2, offset: L, length: g }); } }, i), t[0]; } function ge(e, s2, i = x.DEFAULT) { const n = re(e, false), t = []; function l(m2) { return m2 ? () => m2(n.getTokenOffset(), n.getTokenLength(), n.getTokenStartLine(), n.getTokenStartCharacter()) : () => true; } function c(m2) { return m2 ? () => m2(n.getTokenOffset(), n.getTokenLength(), n.getTokenStartLine(), n.getTokenStartCharacter(), () => t.slice()) : () => true; } function a2(m2) { return m2 ? (v2) => m2(v2, n.getTokenOffset(), n.getTokenLength(), n.getTokenStartLine(), n.getTokenStartCharacter()) : () => true; } function p2(m2) { return m2 ? (v2) => m2(v2, n.getTokenOffset(), n.getTokenLength(), n.getTokenStartLine(), n.getTokenStartCharacter(), () => t.slice()) : () => true; } const L = c(s2.onObjectBegin), g = p2(s2.onObjectProperty), T = l(s2.onObjectEnd), k = c(s2.onArrayBegin), j = l(s2.onArrayEnd), w2 = p2(s2.onLiteralValue), b = a2(s2.onSeparator), A2 = l(s2.onComment), N = a2(s2.onError), _2 = i && i.disallowComments, o = i && i.allowTrailingComma; function f2() { for (; ; ) { const m2 = n.scan(); switch (n.getTokenError()) { case 4: u2(14); break; case 5: u2(15); break; case 3: u2(13); break; case 1: _2 || u2(11); break; case 2: u2(12); break; case 6: u2(16); break; } switch (m2) { case 12: case 13: _2 ? u2(10) : A2(); break; case 16: u2(1); break; case 15: case 14: break; default: return m2; } } } function u2(m2, v2 = [], X = []) { if (N(m2), v2.length + X.length > 0) { let y = n.getToken(); for (; y !== 17; ) { if (v2.indexOf(y) !== -1) { f2(); break; } else if (X.indexOf(y) !== -1) break; y = f2(); } } } function E2(m2) { const v2 = n.getTokenValue(); return m2 ? w2(v2) : (g(v2), t.push(v2)), f2(), true; } function O2() { switch (n.getToken()) { case 11: const m2 = n.getTokenValue(); let v2 = Number(m2); isNaN(v2) && (u2(2), v2 = 0), w2(v2); break; case 7: w2(null); break; case 8: w2(true); break; case 9: w2(false); break; default: return false; } return f2(), true; } function oe() { return n.getToken() !== 10 ? (u2(3, [], [2, 5]), false) : (E2(false), n.getToken() === 6 ? (b(":"), f2(), S() || u2(4, [], [2, 5])) : u2(5, [], [2, 5]), t.pop(), true); } function le() { L(), f2(); let m2 = false; for (; n.getToken() !== 2 && n.getToken() !== 17; ) { if (n.getToken() === 5) { if (m2 || u2(4, [], []), b(","), f2(), n.getToken() === 2 && o) break; } else m2 && u2(6, [], []); oe() || u2(4, [], [2, 5]), m2 = true; } return T(), n.getToken() !== 2 ? u2(7, [2], []) : f2(), true; } function ce() { k(), f2(); let m2 = true, v2 = false; for (; n.getToken() !== 4 && n.getToken() !== 17; ) { if (n.getToken() === 5) { if (v2 || u2(4, [], []), b(","), f2(), n.getToken() === 4 && o) break; } else v2 && u2(6, [], []); m2 ? (t.push(0), m2 = false) : t[t.length - 1]++, S() || u2(4, [], [4, 5]), v2 = true; } return j(), m2 || t.pop(), n.getToken() !== 4 ? u2(8, [4], []) : f2(), true; } function S() { switch (n.getToken()) { case 3: return ce(); case 1: return le(); case 10: return E2(true); default: return O2(); } } return f2(), n.getToken() === 17 ? i.allowEmptyContent ? true : (u2(4, [], []), false) : S() ? (n.getToken() !== 17 && u2(9, [], []), true) : (u2(4, [], []), false); } var q; (function(e) { e[e.None = 0] = "None", e[e.UnexpectedEndOfComment = 1] = "UnexpectedEndOfComment", e[e.UnexpectedEndOfString = 2] = "UnexpectedEndOfString", e[e.UnexpectedEndOfNumber = 3] = "UnexpectedEndOfNumber", e[e.InvalidUnicode = 4] = "InvalidUnicode", e[e.InvalidEscapeCharacter = 5] = "InvalidEscapeCharacter", e[e.InvalidCharacter = 6] = "InvalidCharacter"; })(q || (q = {})); var d2; (function(e) { e[e.OpenBraceToken = 1] = "OpenBraceToken", e[e.CloseBraceToken = 2] = "CloseBraceToken", e[e.OpenBracketToken = 3] = "OpenBracketToken", e[e.CloseBracketToken = 4] = "CloseBracketToken", e[e.CommaToken = 5] = "CommaToken", e[e.ColonToken = 6] = "ColonToken", e[e.NullKeyword = 7] = "NullKeyword", e[e.TrueKeyword = 8] = "TrueKeyword", e[e.FalseKeyword = 9] = "FalseKeyword", e[e.StringLiteral = 10] = "StringLiteral", e[e.NumericLiteral = 11] = "NumericLiteral", e[e.LineCommentTrivia = 12] = "LineCommentTrivia", e[e.BlockCommentTrivia = 13] = "BlockCommentTrivia", e[e.LineBreakTrivia = 14] = "LineBreakTrivia", e[e.Trivia = 15] = "Trivia", e[e.Unknown = 16] = "Unknown", e[e.EOF = 17] = "EOF"; })(d2 || (d2 = {})); var me = pe; var K; (function(e) { e[e.InvalidSymbol = 1] = "InvalidSymbol", e[e.InvalidNumberFormat = 2] = "InvalidNumberFormat", e[e.PropertyNameExpected = 3] = "PropertyNameExpected", e[e.ValueExpected = 4] = "ValueExpected", e[e.ColonExpected = 5] = "ColonExpected", e[e.CommaExpected = 6] = "CommaExpected", e[e.CloseBraceExpected = 7] = "CloseBraceExpected", e[e.CloseBracketExpected = 8] = "CloseBracketExpected", e[e.EndOfFileExpected = 9] = "EndOfFileExpected", e[e.InvalidCommentToken = 10] = "InvalidCommentToken", e[e.UnexpectedEndOfComment = 11] = "UnexpectedEndOfComment", e[e.UnexpectedEndOfString = 12] = "UnexpectedEndOfString", e[e.UnexpectedEndOfNumber = 13] = "UnexpectedEndOfNumber", e[e.InvalidUnicode = 14] = "InvalidUnicode", e[e.InvalidEscapeCharacter = 15] = "InvalidEscapeCharacter", e[e.InvalidCharacter = 16] = "InvalidCharacter"; })(K || (K = {})); var C = (e) => me($.readFileSync(e, "utf8")); var { existsSync: B } = $; var ae = () => { const { findPnpApi: e } = ue; return e && e(process.cwd()); }; var J = (e, s2, i) => { let n = "tsconfig.json"; const t = C(e); if (t) if (!i && t.exports) try { const [l] = v(t.exports, s2, ["require", "types"]); n = l; } catch { return; } else !s2 && t.tsconfig && (n = t.tsconfig); return r.join(e, "..", n); }; var M = "package.json"; var R2 = "tsconfig.json"; var ke = (e, s2) => { let i = e; if (e === ".." && (i = r.join(i, R2)), e[0] === "." && (i = r.resolve(s2, i)), r.isAbsolute(i)) { if (B(i)) { if ($.statSync(i).isFile()) return i; } else if (!i.endsWith(".json")) { const k = `${i}.json`; if (B(k)) return k; } return; } const [n, ...t] = e.split("/"), l = n[0] === "@" ? `${n}/${t.shift()}` : n, c = t.join("/"), a2 = ae(); if (a2) { const { resolveRequest: k } = a2; try { if (l === e) { const j = k(r.join(l, M), s2); if (j) { const w2 = J(j, c); if (w2 && B(w2)) return w2; } } else { let j; try { j = k(e, s2, { extensions: [".json"] }); } catch { j = k(r.join(e, R2), s2); } if (j) return j; } } catch { } } const p2 = Y(s2, r.join("node_modules", l)); if (!p2 || !$.statSync(p2).isDirectory()) return; const L = r.join(p2, M); if (B(L)) { const k = J(L, c); if (!k) return; if (B(k)) return k; } const g = r.join(p2, c), T = g.endsWith(".json"); if (!T) { const k = `${g}.json`; if (B(k)) return k; } if (B(g)) { if ($.statSync(g).isDirectory()) { const k = r.join(g, M); if (B(k)) { const w2 = J(k, "", true); if (w2 && B(w2)) return w2; } const j = r.join(g, R2); if (B(j)) return j; } else if (T) return g; } }; var be = (e, s2) => { var i; const n = ke(e, s2); if (!n) throw new Error(`File '${e}' not found.`); const t = G(n); if (delete t.references, (i = t.compilerOptions) != null && i.baseUrl) { const { compilerOptions: l } = t; l.baseUrl = r.relative(s2, r.join(r.dirname(n), l.baseUrl)) || "./"; } return t.files && (t.files = t.files.map((l) => r.relative(s2, r.join(r.dirname(n), l)))), t.include && (t.include = t.include.map((l) => r.relative(s2, r.join(r.dirname(n), l)))), t; }; var G = (e) => { let s2; try { s2 = $.realpathSync(e); } catch { throw new Error(`Cannot resolve tsconfig at path: ${e}`); } const i = r.dirname(s2); let n = C(s2) || {}; if (typeof n != "object") throw new SyntaxError(`Failed to parse tsconfig at: ${e}`); if (n.extends) { const t = Array.isArray(n.extends) ? n.extends : [n.extends]; delete n.extends; for (const l of t.reverse()) { const c = be(l, i), a2 = { ...c, ...n, compilerOptions: { ...c.compilerOptions, ...n.compilerOptions } }; c.watchOptions && (a2.watchOptions = { ...c.watchOptions, ...n.watchOptions }), n = a2; } } if (n.compilerOptions) { const { compilerOptions: t } = n; t.baseUrl && (t.baseUrl = P(t.baseUrl)), t.outDir && (Array.isArray(n.exclude) || (n.exclude = []), n.exclude.push(t.outDir), t.outDir = P(t.outDir)); } else n.compilerOptions = {}; if (n.files && (n.files = n.files.map(P)), n.include && (n.include = n.include.map(U)), n.watchOptions) { const { watchOptions: t } = n; t.excludeDirectories && (t.excludeDirectories = t.excludeDirectories.map((l) => U(r.resolve(i, l)))); } return n; }; var Te = (e = process.cwd(), s2 = "tsconfig.json") => { const i = Y(U(e), s2); if (!i) return null; const n = G(i); return { path: i, config: n }; }; var we = /\*/g; var ee = (e, s2) => { const i = e.match(we); if (i && i.length > 1) throw new Error(s2); }; var Oe = (e) => { if (e.includes("*")) { const [s2, i] = e.split("*"); return { prefix: s2, suffix: i }; } return e; }; var ve = ({ prefix: e, suffix: s2 }, i) => i.startsWith(e) && i.endsWith(s2); var je = (e, s2, i) => Object.entries(e).map(([n, t]) => (ee(n, `Pattern '${n}' can have at most one '*' character.`), { pattern: Oe(n), substitutions: t.map((l) => { if (ee(l, `Substitution '${l}' in pattern '${n}' can have at most one '*' character.`), !s2 && !V.test(l)) throw new Error("Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?"); return r.join(i, l); }) })); var Ae = (e) => { if (!e.config.compilerOptions) return null; const { baseUrl: s2, paths: i } = e.config.compilerOptions; if (!s2 && !i) return null; const n = r.resolve(r.dirname(e.path), s2 || "."), t = i ? je(i, s2, n) : []; return (l) => { if (V.test(l)) return []; const c = []; for (const g of t) { if (g.pattern === l) return g.substitutions.map(U); typeof g.pattern != "string" && c.push(g); } let a2, p2 = -1; for (const g of c) ve(g.pattern, l) && g.pattern.prefix.length > p2 && (p2 = g.pattern.prefix.length, a2 = g); if (!a2) return s2 ? [U(r.join(n, l))] : []; const L = l.slice(a2.pattern.prefix.length, l.length - a2.pattern.suffix.length); return a2.substitutions.map((g) => U(g.replace("*", L))); }; }; var { join: D } = r.posix; var he = ["node_modules", "bower_components", "jspm_packages"]; var z = `(?!(${he.join("|")})(/|$))`; var se = process.platform === "win32"; // src/cli/util/ExternalPlugin.ts function externalPlugin(cwd) { return { name: "external", setup(build) { const tsConfig = Te(cwd); const rootDir = tsConfig && normalize(dirname(tsConfig.path)); const pathsMatcher = tsConfig && Ae(tsConfig); build.onResolve({ filter: /^[^\.].*/ }, async ({ path, ...args }) => { if (args.kind === "entry-point") return; const extern = { path, external: true }; if (!tsConfig || !rootDir || !pathsMatcher) return extern; const tryPaths = pathsMatcher(path); if (tryPaths.length === 0) return extern; for (const attempt of tryPaths) { const location = relative(rootDir, attempt); const resolved = await build.resolve(`./${location}`, { kind: args.kind, resolveDir: rootDir }); if (resolved.errors.length === 0) return resolved; } return extern; }); } }; } export { externalPlugin };