UNPKG

@stencil/core

Version:

A Compiler for Web Components and Progressive Web Apps

1,348 lines (1,304 loc) 223 kB
/*! Stencil Node System v2.18.0 | MIT Licensed | https://stenciljs.com */ function _interopDefaultLegacy(e) { return e && "object" == typeof e && "default" in e ? e : { default: e }; } function _interopNamespace(e) { if (e && e.__esModule) return e; var t = Object.create(null); return e && Object.keys(e).forEach((function(r) { if ("default" !== r) { var n = Object.getOwnPropertyDescriptor(e, r); Object.defineProperty(t, r, n.get ? n : { enumerable: !0, get: function() { return e[r]; } }); } })), t.default = e, t; } function createCommonjsModule(e, t, r) { return e(r = { path: t, exports: {}, require: function(e, t) { return function r() { throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs"); }(); } }, r.exports), r.exports; } async function nodeCopyTasks(e, t) { const r = { diagnostics: [], dirPaths: [], filePaths: [] }; try { i = await Promise.all(e.map((e => async function r(e, t) { return (e => { const t = { "{": "}", "(": ")", "[": "]" }, r = /\\(.)|(^!|\*|[\].+)]\?|\[[^\\\]]+\]|\{[^\\}]+\}|\(\?[:!=][^\\)]+\)|\([^|]+\|[^\\)]+\))/; if ("" === e) return !1; let n; for (;n = r.exec(e); ) { if (n[2]) return !0; let r = n.index + n[0].length; const i = n[1], s = i ? t[i] : null; if (i && s) { const t = e.indexOf(s, r); -1 !== t && (r = t + 1); } e = e.slice(r); } return !1; })(e.src) ? await async function r(e, t) { return (await asyncGlob(e.src, { cwd: t, nodir: !0 })).map((r => function n(e, t, r) { const n = path__default.default.join(e.dest, e.keepDirStructure ? r : path__default.default.basename(r)); return { src: path__default.default.join(t, r), dest: n, warn: e.warn, keepDirStructure: e.keepDirStructure }; }(e, t, r))); }(e, t) : [ { src: getSrcAbsPath(t, e.src), dest: e.keepDirStructure ? path__default.default.join(e.dest, e.src) : e.dest, warn: e.warn, keepDirStructure: e.keepDirStructure } ]; }(e, t)))), e = i.flat ? i.flat(1) : i.reduce(((e, t) => (e.push(...t), e)), []); const n = []; for (;e.length > 0; ) { const t = e.splice(0, 100); await Promise.all(t.map((e => processCopyTask(r, n, e)))); } const s = function n(e) { const t = []; return e.forEach((e => { !function r(e, t) { (t = normalizePath(t)) !== ROOT_DIR && t + "/" !== ROOT_DIR && "" !== t && (e.includes(t) || e.push(t)); }(t, path__default.default.dirname(e.dest)); })), t.sort(((e, t) => { const r = e.split("/").length, n = t.split("/").length; return r < n ? -1 : r > n ? 1 : e < t ? -1 : e > t ? 1 : 0; })), t; }(n); try { await Promise.all(s.map((e => mkdir(e, { recursive: !0 })))); } catch (e) {} for (;n.length > 0; ) { const e = n.splice(0, 100); await Promise.all(e.map((e => copyFile(e.src, e.dest)))); } } catch (e) { catchError(r.diagnostics, e); } var i; return r; } function getSrcAbsPath(e, t) { return path__default.default.isAbsolute(t) ? t : path__default.default.join(e, t); } async function processCopyTask(e, t, r) { try { r.src = normalizePath(r.src), r.dest = normalizePath(r.dest), (await stat(r.src)).isDirectory() ? (e.dirPaths.includes(r.dest) || e.dirPaths.push(r.dest), await async function n(e, t, r) { try { const n = await readdir(r.src); await Promise.all(n.map((async n => { const i = { src: path__default.default.join(r.src, n), dest: path__default.default.join(r.dest, n), warn: r.warn }; await processCopyTask(e, t, i); }))); } catch (t) { catchError(e.diagnostics, t); } }(e, t, r)) : function i(e) { return e = e.trim().toLowerCase(), IGNORE.some((t => e.endsWith(t))); }(r.src) || (e.filePaths.includes(r.dest) || e.filePaths.push(r.dest), t.push(r)); } catch (t) { if (!1 !== r.warn) { const r = buildError(e.diagnostics); t instanceof Error && (r.messageText = t.message); } } } function asyncGlob(e, t) { return new Promise(((r, n) => { (0, glob__default.default.glob)(e, t, ((e, t) => { e ? n(e) : r(t); })); })); } async function checkVersion(e, t) { try { const r = await async function r(e) { try { const e = await function t() { return new Promise((e => { fs__default.default.readFile(getLastCheckStoragePath(), "utf8", ((t, r) => { if (!t && isString(r)) try { e(JSON.parse(r)); } catch (e) {} e(null); })); })); }(); if (null == e) return setLastCheck(), null; if (!function r(e, t, n) { return t + n < e; }(Date.now(), e, 6048e5)) return null; const t = setLastCheck(), r = await async function n(e) { const t = await Promise.resolve().then((function() { return _interopNamespace(require("https")); })); return new Promise(((r, n) => { const i = t.request(e, (t => { if (t.statusCode > 299) return void n(`url: ${e}, staus: ${t.statusCode}`); t.once("error", n); const i = []; t.once("end", (() => { r(i.join("")); })), t.on("data", (e => { i.push(e); })); })); i.once("error", n), i.end(); })); }(REGISTRY_URL), n = JSON.parse(r); return await t, n["dist-tags"].latest; } catch (t) { e.debug(`getLatestCompilerVersion error: ${t}`); } return null; }(e); if (null != r) return () => { lt_1(t, r) ? function n(e, t, r) { const n = "npm install @stencil/core", i = [ `Update available: ${t} ${ARROW} ${r}`, "To get the latest, please run:", n, CHANGELOG ], s = i.reduce(((e, t) => t.length > e ? t.length : e), 0), o = []; let a = BOX_TOP_LEFT; for (;a.length <= s + 2 * PADDING; ) a += BOX_HORIZONTAL; a += BOX_TOP_RIGHT, o.push(a), i.forEach((e => { let t = BOX_VERTICAL; for (let e = 0; e < PADDING; e++) t += " "; for (t += e; t.length <= s + 2 * PADDING; ) t += " "; t += BOX_VERTICAL, o.push(t); })); let l = BOX_BOTTOM_LEFT; for (;l.length <= s + 2 * PADDING; ) l += BOX_HORIZONTAL; l += BOX_BOTTOM_RIGHT, o.push(l); let c = `${INDENT}${o.join(`\n${INDENT}`)}\n`; c = c.replace(t, e.red(t)), c = c.replace(r, e.green(r)), c = c.replace(n, e.cyan(n)), c = c.replace(CHANGELOG, e.dim(CHANGELOG)), console.log(c); }(e, t, r) : console.debug(`${e.cyan("@stencil/core")} version ${e.green(t)} is the latest version`); }; } catch (t) { e.debug(`unable to load latest compiler version: ${t}`); } return noop; } function setLastCheck() { return new Promise((e => { const t = JSON.stringify(Date.now()); fs__default.default.writeFile(getLastCheckStoragePath(), t, (() => { e(); })); })); } function getLastCheckStoragePath() { return path__default.default.join(require$$6.tmpdir(), "stencil_last_version_node.json"); } function Yallist(e) { var t, r, n = this; if (n instanceof Yallist || (n = new Yallist), n.tail = null, n.head = null, n.length = 0, e && "function" == typeof e.forEach) e.forEach((function(e) { n.push(e); })); else if (arguments.length > 0) for (t = 0, r = arguments.length; t < r; t++) n.push(arguments[t]); return n; } function insert(e, t, r) { var n = t === e.head ? new Node(r, null, t, e) : new Node(r, t, t.next, e); return null === n.next && (e.tail = n), null === n.prev && (e.head = n), e.length++, n; } function push(e, t) { e.tail = new Node(t, e.tail, null, e), e.head || (e.head = e.tail), e.length++; } function unshift(e, t) { e.head = new Node(t, null, e.head, e), e.tail || (e.tail = e.head), e.length++; } function Node(e, t, r, n) { if (!(this instanceof Node)) return new Node(e, t, r, n); this.list = n, this.value = e, t ? (t.next = this, this.prev = t) : this.prev = null, r ? (r.prev = this, this.next = r) : this.next = null; } function getNextWorker(e) { const t = e.filter((e => !e.stopped)); return 0 === t.length ? null : t.sort(((e, t) => e.tasks.size < t.tasks.size ? -1 : e.tasks.size > t.tasks.size ? 1 : e.totalTasksAssigned < t.totalTasksAssigned ? -1 : e.totalTasksAssigned > t.totalTasksAssigned ? 1 : 0))[0]; } var symbols, ansiColors, create_1, debug_1, constants, re_1, parseOptions_1, identifiers, semver, compare_1, lt_1, exit, lockfile, iterator, yallist, lruCache, eq_1, neq_1, gt_1, gte_1, lte_1, cmp_1, comparator, range, satisfies_1, major_1; Object.defineProperty(exports, "__esModule", { value: !0 }); const fs = require("./graceful-fs.js"), path = require("path"), require$$1 = require("util"), glob = require("./glob.js"), require$$6 = require("os"), require$$3 = require("crypto"), require$$2 = require("fs"), require$$4 = require("stream"), require$$5 = require("assert"), require$$7 = require("events"), require$$8 = require("buffer"), require$$9 = require("tty"), cp = require("child_process"), fs__default = _interopDefaultLegacy(fs), path__default = _interopDefaultLegacy(path), require$$1__default = _interopDefaultLegacy(require$$1), glob__default = _interopDefaultLegacy(glob), require$$6__default = _interopDefaultLegacy(require$$6), require$$6__namespace = _interopNamespace(require$$6), require$$3__default = _interopDefaultLegacy(require$$3), require$$2__default = _interopDefaultLegacy(require$$2), require$$4__default = _interopDefaultLegacy(require$$4), require$$5__default = _interopDefaultLegacy(require$$5), require$$7__default = _interopDefaultLegacy(require$$7), require$$8__default = _interopDefaultLegacy(require$$8), require$$9__default = _interopDefaultLegacy(require$$9), cp__namespace = _interopNamespace(cp), LOG_LEVELS = [ "debug", "info", "warn", "error" ]; symbols = createCommonjsModule((function(e) { const t = "Hyper" === process.env.TERM_PROGRAM, r = "win32" === process.platform, n = "linux" === process.platform, i = { ballotDisabled: "☒", ballotOff: "☐", ballotOn: "☑", bullet: "•", bulletWhite: "◦", fullBlock: "█", heart: "❤", identicalTo: "≡", line: "─", mark: "※", middot: "·", minus: "-", multiplication: "×", obelus: "÷", pencilDownRight: "✎", pencilRight: "✏", pencilUpRight: "✐", percent: "%", pilcrow2: "❡", pilcrow: "¶", plusMinus: "±", section: "§", starsOff: "☆", starsOn: "★", upDownArrow: "↕" }, s = Object.assign({}, i, { check: "√", cross: "×", ellipsisLarge: "...", ellipsis: "...", info: "i", question: "?", questionSmall: "?", pointer: ">", pointerSmall: "»", radioOff: "( )", radioOn: "(*)", warning: "‼" }), o = Object.assign({}, i, { ballotCross: "✘", check: "✔", cross: "✖", ellipsisLarge: "⋯", ellipsis: "…", info: "ℹ", question: "?", questionFull: "?", questionSmall: "﹖", pointer: n ? "▸" : "❯", pointerSmall: n ? "‣" : "›", radioOff: "◯", radioOn: "◉", warning: "⚠" }); e.exports = r && !t ? s : o, Reflect.defineProperty(e.exports, "common", { enumerable: !1, value: i }), Reflect.defineProperty(e.exports, "windows", { enumerable: !1, value: s }), Reflect.defineProperty(e.exports, "other", { enumerable: !1, value: o }); })); const ANSI_REGEX = /[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g, create = () => { const e = { enabled: !0, visible: !0, styles: {}, keys: {} }; "FORCE_COLOR" in process.env && (e.enabled = "0" !== process.env.FORCE_COLOR); const t = (e, t, r) => "function" == typeof e ? e(t) : e.wrap(t, r), r = (r, n) => { if ("" === r || null == r) return ""; if (!1 === e.enabled) return r; if (!1 === e.visible) return ""; let i = "" + r, s = i.includes("\n"), o = n.length; for (o > 0 && n.includes("unstyle") && (n = [ ...new Set([ "unstyle", ...n ]) ].reverse()); o-- > 0; ) i = t(e.styles[n[o]], i, s); return i; }, n = (t, n, i) => { e.styles[t] = (e => { let t = e.open = `[${e.codes[0]}m`, r = e.close = `[${e.codes[1]}m`, n = e.regex = new RegExp(`\\u001b\\[${e.codes[1]}m`, "g"); return e.wrap = (e, i) => { e.includes(r) && (e = e.replace(n, r + t)); let s = t + e + r; return i ? s.replace(/\r*\n/g, `${r}$&${t}`) : s; }, e; })({ name: t, codes: n }), (e.keys[i] || (e.keys[i] = [])).push(t), Reflect.defineProperty(e, t, { configurable: !0, enumerable: !0, set(r) { e.alias(t, r); }, get() { let n = e => r(e, n.stack); return Reflect.setPrototypeOf(n, e), n.stack = this.stack ? this.stack.concat(t) : [ t ], n; } }); }; return n("reset", [ 0, 0 ], "modifier"), n("bold", [ 1, 22 ], "modifier"), n("dim", [ 2, 22 ], "modifier"), n("italic", [ 3, 23 ], "modifier"), n("underline", [ 4, 24 ], "modifier"), n("inverse", [ 7, 27 ], "modifier"), n("hidden", [ 8, 28 ], "modifier"), n("strikethrough", [ 9, 29 ], "modifier"), n("black", [ 30, 39 ], "color"), n("red", [ 31, 39 ], "color"), n("green", [ 32, 39 ], "color"), n("yellow", [ 33, 39 ], "color"), n("blue", [ 34, 39 ], "color"), n("magenta", [ 35, 39 ], "color"), n("cyan", [ 36, 39 ], "color"), n("white", [ 37, 39 ], "color"), n("gray", [ 90, 39 ], "color"), n("grey", [ 90, 39 ], "color"), n("bgBlack", [ 40, 49 ], "bg"), n("bgRed", [ 41, 49 ], "bg"), n("bgGreen", [ 42, 49 ], "bg"), n("bgYellow", [ 43, 49 ], "bg"), n("bgBlue", [ 44, 49 ], "bg"), n("bgMagenta", [ 45, 49 ], "bg"), n("bgCyan", [ 46, 49 ], "bg"), n("bgWhite", [ 47, 49 ], "bg"), n("blackBright", [ 90, 39 ], "bright"), n("redBright", [ 91, 39 ], "bright"), n("greenBright", [ 92, 39 ], "bright"), n("yellowBright", [ 93, 39 ], "bright"), n("blueBright", [ 94, 39 ], "bright"), n("magentaBright", [ 95, 39 ], "bright"), n("cyanBright", [ 96, 39 ], "bright"), n("whiteBright", [ 97, 39 ], "bright"), n("bgBlackBright", [ 100, 49 ], "bgBright"), n("bgRedBright", [ 101, 49 ], "bgBright"), n("bgGreenBright", [ 102, 49 ], "bgBright"), n("bgYellowBright", [ 103, 49 ], "bgBright"), n("bgBlueBright", [ 104, 49 ], "bgBright"), n("bgMagentaBright", [ 105, 49 ], "bgBright"), n("bgCyanBright", [ 106, 49 ], "bgBright"), n("bgWhiteBright", [ 107, 49 ], "bgBright"), e.ansiRegex = ANSI_REGEX, e.hasColor = e.hasAnsi = t => (e.ansiRegex.lastIndex = 0, "string" == typeof t && "" !== t && e.ansiRegex.test(t)), e.alias = (t, n) => { let i = "string" == typeof n ? e[n] : n; if ("function" != typeof i) throw new TypeError("Expected alias to be the name of an existing color (string) or a function"); i.stack || (Reflect.defineProperty(i, "name", { value: t }), e.styles[t] = i, i.stack = [ t ]), Reflect.defineProperty(e, t, { configurable: !0, enumerable: !0, set(r) { e.alias(t, r); }, get() { let t = e => r(e, t.stack); return Reflect.setPrototypeOf(t, e), t.stack = this.stack ? this.stack.concat(i.stack) : i.stack, t; } }); }, e.theme = t => { if (null === (r = t) || "object" != typeof r || Array.isArray(r)) throw new TypeError("Expected theme to be an object"); var r; for (let r of Object.keys(t)) e.alias(r, t[r]); return e; }, e.alias("unstyle", (t => "string" == typeof t && "" !== t ? (e.ansiRegex.lastIndex = 0, t.replace(e.ansiRegex, "")) : "")), e.alias("noop", (e => e)), e.none = e.clear = e.noop, e.stripColor = e.unstyle, e.symbols = symbols, e.define = n, e; }; ansiColors = create(), create_1 = create, ansiColors.create = create_1; const createTerminalLogger = e => { let t = "info", r = null; const n = [], i = e => { if (e.length > 0) { const t = formatPrefixTimestamp(); e[0] = ansiColors.dim(t) + e[0].slice(t.length); } }, s = e => { if (e.length) { const t = "[ WARN ]"; e[0] = ansiColors.bold(ansiColors.yellow(t)) + e[0].slice(t.length); } }, o = e => { if (e.length) { const t = "[ ERROR ]"; e[0] = ansiColors.bold(ansiColors.red(t)) + e[0].slice(t.length); } }, a = e => { if (e.length) { const t = formatPrefixTimestamp(); e[0] = ansiColors.cyan(t) + e[0].slice(t.length); } }, l = t => { const r = e.memoryUsage(); r > 0 && t.push(ansiColors.dim(` MEM: ${(r / 1e6).toFixed(1)}MB`)); }, c = (t, i) => { if (r) { const r = new Date, s = ("0" + r.getHours()).slice(-2) + ":" + ("0" + r.getMinutes()).slice(-2) + ":" + ("0" + r.getSeconds()).slice(-2) + ".0" + Math.floor(r.getMilliseconds() / 1e3 * 10) + " " + ("000" + (e.memoryUsage() / 1e6).toFixed(1)).slice(-6) + "MB " + t + " " + i.join(", "); n.push(s); } }, u = (t, r, n) => { let i = t.length - r + n - 1; for (;t.length + INDENT$1.length > e.getColumns(); ) if (r > t.length - r + n && r > 5) t = t.slice(1), r--; else { if (!(i > 1)) break; t = t.slice(0, -1), i--; } const s = [], o = Math.max(t.length, r + n); for (let e = 0; e < o; e++) { let i = t.charAt(e); e >= r && e < r + n && (i = ansiColors.bgRed("" === i ? " " : i)), s.push(i); } return s.join(""); }, f = e => e.trim().startsWith("//") ? ansiColors.dim(e) : e.split(" ").map((e => JS_KEYWORDS.indexOf(e) > -1 ? ansiColors.cyan(e) : e)).join(" "), h = e => { let t = !0; const r = []; for (let n = 0; n < e.length; n++) { const i = e.charAt(n); ";" === i || "{" === i ? t = !0 : ".#,:}@$[]/*".indexOf(i) > -1 && (t = !1), t && "abcdefghijklmnopqrstuvwxyz-_".indexOf(i.toLowerCase()) > -1 ? r.push(ansiColors.cyan(i)) : r.push(i); } return r.join(""); }; return { createLineUpdater: e.createLineUpdater, createTimeSpan: (r, n = !1, s) => { const o = Date.now(), u = () => Date.now() - o, f = { duration: u, finish: (r, o, f, h) => { const p = u(); let d; return d = p > 1e3 ? "in " + (p / 1e3).toFixed(2) + " s" : parseFloat(p.toFixed(3)) > 0 ? "in " + p + " ms" : "in less than 1 ms", ((r, n, s, o, u, f, h) => { let p = r; if (s && (p = ansiColors[s](r)), o && (p = ansiColors.bold(p)), p += " " + ansiColors.dim(n), f) { if (shouldLog(t, "debug")) { const t = [ p ]; l(t); const r = wordWrap(t, e.getColumns()); a(r), console.log(r.join("\n")); } c("D", [ `${r} ${n}` ]); } else { const t = wordWrap([ p ], e.getColumns()); i(t), console.log(t.join("\n")), c("I", [ `${r} ${n}` ]), h && h.push(`${r} ${n}`); } u && console.log(""); })(r, d, o, f, h, n, s), p; } }; return ((r, n, s) => { const o = [ `${r} ${ansiColors.dim("...")}` ]; if (n) { if (shouldLog(t, "debug")) { l(o); const t = wordWrap(o, e.getColumns()); a(t), console.log(t.join("\n")), c("D", [ `${r} ...` ]); } } else { const t = wordWrap(o, e.getColumns()); i(t), console.log(t.join("\n")), c("I", [ `${r} ...` ]), s && s.push(`${r} ...`); } })(r, n, s), f; }, debug: (...r) => { if (shouldLog(t, "debug")) { l(r); const t = wordWrap(r, e.getColumns()); a(t), console.log(t.join("\n")); } c("D", r); }, emoji: e.emoji, enableColors: e => { ansiColors.enabled = e; }, error: (...r) => { for (let e = 0; e < r.length; e++) if (r[e] instanceof Error) { const t = r[e]; r[e] = t.message, t.stack && (r[e] += "\n" + t.stack); } if (shouldLog(t, "error")) { const t = wordWrap(r, e.getColumns()); o(t), console.error("\n" + t.join("\n") + "\n"); } c("E", r); }, getLevel: () => t, info: (...r) => { if (shouldLog(t, "info")) { const t = wordWrap(r, e.getColumns()); i(t), console.log(t.join("\n")); } c("I", r); }, printDiagnostics: (r, n) => { if (!r || 0 === r.length) return; let l = [ "" ]; r.forEach((r => { l = l.concat(((r, n) => { const l = wordWrap([ r.messageText ], e.getColumns()); let c = ""; r.header && "Build Error" !== r.header && (c += r.header), "string" == typeof r.absFilePath && "string" != typeof r.relFilePath && ("string" != typeof n && (n = e.cwd()), r.relFilePath = e.relativePath(n, r.absFilePath), r.relFilePath.includes("/") || (r.relFilePath = "./" + r.relFilePath)); let p = r.relFilePath; return "string" != typeof p && (p = r.absFilePath), "string" == typeof p && (c.length > 0 && (c += ": "), c += ansiColors.cyan(p), "number" == typeof r.lineNumber && r.lineNumber > -1 && (c += ansiColors.dim(":"), c += ansiColors.yellow(`${r.lineNumber}`), "number" == typeof r.columnNumber && r.columnNumber > -1 && (c += ansiColors.dim(":"), c += ansiColors.yellow(`${r.columnNumber}`)))), c.length > 0 && l.unshift(INDENT$1 + c), l.push(""), r.lines && r.lines.length && (removeLeadingWhitespace(r.lines).forEach((e => { if (!isMeaningfulLine(e.text)) return; let t = ""; for (e.lineNumber > -1 && (t = `L${e.lineNumber}: `); t.length < INDENT$1.length; ) t = " " + t; let n = e.text; e.errorCharStart > -1 && (n = u(n, e.errorCharStart, e.errorLength)), t = ansiColors.dim(t), "typescript" === r.language || "javascript" === r.language ? t += f(n) : "scss" === r.language || "css" === r.language ? t += h(n) : t += n, l.push(t); })), l.push("")), "error" === r.level ? o(l) : "warn" === r.level ? s(l) : "debug" === r.level ? a(l) : i(l), null != r.debugText && "debug" === t && (l.push(r.debugText), a(wordWrap([ r.debugText ], e.getColumns()))), l; })(r, n)); })), console.log(l.join("\n")); }, setLevel: e => t = e, setLogFilePath: e => r = e, warn: (...r) => { if (shouldLog(t, "warn")) { const t = wordWrap(r, e.getColumns()); s(t), console.warn("\n" + t.join("\n") + "\n"); } c("W", r); }, writeLogs: t => { if (r) try { c("F", [ "--------------------------------------" ]), e.writeLogs(r, n.join("\n"), t); } catch (e) {} n.length = 0; }, bgRed: ansiColors.bgRed, blue: ansiColors.blue, bold: ansiColors.bold, cyan: ansiColors.cyan, dim: ansiColors.dim, gray: ansiColors.gray, green: ansiColors.green, magenta: ansiColors.magenta, red: ansiColors.red, yellow: ansiColors.yellow }; }, shouldLog = (e, t) => LOG_LEVELS.indexOf(t) >= LOG_LEVELS.indexOf(e), formatPrefixTimestamp = () => { const e = new Date; return `[${clampTwoDigits(e.getMinutes())}:${clampTwoDigits(e.getSeconds())}.${Math.floor(e.getMilliseconds() / 1e3 * 10)}]`; }, clampTwoDigits = e => ("0" + e.toString()).slice(-2), wordWrap = (e, t) => { const r = [], n = []; e.forEach((e => { null === e ? n.push("null") : void 0 === e ? n.push("undefined") : "string" == typeof e ? e.replace(/\s/gm, " ").split(" ").forEach((e => { e.trim().length && n.push(e.trim()); })) : "number" == typeof e || "boolean" == typeof e || "function" == typeof e ? n.push(e.toString()) : Array.isArray(e) || Object(e) === e ? n.push((() => e.toString())) : n.push(e.toString()); })); let i = INDENT$1; return n.forEach((e => { r.length > 25 || ("function" == typeof e ? (i.trim().length && r.push(i), r.push(e()), i = INDENT$1) : INDENT$1.length + e.length > t - 1 ? (i.trim().length && r.push(i), r.push(INDENT$1 + e), i = INDENT$1) : e.length + i.length > t - 1 ? (r.push(i), i = INDENT$1 + e + " ") : i += e + " "); })), i.trim().length && r.push(i), r.map((e => e.trimRight())); }, removeLeadingWhitespace = e => { const t = JSON.parse(JSON.stringify(e)); for (let e = 0; e < 100; e++) { if (!eachLineHasLeadingWhitespace(t)) return t; for (let e = 0; e < t.length; e++) if (t[e].text = t[e].text.slice(1), t[e].errorCharStart--, !t[e].text.length) return t; } return t; }, eachLineHasLeadingWhitespace = e => { if (!e.length) return !1; for (let t = 0; t < e.length; t++) { if (!e[t].text || e[t].text.length < 1) return !1; const r = e[t].text.charAt(0); if (" " !== r && "\t" !== r) return !1; } return !0; }, isMeaningfulLine = e => !!e && (e = e.trim()).length > 0, JS_KEYWORDS = [ "abstract", "any", "as", "break", "boolean", "case", "catch", "class", "console", "const", "continue", "debugger", "declare", "default", "delete", "do", "else", "enum", "export", "extends", "false", "finally", "for", "from", "function", "get", "if", "import", "in", "implements", "Infinity", "instanceof", "let", "module", "namespace", "NaN", "new", "number", "null", "public", "private", "protected", "require", "return", "static", "set", "string", "super", "switch", "this", "throw", "try", "true", "type", "typeof", "undefined", "var", "void", "with", "while", "yield" ], INDENT$1 = " ", noop = () => {}, isString = e => "string" == typeof e, buildError = e => { const t = { level: "error", type: "build", header: "Build Error", messageText: "build error", relFilePath: null, absFilePath: null, lines: [] }; return e && e.push(t), t; }, catchError = (e, t, r) => { const n = { level: "error", type: "build", header: "Build Error", messageText: "build error", relFilePath: null, absFilePath: null, lines: [] }; return isString(r) ? n.messageText = r.length ? r : "UNKNOWN ERROR" : null != t && (null != t.stack ? n.messageText = t.stack.toString() : null != t.message ? n.messageText = t.message.length ? t.message : "UNKNOWN ERROR" : n.messageText = t.toString()), null == e || shouldIgnoreError(n.messageText) || e.push(n), n; }, shouldIgnoreError = e => e === TASK_CANCELED_MSG, TASK_CANCELED_MSG = "task canceled", normalizePath = e => { if ("string" != typeof e) throw new Error("invalid path to normalize"); e = normalizeSlashes(e.trim()); const t = pathComponents(e, getRootLength(e)), r = reducePathComponents(t), n = r[0], i = r[1], s = n + r.slice(1).join("/"); return "" === s ? "." : "" === n && i && e.includes("/") && !i.startsWith(".") && !i.startsWith("@") ? "./" + s : s; }, normalizeSlashes = e => e.replace(backslashRegExp, "/"), backslashRegExp = /\\/g, reducePathComponents = e => { if (!Array.isArray(e) || 0 === e.length) return []; const t = [ e[0] ]; for (let r = 1; r < e.length; r++) { const n = e[r]; if (n && "." !== n) { if (".." === n) if (t.length > 1) { if (".." !== t[t.length - 1]) { t.pop(); continue; } } else if (t[0]) continue; t.push(n); } } return t; }, getRootLength = e => { const t = getEncodedRootLength(e); return t < 0 ? ~t : t; }, getEncodedRootLength = e => { if (!e) return 0; const t = e.charCodeAt(0); if (47 === t || 92 === t) { if (e.charCodeAt(1) !== t) return 1; const r = e.indexOf(47 === t ? "/" : "\\", 2); return r < 0 ? e.length : r + 1; } if (isVolumeCharacter(t) && 58 === e.charCodeAt(1)) { const t = e.charCodeAt(2); if (47 === t || 92 === t) return 3; if (2 === e.length) return 2; } const r = e.indexOf("://"); if (-1 !== r) { const t = r + "://".length, n = e.indexOf("/", t); if (-1 !== n) { const i = e.slice(0, r), s = e.slice(t, n); if ("file" === i && ("" === s || "localhost" === s) && isVolumeCharacter(e.charCodeAt(n + 1))) { const t = getFileUrlVolumeSeparatorEnd(e, n + 2); if (-1 !== t) { if (47 === e.charCodeAt(t)) return ~(t + 1); if (t === e.length) return ~t; } } return ~(n + 1); } return ~e.length; } return 0; }, isVolumeCharacter = e => e >= 97 && e <= 122 || e >= 65 && e <= 90, getFileUrlVolumeSeparatorEnd = (e, t) => { const r = e.charCodeAt(t); if (58 === r) return t + 1; if (37 === r && 51 === e.charCodeAt(t + 1)) { const r = e.charCodeAt(t + 2); if (97 === r || 65 === r) return t + 3; } return -1; }, pathComponents = (e, t) => { const r = e.substring(0, t), n = e.substring(t).split("/"), i = n.length; return i > 0 && !n[i - 1] && n.pop(), [ r, ...n ]; }, copyFile = require$$1.promisify(fs__default.default.copyFile), mkdir = require$$1.promisify(fs__default.default.mkdir), readdir = require$$1.promisify(fs__default.default.readdir); require$$1.promisify(fs__default.default.readFile); const stat = require$$1.promisify(fs__default.default.stat), ROOT_DIR = normalizePath(path__default.default.resolve("/")), IGNORE = [ ".ds_store", ".gitignore", "desktop.ini", "thumbs.db" ], debug = "object" == typeof process && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...e) => console.error("SEMVER", ...e) : () => {}; debug_1 = debug; const MAX_SAFE_INTEGER$1 = Number.MAX_SAFE_INTEGER || 9007199254740991; constants = { SEMVER_SPEC_VERSION: "2.0.0", MAX_LENGTH: 256, MAX_SAFE_INTEGER: MAX_SAFE_INTEGER$1, MAX_SAFE_COMPONENT_LENGTH: 16 }, re_1 = createCommonjsModule((function(e, t) { const {MAX_SAFE_COMPONENT_LENGTH: r} = constants, n = (t = e.exports = {}).re = [], i = t.src = [], s = t.t = {}; let o = 0; const a = (e, t, r) => { const a = o++; debug_1(a, t), s[e] = a, i[a] = t, n[a] = new RegExp(t, r ? "g" : void 0); }; a("NUMERICIDENTIFIER", "0|[1-9]\\d*"), a("NUMERICIDENTIFIERLOOSE", "[0-9]+"), a("NONNUMERICIDENTIFIER", "\\d*[a-zA-Z-][a-zA-Z0-9-]*"), a("MAINVERSION", `(${i[s.NUMERICIDENTIFIER]})\\.(${i[s.NUMERICIDENTIFIER]})\\.(${i[s.NUMERICIDENTIFIER]})`), a("MAINVERSIONLOOSE", `(${i[s.NUMERICIDENTIFIERLOOSE]})\\.(${i[s.NUMERICIDENTIFIERLOOSE]})\\.(${i[s.NUMERICIDENTIFIERLOOSE]})`), a("PRERELEASEIDENTIFIER", `(?:${i[s.NUMERICIDENTIFIER]}|${i[s.NONNUMERICIDENTIFIER]})`), a("PRERELEASEIDENTIFIERLOOSE", `(?:${i[s.NUMERICIDENTIFIERLOOSE]}|${i[s.NONNUMERICIDENTIFIER]})`), a("PRERELEASE", `(?:-(${i[s.PRERELEASEIDENTIFIER]}(?:\\.${i[s.PRERELEASEIDENTIFIER]})*))`), a("PRERELEASELOOSE", `(?:-?(${i[s.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${i[s.PRERELEASEIDENTIFIERLOOSE]})*))`), a("BUILDIDENTIFIER", "[0-9A-Za-z-]+"), a("BUILD", `(?:\\+(${i[s.BUILDIDENTIFIER]}(?:\\.${i[s.BUILDIDENTIFIER]})*))`), a("FULLPLAIN", `v?${i[s.MAINVERSION]}${i[s.PRERELEASE]}?${i[s.BUILD]}?`), a("FULL", `^${i[s.FULLPLAIN]}$`), a("LOOSEPLAIN", `[v=\\s]*${i[s.MAINVERSIONLOOSE]}${i[s.PRERELEASELOOSE]}?${i[s.BUILD]}?`), a("LOOSE", `^${i[s.LOOSEPLAIN]}$`), a("GTLT", "((?:<|>)?=?)"), a("XRANGEIDENTIFIERLOOSE", `${i[s.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`), a("XRANGEIDENTIFIER", `${i[s.NUMERICIDENTIFIER]}|x|X|\\*`), a("XRANGEPLAIN", `[v=\\s]*(${i[s.XRANGEIDENTIFIER]})(?:\\.(${i[s.XRANGEIDENTIFIER]})(?:\\.(${i[s.XRANGEIDENTIFIER]})(?:${i[s.PRERELEASE]})?${i[s.BUILD]}?)?)?`), a("XRANGEPLAINLOOSE", `[v=\\s]*(${i[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${i[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${i[s.XRANGEIDENTIFIERLOOSE]})(?:${i[s.PRERELEASELOOSE]})?${i[s.BUILD]}?)?)?`), a("XRANGE", `^${i[s.GTLT]}\\s*${i[s.XRANGEPLAIN]}$`), a("XRANGELOOSE", `^${i[s.GTLT]}\\s*${i[s.XRANGEPLAINLOOSE]}$`), a("COERCE", `(^|[^\\d])(\\d{1,${r}})(?:\\.(\\d{1,${r}}))?(?:\\.(\\d{1,${r}}))?(?:$|[^\\d])`), a("COERCERTL", i[s.COERCE], !0), a("LONETILDE", "(?:~>?)"), a("TILDETRIM", `(\\s*)${i[s.LONETILDE]}\\s+`, !0), t.tildeTrimReplace = "$1~", a("TILDE", `^${i[s.LONETILDE]}${i[s.XRANGEPLAIN]}$`), a("TILDELOOSE", `^${i[s.LONETILDE]}${i[s.XRANGEPLAINLOOSE]}$`), a("LONECARET", "(?:\\^)"), a("CARETTRIM", `(\\s*)${i[s.LONECARET]}\\s+`, !0), t.caretTrimReplace = "$1^", a("CARET", `^${i[s.LONECARET]}${i[s.XRANGEPLAIN]}$`), a("CARETLOOSE", `^${i[s.LONECARET]}${i[s.XRANGEPLAINLOOSE]}$`), a("COMPARATORLOOSE", `^${i[s.GTLT]}\\s*(${i[s.LOOSEPLAIN]})$|^$`), a("COMPARATOR", `^${i[s.GTLT]}\\s*(${i[s.FULLPLAIN]})$|^$`), a("COMPARATORTRIM", `(\\s*)${i[s.GTLT]}\\s*(${i[s.LOOSEPLAIN]}|${i[s.XRANGEPLAIN]})`, !0), t.comparatorTrimReplace = "$1$2$3", a("HYPHENRANGE", `^\\s*(${i[s.XRANGEPLAIN]})\\s+-\\s+(${i[s.XRANGEPLAIN]})\\s*$`), a("HYPHENRANGELOOSE", `^\\s*(${i[s.XRANGEPLAINLOOSE]})\\s+-\\s+(${i[s.XRANGEPLAINLOOSE]})\\s*$`), a("STAR", "(<|>)?=?\\s*\\*"), a("GTE0", "^\\s*>=\\s*0.0.0\\s*$"), a("GTE0PRE", "^\\s*>=\\s*0.0.0-0\\s*$"); })); const opts = [ "includePrerelease", "loose", "rtl" ]; parseOptions_1 = e => e ? "object" != typeof e ? { loose: !0 } : opts.filter((t => e[t])).reduce(((e, t) => (e[t] = !0, e)), {}) : {}; const numeric = /^[0-9]+$/, compareIdentifiers$1 = (e, t) => { const r = numeric.test(e), n = numeric.test(t); return r && n && (e = +e, t = +t), e === t ? 0 : r && !n ? -1 : n && !r ? 1 : e < t ? -1 : 1; }; identifiers = { compareIdentifiers: compareIdentifiers$1, rcompareIdentifiers: (e, t) => compareIdentifiers$1(t, e) }; const {MAX_LENGTH, MAX_SAFE_INTEGER} = constants, {re: re$2, t: t$2} = re_1, {compareIdentifiers} = identifiers; class SemVer { constructor(e, t) { if (t = parseOptions_1(t), e instanceof SemVer) { if (e.loose === !!t.loose && e.includePrerelease === !!t.includePrerelease) return e; e = e.version; } else if ("string" != typeof e) throw new TypeError(`Invalid Version: ${e}`); if (e.length > MAX_LENGTH) throw new TypeError(`version is longer than ${MAX_LENGTH} characters`); debug_1("SemVer", e, t), this.options = t, this.loose = !!t.loose, this.includePrerelease = !!t.includePrerelease; const r = e.trim().match(t.loose ? re$2[t$2.LOOSE] : re$2[t$2.FULL]); if (!r) throw new TypeError(`Invalid Version: ${e}`); if (this.raw = e, this.major = +r[1], this.minor = +r[2], this.patch = +r[3], this.major > MAX_SAFE_INTEGER || this.major < 0) throw new TypeError("Invalid major version"); if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) throw new TypeError("Invalid minor version"); if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) throw new TypeError("Invalid patch version"); r[4] ? this.prerelease = r[4].split(".").map((e => { if (/^[0-9]+$/.test(e)) { const t = +e; if (t >= 0 && t < MAX_SAFE_INTEGER) return t; } return e; })) : this.prerelease = [], this.build = r[5] ? r[5].split(".") : [], this.format(); } format() { return this.version = `${this.major}.${this.minor}.${this.patch}`, this.prerelease.length && (this.version += `-${this.prerelease.join(".")}`), this.version; } toString() { return this.version; } compare(e) { if (debug_1("SemVer.compare", this.version, this.options, e), !(e instanceof SemVer)) { if ("string" == typeof e && e === this.version) return 0; e = new SemVer(e, this.options); } return e.version === this.version ? 0 : this.compareMain(e) || this.comparePre(e); } compareMain(e) { return e instanceof SemVer || (e = new SemVer(e, this.options)), compareIdentifiers(this.major, e.major) || compareIdentifiers(this.minor, e.minor) || compareIdentifiers(this.patch, e.patch); } comparePre(e) { if (e instanceof SemVer || (e = new SemVer(e, this.options)), this.prerelease.length && !e.prerelease.length) return -1; if (!this.prerelease.length && e.prerelease.length) return 1; if (!this.prerelease.length && !e.prerelease.length) return 0; let t = 0; do { const r = this.prerelease[t], n = e.prerelease[t]; if (debug_1("prerelease compare", t, r, n), void 0 === r && void 0 === n) return 0; if (void 0 === n) return 1; if (void 0 === r) return -1; if (r !== n) return compareIdentifiers(r, n); } while (++t); } compareBuild(e) { e instanceof SemVer || (e = new SemVer(e, this.options)); let t = 0; do { const r = this.build[t], n = e.build[t]; if (debug_1("prerelease compare", t, r, n), void 0 === r && void 0 === n) return 0; if (void 0 === n) return 1; if (void 0 === r) return -1; if (r !== n) return compareIdentifiers(r, n); } while (++t); } inc(e, t) { switch (e) { case "premajor": this.prerelease.length = 0, this.patch = 0, this.minor = 0, this.major++, this.inc("pre", t); break; case "preminor": this.prerelease.length = 0, this.patch = 0, this.minor++, this.inc("pre", t); break; case "prepatch": this.prerelease.length = 0, this.inc("patch", t), this.inc("pre", t); break; case "prerelease": 0 === this.prerelease.length && this.inc("patch", t), this.inc("pre", t); break; case "major": 0 === this.minor && 0 === this.patch && 0 !== this.prerelease.length || this.major++, this.minor = 0, this.patch = 0, this.prerelease = []; break; case "minor": 0 === this.patch && 0 !== this.prerelease.length || this.minor++, this.patch = 0, this.prerelease = []; break; case "patch": 0 === this.prerelease.length && this.patch++, this.prerelease = []; break; case "pre": if (0 === this.prerelease.length) this.prerelease = [ 0 ]; else { let e = this.prerelease.length; for (;--e >= 0; ) "number" == typeof this.prerelease[e] && (this.prerelease[e]++, e = -2); -1 === e && this.prerelease.push(0); } t && (this.prerelease[0] === t ? isNaN(this.prerelease[1]) && (this.prerelease = [ t, 0 ]) : this.prerelease = [ t, 0 ]); break; default: throw new Error(`invalid increment argument: ${e}`); } return this.format(), this.raw = this.version, this; } } semver = SemVer, compare_1 = (e, t, r) => new semver(e, r).compare(new semver(t, r)), lt_1 = (e, t, r) => compare_1(e, t, r) < 0; const REGISTRY_URL = "https://registry.npmjs.org/@stencil/core", CHANGELOG = "https://github.com/ionic-team/stencil/blob/main/CHANGELOG.md", ARROW = "→", BOX_TOP_LEFT = "╭", BOX_TOP_RIGHT = "╮", BOX_BOTTOM_LEFT = "╰", BOX_BOTTOM_RIGHT = "╯", BOX_VERTICAL = "│", BOX_HORIZONTAL = "─", PADDING = 2, INDENT = " "; exit = function e(t, r) { function n() { i === r.length && process.exit(t); } r || (r = [ process.stdout, process.stderr ]); var i = 0; r.forEach((function(e) { 0 === e.bufferSize ? i++ : e.write("", "utf-8", (function() { i++, n(); })), e.write = function() {}; })), n(), process.on("exit", (function() { process.exit(t); })); }, lockfile = createCommonjsModule((function(e) { e.exports = function(e) { function t(n) { if (r[n]) return r[n].exports; var i = r[n] = { i: n, l: !1, exports: {} }; return e[n].call(i.exports, i, i.exports, t), i.l = !0, i.exports; } var r = {}; return t.m = e, t.c = r, t.i = function(e) { return e; }, t.d = function(e, r, n) { t.o(e, r) || Object.defineProperty(e, r, { configurable: !1, enumerable: !0, get: n }); }, t.n = function(e) { var r = e && e.__esModule ? function t() { return e.default; } : function t() { return e; }; return t.d(r, "a", r), r; }, t.o = function(e, t) { return Object.prototype.hasOwnProperty.call(e, t); }, t.p = "", t(t.s = 14); }([ function(e, t) { e.exports = path__default.default; }, function(e, t, r) { var n, i; t.__esModule = !0, n = r(173), i = function s(e) { return e && e.__esModule ? e : { default: e }; }(n), t.default = function(e) { return function() { var t = e.apply(this, arguments); return new i.default((function(e, r) { return function n(s, o) { var a, l; try { l = (a = t[s](o)).value; } catch (e) { return void r(e); } if (!a.done) return i.default.resolve(l).then((function(e) { n("next", e); }), (function(e) { n("throw", e); })); e(l); }("next"); })); }; }; }, function(e, t) { e.exports = require$$1__default.default; }, function(e, t) { e.exports = require$$2__default.default; }, function(e, t, r) { Object.defineProperty(t, "__esModule", { value: !0 }); class n extends Error { constructor(e, t) { super(e), this.code = t; } } t.MessageError = n, t.ProcessSpawnError = class i extends n { constructor(e, t, r) { super(e, t), this.process = r; } }, t.SecurityError = class s extends n {}, t.ProcessTermError = class o extends n {}; class a extends Error { constructor(e, t) { super(e), this.responseCode = t; } } t.ResponseError = a; }, function(e, t, r) { function n() { return d = u(r(1)); } function i() { return m = u(r(3)); } function s() { return y = u(r(36)); } function o() { return v = u(r(0)); } function a() { return b = function e(t) { var r, n; if (t && t.__esModule) return t; if (r = {}, null != t) for (n in t) Object.prototype.hasOwnProperty.call(t, n) && (r[n] = t[n]); return r.default = t, r; }(r(40)); } function l() { return _ = r(40); } function c() { return O = r(164); } function u(e) { return e && e.__esModule ? e : { default: e }; } function f(e, t) { return new Promise(((r, n) => { (m || i()).default.readFile(e, t, (function(e, t) { e ? n(e) : r(t); })); })); } function h(e) { return f(e, "utf8").then(p); } function p(e) { return e.replace(/\r\n/g, "\n"); } var d, m, g, y, v, E, b, _, w, O, S, k, A, C, T, L, $, x, R, N, I, P, j, D, F, M, G; Object.defineProperty(t, "__esModule", { value: !0 }), t.getFirstSuitableFolder = t.readFirstAvailableStream = t.makeTempDir = t.hardlinksWork = t.writeFilePreservingEol = t.getFileSizeOnDisk = t.walk = t.symlink = t.find = t.readJsonAndFile = t.readJson = t.readFileAny = t.hardlinkBulk = t.copyBulk = t.unlink = t.glob = t.link = t.chmod = t.lstat = t.exists = t.mkdirp = t.stat = t.access = t.rename = t.readdir = t.realpath = t.readlink = t.writeFile = t.open = t.readFileBuffer = t.lockQueue = t.constants = void 0; let q = (S = (0, (d || n()).default)((function*(e, t, r, i) { var s, a, l, u, f, h, p, m, g, y, E, b, _; let w = (_ = (0, (d || n()).default)((function*(n) { var s, a, l, u, f, h, p, d, m, g, y, E; const b = n.src, _ = n.dest, w = n.type, C = n.onFresh || de, T = n.onDone || de; if (k.has(_.toLowerCase()) ? i.verbose(`The case-insensitive file ${_} shouldn't be copied twice in one bulk copy`) : k.add(_.toLowerCase()), "symlink" === w) return yield se((v || o()).default.dirname(_)), C(), A.symlink.push({ dest: _, linkname: b }), void T(); if (t.ignoreBasenames.indexOf((v || o()).default.basename(b)) >= 0) return; const L = yield ae(b); let $, x; L.isDirectory() && ($ = yield ne(b)); try { x = yield ae(_); } catch (e) { if ("ENOENT" !== e.code) throw e; } if (x) { const e = L.isSymbolicLink() && x.isSymbolicLink(), t = L.isDirectory() && x.isDirectory(), n = L.isFile() && x.isFile(); if (n && S.has(_)) return T(), void i.verbose(i.lang("verboseFileSkipArtifact", b)); if (n && L.size === x.size && (0, (O || c()).fileDatesEqual)(L.mtime, x.mtime)) return T(), void i.verbose(i.lang("verboseFileSkip", b, _, L.size, +L.mtime)); if (e) { const e = yield te(b); if (e === (yield te(_))) return T(), void i.verbose(i.lang("verboseFileSkipSymlink", b, _, e)); } if (t) { const e = yield ne(_); for (he($, "src files not initialised"), s = e, l = 0, s = (a = Array.isArray(s)) ? s : s[Symbol.iterator](); ;) { if (a) { if (l >= s.length) break; u = s[l++]; } else { if ((l = s.next()).done) break; u = l.value; } const e = u; if ($.indexOf(e) < 0) { const t = (v || o()).default.join(_, e); if (r.add(t), (yield ae(t)).isDirectory()) for (f = yield ne(t), p = 0, f = (h = Array.isArray(f)) ? f : f[Symbol.iterator](); ;) { if (h) { if (p >= f.length) break; d = f[p++]; } else { if ((p = f.next()).done) break; d = p.value; } const e = d; r.add((v || o()).default.join(t, e)); } } } } } if (x && x.isSymbolicLink() && (yield (0, (O || c()).unlink)(_), x = null), L.isSymbolicLink()) { C(); const e = yield te(b); A.symlink.push({ dest: _, linkname: e }), T(); } else if (L.isDirectory()) { x || (i.verbose(i.lang("verboseFileFolder", _)), yield se(_)); const t = _.split((v || o()).default.sep); for (;t.length; ) k.add(t.join((v || o()).default.sep).toLowerCase()), t.pop(); he($, "src files not initialised"); let r = $.length; for (r || T(), m = $, y = 0, m = (g = Array.isArray(m)) ? m : m[Symbol.iterator](); ;) { if (g) { if (y >= m.length) break; E = m[y++]; } else { if ((y = m.next()).done) break; E = y.value; } const t = E; e.push({ dest: (v || o()).default.join(_, t), onFresh: C, onDone: function(e) { function t() { return e.apply(this, arguments); } return t.toString = function() { return e.toString(); }, t; }((function() { 0 == --r && T(); })), src: (v || o()).default.join(b, t) }); } } else { if (!L.isFile()) throw new Error(`unsure how to copy this: ${b}`); C(), A.file.push({ src: b, dest: _, atime: L.atime, mtime: L.mtime, mode: L.mode }), T(); } })), function e(t) { return _.apply(this, arguments); }); const S = new Set(t.artifactFiles || []), k = new Set; for (s = e, l = 0, s = (a = Array.isArray(s)) ? s : s[Symbol.iterator](); ;) { if (a) { if (l >= s.length) break; u = s[l++]; } else { if ((l = s.next()).done) break; u = l.value; } const e = u, r = e.onDone; e.onDone = function() { t.onProgress(e.dest), r && r(); }; } t.onStart(e.length); const A = { file: [], symlink: [], link: [] }; for (;e.length; ) { const t = e.splice(0, ue); yield Promise.all(t.map(w)); } for (f = S, p = 0, f = (h = Array.isArray(f)) ? f : f[Symbol.iterator](); ;) { if (h) { if (p >= f.length) break; m = f[p++]; } else { if ((p = f.next()).done) break; m = p.value; } const e = m; r.has(e) && (i.verbose(i.lang("verboseFilePhantomExtraneous", e)), r.delete(e)); } for (g = r, E = 0, g = (y = Array.isArray(g)) ? g : g[Symbol.iterator](); ;) { if (y) { if (E >= g.length) break; b = g[E++]; } else { if ((E = g.next()).done) break; b = E.value; } const e = b; k.has(e.toLowerCase()) && r.delete(e); } return A; })), function e(t, r, n, i) { return S.apply(this, arguments); }), U = (k = (0, (d || n()).default)((function*(e, t, r, i) { var s, a, l, c, u, f, h, p, m, g, y, E, b; let _ = (b = (0, (d || n()).default)((function*(n) { var s, a, l, c, u, f, h, p, d, m, g, y; const E = n.src, b = n.dest, _ = n.onFresh || de, k = n.onDone || de; if (O.has(b.toLowerCase())) return void k(); if (O.add(b.toLowerCase()), t.ignoreBasenames.indexOf((v || o()).default.basename(E)) >= 0) return; const A = yield ae(E); let C; A.isDirectory() && (C = yield ne(E)); const T = yield oe(b); if (T) { const e = yield ae(b), t = A.isSymbolicLink() && e.isSymbolicLink(), n = A.isDirectory() && e.isDirectory(), d = A.isFile() && e.isFile(); if (A.mode !== e.mode) try { yield ie(b, A.mode); } catch (e) { i.verbose(e); } if (d && w.has(b)) return k(), void i.verbose(i.lang("verboseFileSkipArtifact", E)); if (d && null !== A.ino && A.ino === e.ino) return k(), void i.verbose(i.lang("verboseFileSkip", E, b, A.ino)); if (t) { const e = yield te(E); if (e === (yield te(b))) return k(), void i.verbose(i.lang("verboseFileSkipSymlink", E, b, e)); } if (n) { const e = yield ne(b); for (he(C, "src files not initialised"), s = e, l = 0, s = (a = Array.isArray(s)) ? s : s[Symbol.iterator](); ;) { if (a) { if (l >= s.length) break; c = s[l++]; } else { if ((l = s.next()).done) break; c = l.value; } const e = c; if (C.indexOf(e) < 0) { const t = (v || o()).default.join(b, e); if (r.add(t), (yield ae(t)).isDirectory()) for (u = yield ne(t), h = 0, u = (f = Array.isArray(u)) ? u : u[Symbol.iterator](); ;) { if (f) { if (h >= u.length) break; p = u[h++]; } else { if ((h = u.next()).done) break; p = h.value; } const e = p; r.add((v || o()).default.join(t, e)); } } } } } if (A.isSymbolicLink()) { _(); const e = yield te(E); S.symlink.push({ dest: b, linkname: e }), k(); } else if (A.isDirectory()) { i.verbose(i.lang("verboseFileFolder", b)), yield se(b); const t = b.split((v || o()).default.sep); for (;t.length; ) O.add(t.join((v || o()).default.sep).toLowerCase()), t.pop(); he(C, "src files not initialised"); let r = C.length; for (r || k(), d = C, g = 0, d = (m = Array.isArray(d)) ? d : d[Symbol.iterator](); ;) { if (m) { if (g >= d.length) break; y = d[g++]; } else { if ((g = d.next()).done) break; y = g.value; } const t = y; e.push({ onFresh: _, src: (v || o()).default.join(E, t), dest: (v || o()).default.join(b, t), onDone: function(e) { function t() { return e.apply(this, arguments); } return t.toString = function() { return e.toString(); }, t; }((function() { 0 == --r && k(); })) }); } } else { if (!A.isFile()) throw new Error(`unsure how to copy this: ${E}`); _(), S.link.push({ src: E, dest: b, removeDest: T }), k(); } })), function e(t) { return b.apply(this, arguments); }); const w = new Set(t.artifactFiles || []), O = new Set; for (s = e, l = 0, s = (a = Array.isArray(s)) ? s : s[Symbol.iterator](); ;) { if (a) { if (l >= s.length) break; c = s[l++]; } else { if ((l = s.next()).done) break; c = l.value; } const e = c, r = e.onDone || de; e.onDone = function() { t.onProgress(e.dest), r(); }; } t.onStart(e.length); const S = { file: [], symlink: [], link: [] }; for (;e.length; ) { const t = e.splice(0, ue); yield Promise.all(t.map(_)); } for (u = w, h = 0, u = (f = Array.isArray(u)) ? u : u[Symbol.iterator](); ;) { if (f) { if (h >= u.length) break; p = u[h++]; } else { if ((h = u.next()).done) break; p = h.value; } const e = p; r.has(e) && (i.verbose(i.lang("verboseFilePhantomExtraneous", e)), r.d