varlock 0.0.7 → 0.0.9
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/auto-load.js +5 -5
- package/dist/{chunk-7NCUE6IU.js → chunk-2CM4YUFY.js} +41 -18
- package/dist/chunk-2CM4YUFY.js.map +1 -0
- package/dist/{chunk-4D3QUGGJ.js → chunk-4CE75BSX.js} +5 -6
- package/dist/chunk-4CE75BSX.js.map +1 -0
- package/dist/{chunk-DAZNZPLN.js → chunk-4WMY2EW3.js} +559 -75
- package/dist/chunk-4WMY2EW3.js.map +1 -0
- package/dist/{chunk-HQ3K6KKC.js → chunk-CYYLAV42.js} +3 -3
- package/dist/{chunk-HQ3K6KKC.js.map → chunk-CYYLAV42.js.map} +1 -1
- package/dist/{chunk-2AA6IZBK.js → chunk-ELJZUQX3.js} +4 -4
- package/dist/chunk-ELJZUQX3.js.map +1 -0
- package/dist/{chunk-67DF2S4X.js → chunk-FLO6F7B6.js} +5 -5
- package/dist/{chunk-67DF2S4X.js.map → chunk-FLO6F7B6.js.map} +1 -1
- package/dist/{chunk-BDA3K24R.js → chunk-FYLMYWUF.js} +7 -8
- package/dist/chunk-FYLMYWUF.js.map +1 -0
- package/dist/{chunk-XCHNL72R.js → chunk-GWQT5VGW.js} +7 -8
- package/dist/chunk-GWQT5VGW.js.map +1 -0
- package/dist/{chunk-Z52EXRDT.js → chunk-KCX4NC7Q.js} +6 -7
- package/dist/chunk-KCX4NC7Q.js.map +1 -0
- package/dist/{chunk-WRLSFZTQ.js → chunk-LS6F7BSZ.js} +8 -8
- package/dist/{chunk-WRLSFZTQ.js.map → chunk-LS6F7BSZ.js.map} +1 -1
- package/dist/{chunk-ZDGB2ZFV.js → chunk-PB7RWVE6.js} +14 -14
- package/dist/chunk-PB7RWVE6.js.map +1 -0
- package/dist/chunk-WYJDUDC4.js +14 -0
- package/dist/{chunk-ITXNRGOJ.js.map → chunk-WYJDUDC4.js.map} +1 -1
- package/dist/{chunk-WOHPERDH.js → chunk-ZUG7BEY5.js} +4 -4
- package/dist/chunk-ZUG7BEY5.js.map +1 -0
- package/dist/{chunk-LJKKUJMC.js → chunk-ZW2T4C6A.js} +419 -77
- package/dist/chunk-ZW2T4C6A.js.map +1 -0
- package/dist/cli/cli-executable.js +25 -33
- package/dist/cli/cli-executable.js.map +1 -1
- package/dist/dotenv-compat.js +5 -5
- package/dist/env-KH4bPru7.d.ts +356 -0
- package/dist/index.d.ts +36 -2
- package/dist/index.js +27 -12
- package/dist/index.js.map +1 -1
- package/dist/init.command-ZRQOE2OK.js +9 -0
- package/dist/{init.command-NWFSUQWW.js.map → init.command-ZRQOE2OK.js.map} +1 -1
- package/dist/load.command-YBN3BW6U.js +9 -0
- package/dist/{load.command-U3ZEZYEV.js.map → load.command-YBN3BW6U.js.map} +1 -1
- package/dist/login.command-F5AWKZKA.js +8 -0
- package/dist/{login.command-SWBJENRF.js.map → login.command-F5AWKZKA.js.map} +1 -1
- package/dist/run.command-WWJ6ZE26.js +9 -0
- package/dist/{run.command-WNANCLWN.js.map → run.command-WWJ6ZE26.js.map} +1 -1
- package/dist/runtime/env.d.ts +3 -1
- package/dist/runtime/env.js +1 -1
- package/dist/runtime/patch-console.js +2 -2
- package/dist/runtime/patch-response.js +2 -2
- package/dist/runtime/patch-server-response.js +2 -2
- package/dist/telemetry.command-IS2JLIZM.js +8 -0
- package/dist/{telemetry.command-QMUHAB3Z.js.map → telemetry.command-IS2JLIZM.js.map} +1 -1
- package/package.json +6 -7
- package/dist/chunk-2AA6IZBK.js.map +0 -1
- package/dist/chunk-2H7TDBLD.js +0 -172
- package/dist/chunk-2H7TDBLD.js.map +0 -1
- package/dist/chunk-4D3QUGGJ.js.map +0 -1
- package/dist/chunk-7NCUE6IU.js.map +0 -1
- package/dist/chunk-BDA3K24R.js.map +0 -1
- package/dist/chunk-DAZNZPLN.js.map +0 -1
- package/dist/chunk-ITXNRGOJ.js +0 -14
- package/dist/chunk-LHTLO65N.js +0 -99
- package/dist/chunk-LHTLO65N.js.map +0 -1
- package/dist/chunk-LJKKUJMC.js.map +0 -1
- package/dist/chunk-PUGFIZE3.js +0 -143
- package/dist/chunk-PUGFIZE3.js.map +0 -1
- package/dist/chunk-QDGAWJPB.js +0 -59
- package/dist/chunk-QDGAWJPB.js.map +0 -1
- package/dist/chunk-WOHPERDH.js.map +0 -1
- package/dist/chunk-X52WCHVG.js +0 -540
- package/dist/chunk-X52WCHVG.js.map +0 -1
- package/dist/chunk-XCHNL72R.js.map +0 -1
- package/dist/chunk-YZ2H2QXX.js +0 -32
- package/dist/chunk-YZ2H2QXX.js.map +0 -1
- package/dist/chunk-Z52EXRDT.js.map +0 -1
- package/dist/chunk-ZDGB2ZFV.js.map +0 -1
- package/dist/doctor.command-TKHDKSUY.js +0 -7
- package/dist/doctor.command-TKHDKSUY.js.map +0 -1
- package/dist/encrypt.command-AGHQ4KTI.js +0 -7
- package/dist/encrypt.command-AGHQ4KTI.js.map +0 -1
- package/dist/env-k8iRuXIH.d.ts +0 -42
- package/dist/init.command-NWFSUQWW.js +0 -13
- package/dist/load.command-U3ZEZYEV.js +0 -12
- package/dist/login.command-SWBJENRF.js +0 -10
- package/dist/run.command-WNANCLWN.js +0 -12
- package/dist/telemetry.command-QMUHAB3Z.js +0 -10
|
@@ -1,12 +1,91 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
5
|
-
import
|
|
1
|
+
import { redactString } from './chunk-FGMXIEFA.js';
|
|
2
|
+
import { __commonJS, __name, __toESM } from './chunk-XN24GZXQ.js';
|
|
3
|
+
import { exec } from 'child_process';
|
|
4
|
+
import { promisify } from 'util';
|
|
5
|
+
import fs2 from 'fs/promises';
|
|
6
|
+
import path from 'path';
|
|
6
7
|
import { ParsedEnvSpecStaticValue, ParsedEnvSpecFunctionCall, ParsedEnvSpecKeyValuePair, parseEnvSpecDotEnvFile } from '@env-spec/parser';
|
|
7
|
-
import fs from '
|
|
8
|
+
import fs from 'fs';
|
|
9
|
+
import process2 from 'process';
|
|
8
10
|
|
|
9
|
-
// ../../node_modules/.pnpm
|
|
11
|
+
// ../../node_modules/.pnpm/ansis@4.1.0/node_modules/ansis/index.cjs
|
|
12
|
+
var require_ansis = __commonJS({
|
|
13
|
+
"../../node_modules/.pnpm/ansis@4.1.0/node_modules/ansis/index.cjs"(exports, module) {
|
|
14
|
+
var e;
|
|
15
|
+
var t;
|
|
16
|
+
var r;
|
|
17
|
+
var { defineProperty: n, setPrototypeOf: l, create: o, keys: s } = Object;
|
|
18
|
+
var i = "";
|
|
19
|
+
var { round: c, max: a2 } = Math;
|
|
20
|
+
var p = /* @__PURE__ */ __name((e2) => {
|
|
21
|
+
let t2 = /([a-f\d]{3,6})/i.exec(e2)?.[1], r2 = t2?.length, n2 = parseInt(6 ^ r2 ? 3 ^ r2 ? "0" : t2[0] + t2[0] + t2[1] + t2[1] + t2[2] + t2[2] : t2, 16);
|
|
22
|
+
return [n2 >> 16 & 255, n2 >> 8 & 255, 255 & n2];
|
|
23
|
+
}, "p");
|
|
24
|
+
var u = /* @__PURE__ */ __name((e2, t2, r2) => e2 ^ t2 || t2 ^ r2 ? 16 + 36 * c(e2 / 51) + 6 * c(t2 / 51) + c(r2 / 51) : 8 > e2 ? 16 : e2 > 248 ? 231 : c(24 * (e2 - 8) / 247) + 232, "u");
|
|
25
|
+
var d = /* @__PURE__ */ __name((e2) => {
|
|
26
|
+
let t2, r2, n2, l2, o2;
|
|
27
|
+
return 8 > e2 ? 30 + e2 : 16 > e2 ? e2 - 8 + 90 : (232 > e2 ? (o2 = (e2 -= 16) % 36, t2 = (e2 / 36 | 0) / 5, r2 = (o2 / 6 | 0) / 5, n2 = o2 % 6 / 5) : t2 = r2 = n2 = (10 * (e2 - 232) + 8) / 255, l2 = 2 * a2(t2, r2, n2), l2 ? 30 + (c(n2) << 2 | c(r2) << 1 | c(t2)) + (2 ^ l2 ? 0 : 60) : 30);
|
|
28
|
+
}, "d");
|
|
29
|
+
var g = (() => {
|
|
30
|
+
let r2 = /* @__PURE__ */ __name((e2) => o2.some((t2) => e2.test(t2)), "r"), n2 = globalThis, l2 = n2.process ?? {}, o2 = l2.argv ?? [], i2 = l2.env ?? {}, c2 = -1;
|
|
31
|
+
try {
|
|
32
|
+
e = "," + s(i2).join(",");
|
|
33
|
+
} catch (e2) {
|
|
34
|
+
i2 = {}, c2 = 0;
|
|
35
|
+
}
|
|
36
|
+
let a3 = "FORCE_COLOR", p2 = { false: 0, 0: 0, 1: 1, 2: 2, 3: 3 }[i2[a3]] ?? -1, u2 = a3 in i2 && p2 || r2(/^--color=?(true|always)?$/);
|
|
37
|
+
return u2 && (c2 = p2), ~c2 || (c2 = ((r3, n3, l3) => (t = r3.TERM, { "24bit": 3, truecolor: 3, ansi256: 2, ansi: 1 }[r3.COLORTERM] || (r3.CI ? /,GITHUB/.test(e) ? 3 : 1 : n3 && "dumb" !== t ? l3 ? 3 : /-256/.test(t) ? 2 : 1 : 0)))(i2, !!i2.PM2_HOME || i2.NEXT_RUNTIME?.includes("edge") || !!l2.stdout?.isTTY, "win32" === l2.platform)), !p2 || i2.NO_COLOR || r2(/^--(no-color|color=(false|never))$/) ? 0 : n2.window?.chrome || u2 && !c2 ? 3 : c2;
|
|
38
|
+
})();
|
|
39
|
+
var f = { open: i, close: i };
|
|
40
|
+
var h = 39;
|
|
41
|
+
var b = 49;
|
|
42
|
+
var O = {};
|
|
43
|
+
var m = /* @__PURE__ */ __name(({ p: e2 }, { open: t2, close: n2 }) => {
|
|
44
|
+
let o2 = /* @__PURE__ */ __name((e3, ...r2) => {
|
|
45
|
+
if (!e3) {
|
|
46
|
+
if (t2 && t2 === n2) return t2;
|
|
47
|
+
if ((e3 ?? i) === i) return i;
|
|
48
|
+
}
|
|
49
|
+
let l2, s3 = e3.raw ? String.raw({ raw: e3 }, ...r2) : i + e3, c3 = o2.p, a3 = c3.o, p2 = c3.c;
|
|
50
|
+
if (s3.includes("\x1B")) for (; c3; c3 = c3.p) {
|
|
51
|
+
let { open: e4, close: t3 } = c3, r3 = t3.length, n3 = i, o3 = 0;
|
|
52
|
+
if (r3) for (; ~(l2 = s3.indexOf(t3, o3)); o3 = l2 + r3) n3 += s3.slice(o3, l2) + e4;
|
|
53
|
+
s3 = n3 + s3.slice(o3);
|
|
54
|
+
}
|
|
55
|
+
return a3 + (s3.includes("\n") ? s3.replace(/(\r?\n)/g, p2 + "$1" + a3) : s3) + p2;
|
|
56
|
+
}, "o"), s2 = t2, c2 = n2;
|
|
57
|
+
return e2 && (s2 = e2.o + t2, c2 = n2 + e2.c), l(o2, r), o2.p = { open: t2, close: n2, o: s2, c: c2, p: e2 }, o2.open = s2, o2.close = c2, o2;
|
|
58
|
+
}, "m");
|
|
59
|
+
var w = /* @__PURE__ */ __name(function(e2 = g) {
|
|
60
|
+
let t2 = { Ansis: w, level: e2, isSupported: /* @__PURE__ */ __name(() => s2, "isSupported"), strip: /* @__PURE__ */ __name((e3) => e3.replace(/[][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g, i), "strip"), extend(e3) {
|
|
61
|
+
for (let t3 in e3) {
|
|
62
|
+
let r2 = e3[t3], l2 = (typeof r2)[0], o2 = "s" === l2 ? x(...p(r2)) : r2;
|
|
63
|
+
O[t3] = "f" === l2 ? { get() {
|
|
64
|
+
return (...e4) => m(this, r2(...e4));
|
|
65
|
+
} } : { get() {
|
|
66
|
+
let e4 = m(this, o2);
|
|
67
|
+
return n(this, t3, { value: e4 }), e4;
|
|
68
|
+
} };
|
|
69
|
+
}
|
|
70
|
+
return r = o({}, O), l(t2, r), t2;
|
|
71
|
+
} }, s2 = e2 > 0, c2 = /* @__PURE__ */ __name((e3, t3) => s2 ? { open: `\x1B[${e3}m`, close: `\x1B[${t3}m` } : f, "c"), a3 = /* @__PURE__ */ __name((e3) => (t3) => e3(...p(t3)), "a"), y2 = /* @__PURE__ */ __name((e3, t3) => (r2, n2, l2) => c2(`${e3}8;2;${r2};${n2};${l2}`, t3), "y"), R = /* @__PURE__ */ __name((e3, t3) => (r2, n2, l2) => c2(((e4, t4, r3) => d(u(e4, t4, r3)))(r2, n2, l2) + e3, t3), "R"), $ = /* @__PURE__ */ __name((e3) => (t3, r2, n2) => e3(u(t3, r2, n2)), "$"), x = y2(3, h), T = y2(4, b), v = /* @__PURE__ */ __name((e3) => c2("38;5;" + e3, h), "v"), C = /* @__PURE__ */ __name((e3) => c2("48;5;" + e3, b), "C");
|
|
72
|
+
2 === e2 ? (x = $(v), T = $(C)) : 1 === e2 && (x = R(0, h), T = R(10, b), v = /* @__PURE__ */ __name((e3) => c2(d(e3), h), "v"), C = /* @__PURE__ */ __name((e3) => c2(d(e3) + 10, b), "C"));
|
|
73
|
+
let E, M = { fg: v, bg: C, rgb: x, bgRgb: T, hex: a3(x), bgHex: a3(T), visible: f, reset: c2(0, 0), bold: c2(1, 22), dim: c2(2, 22), italic: c2(3, 23), underline: c2(4, 24), inverse: c2(7, 27), hidden: c2(8, 28), strikethrough: c2(9, 29) }, I = "Bright";
|
|
74
|
+
return "black,red,green,yellow,blue,magenta,cyan,white,gray".split(",").map((e3, t3) => {
|
|
75
|
+
E = "bg" + e3[0].toUpperCase() + e3.slice(1), 8 > t3 ? (M[e3 + I] = c2(90 + t3, h), M[E + I] = c2(100 + t3, b)) : t3 = 60, M[e3] = c2(30 + t3, h), M[E] = c2(40 + t3, b);
|
|
76
|
+
}), t2.extend(M);
|
|
77
|
+
}, "w");
|
|
78
|
+
var y = new w();
|
|
79
|
+
module.exports = y, y.default = y;
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
|
|
83
|
+
// ../../node_modules/.pnpm/ansis@4.1.0/node_modules/ansis/index.mjs
|
|
84
|
+
var import_index = __toESM(require_ansis(), 1);
|
|
85
|
+
var ansis_default = import_index.default;
|
|
86
|
+
var { Ansis, fg, bg, rgb, bgRgb, hex, bgHex, reset, inverse, hidden, visible, bold, dim, italic, underline, strikethrough, black, red, green, yellow, blue, magenta, cyan, white, gray, redBright, greenBright, yellowBright, blueBright, magentaBright, cyanBright, whiteBright, bgBlack, bgRed, bgGreen, bgYellow, bgBlue, bgMagenta, bgCyan, bgWhite, bgGray, bgRedBright, bgGreenBright, bgYellowBright, bgBlueBright, bgMagentaBright, bgCyanBright, bgWhiteBright } = import_index.default;
|
|
87
|
+
|
|
88
|
+
// ../../node_modules/.pnpm/@sindresorhus+is@7.0.2/node_modules/@sindresorhus/is/distribution/index.js
|
|
10
89
|
var typedArrayTypeNames = [
|
|
11
90
|
"Int8Array",
|
|
12
91
|
"Uint8Array",
|
|
@@ -497,7 +576,7 @@ function isObservable(value) {
|
|
|
497
576
|
if (!value) {
|
|
498
577
|
return false;
|
|
499
578
|
}
|
|
500
|
-
if (value === value[Symbol.observable]?.()) {
|
|
579
|
+
if (Symbol.observable !== void 0 && value === value[Symbol.observable]?.()) {
|
|
501
580
|
return true;
|
|
502
581
|
}
|
|
503
582
|
if (value === value["@@observable"]?.()) {
|
|
@@ -664,13 +743,13 @@ function sortBy(array, compareBy) {
|
|
|
664
743
|
compareMap.set(item, compareBy(item));
|
|
665
744
|
});
|
|
666
745
|
return array.concat().sort(
|
|
667
|
-
(
|
|
746
|
+
(a2, b) => compareMap.get(a2) - compareMap.get(b)
|
|
668
747
|
);
|
|
669
748
|
} else {
|
|
670
749
|
return array.concat().sort(
|
|
671
|
-
(
|
|
672
|
-
if (
|
|
673
|
-
return b[compareBy] >
|
|
750
|
+
(a2, b) => {
|
|
751
|
+
if (a2[compareBy] > b[compareBy]) return 1;
|
|
752
|
+
return b[compareBy] > a2[compareBy] ? -1 : 0;
|
|
674
753
|
}
|
|
675
754
|
);
|
|
676
755
|
}
|
|
@@ -701,7 +780,7 @@ function mapValues(obj, fn) {
|
|
|
701
780
|
}
|
|
702
781
|
__name(mapValues, "mapValues");
|
|
703
782
|
function times(count, fn) {
|
|
704
|
-
return Array.from({ length: count }, (
|
|
783
|
+
return Array.from({ length: count }, (_4, i) => fn(i));
|
|
705
784
|
}
|
|
706
785
|
__name(times, "times");
|
|
707
786
|
function map(array, fn) {
|
|
@@ -718,7 +797,7 @@ var _ = {
|
|
|
718
797
|
compact,
|
|
719
798
|
keys: Object.keys,
|
|
720
799
|
values: Object.values,
|
|
721
|
-
some: /* @__PURE__ */ __name((
|
|
800
|
+
some: /* @__PURE__ */ __name((a2, fn) => a2.some(fn), "some"),
|
|
722
801
|
filter,
|
|
723
802
|
each,
|
|
724
803
|
castArray,
|
|
@@ -739,47 +818,8 @@ var _ = {
|
|
|
739
818
|
isInteger
|
|
740
819
|
};
|
|
741
820
|
var my_dash_default = _;
|
|
742
|
-
var asyncExec = promisify(exec);
|
|
743
|
-
|
|
744
|
-
// ../utils/src/git-utils.ts
|
|
745
|
-
async function checkIsFileGitIgnored(path4, warnIfNotGitRepo = false) {
|
|
746
|
-
try {
|
|
747
|
-
await asyncExec(`git check-ignore ${path4} -q`);
|
|
748
|
-
return true;
|
|
749
|
-
} catch (err) {
|
|
750
|
-
const stderr = err.stderr;
|
|
751
|
-
if (stderr.includes("command not found")) return void 0;
|
|
752
|
-
if (err.code === "ENOENT") return void 0;
|
|
753
|
-
if (stderr === "") return false;
|
|
754
|
-
if (stderr.includes("not a git repository")) {
|
|
755
|
-
if (warnIfNotGitRepo) {
|
|
756
|
-
console.log("\u{1F536} Your code is not currently in a git repository - run `git init` to initialize a new repo.");
|
|
757
|
-
}
|
|
758
|
-
return false;
|
|
759
|
-
}
|
|
760
|
-
throw err;
|
|
761
|
-
}
|
|
762
|
-
}
|
|
763
|
-
__name(checkIsFileGitIgnored, "checkIsFileGitIgnored");
|
|
764
|
-
|
|
765
|
-
// ../utils/src/try-catch.ts
|
|
766
|
-
function isPromise2(obj) {
|
|
767
|
-
return !!obj && (typeof obj === "object" || typeof obj === "function") && typeof obj.then === "function";
|
|
768
|
-
}
|
|
769
|
-
__name(isPromise2, "isPromise");
|
|
770
|
-
async function tryCatch(tryFn, catchFn) {
|
|
771
|
-
try {
|
|
772
|
-
return await tryFn();
|
|
773
|
-
} catch (err) {
|
|
774
|
-
const catchResult = catchFn(err);
|
|
775
|
-
if (isPromise2(catchResult)) {
|
|
776
|
-
await catchResult;
|
|
777
|
-
}
|
|
778
|
-
}
|
|
779
|
-
}
|
|
780
|
-
__name(tryCatch, "tryCatch");
|
|
781
821
|
|
|
782
|
-
//
|
|
822
|
+
// env-graph/lib/errors.ts
|
|
783
823
|
var VarlockError = class extends Error {
|
|
784
824
|
constructor(errOrMessage, more) {
|
|
785
825
|
super(my_dash_default.isError(errOrMessage) ? errOrMessage.message : errOrMessage);
|
|
@@ -840,6 +880,29 @@ var VarlockError = class extends Error {
|
|
|
840
880
|
};
|
|
841
881
|
}
|
|
842
882
|
};
|
|
883
|
+
var ConfigLoadError = class extends VarlockError {
|
|
884
|
+
static {
|
|
885
|
+
__name(this, "ConfigLoadError");
|
|
886
|
+
}
|
|
887
|
+
cleanedStack;
|
|
888
|
+
constructor(err) {
|
|
889
|
+
super(err);
|
|
890
|
+
let stackLines = (err.stack?.split("\n") || []).slice(1);
|
|
891
|
+
stackLines = stackLines.filter((l) => {
|
|
892
|
+
if (l.includes(" at ViteNodeRunner.")) return false;
|
|
893
|
+
if (l.includes("core/src/config-loader/config-loader.ts")) return false;
|
|
894
|
+
return true;
|
|
895
|
+
});
|
|
896
|
+
this.message = `${err.name}: ${err.message}`;
|
|
897
|
+
this.cleanedStack = stackLines || [];
|
|
898
|
+
}
|
|
899
|
+
toJSON() {
|
|
900
|
+
return {
|
|
901
|
+
...super.toJSON(),
|
|
902
|
+
cleanedStack: this.cleanedStack
|
|
903
|
+
};
|
|
904
|
+
}
|
|
905
|
+
};
|
|
843
906
|
var SchemaError = class extends VarlockError {
|
|
844
907
|
static {
|
|
845
908
|
__name(this, "SchemaError");
|
|
@@ -882,8 +945,47 @@ var EmptyRequiredValueError = class extends ValidationError {
|
|
|
882
945
|
super("Value is required but is currently empty");
|
|
883
946
|
}
|
|
884
947
|
};
|
|
948
|
+
var asyncExec = promisify(exec);
|
|
949
|
+
|
|
950
|
+
// ../utils/src/git-utils.ts
|
|
951
|
+
async function checkIsFileGitIgnored(path5, warnIfNotGitRepo = false) {
|
|
952
|
+
try {
|
|
953
|
+
await asyncExec(`git check-ignore ${path5} -q`);
|
|
954
|
+
return true;
|
|
955
|
+
} catch (err) {
|
|
956
|
+
const stderr = err.stderr;
|
|
957
|
+
if (stderr.includes("not found")) return void 0;
|
|
958
|
+
if (err.code === "ENOENT") return void 0;
|
|
959
|
+
if (stderr === "") return false;
|
|
960
|
+
if (stderr.includes("not a git repository")) {
|
|
961
|
+
if (warnIfNotGitRepo) {
|
|
962
|
+
console.log("\u{1F536} Your code is not currently in a git repository - run `git init` to initialize a new repo.");
|
|
963
|
+
}
|
|
964
|
+
return false;
|
|
965
|
+
}
|
|
966
|
+
throw err;
|
|
967
|
+
}
|
|
968
|
+
}
|
|
969
|
+
__name(checkIsFileGitIgnored, "checkIsFileGitIgnored");
|
|
970
|
+
|
|
971
|
+
// ../utils/src/try-catch.ts
|
|
972
|
+
function isPromise2(obj) {
|
|
973
|
+
return !!obj && (typeof obj === "object" || typeof obj === "function") && typeof obj.then === "function";
|
|
974
|
+
}
|
|
975
|
+
__name(isPromise2, "isPromise");
|
|
976
|
+
async function tryCatch(tryFn, catchFn) {
|
|
977
|
+
try {
|
|
978
|
+
return await tryFn();
|
|
979
|
+
} catch (err) {
|
|
980
|
+
const catchResult = catchFn(err);
|
|
981
|
+
if (isPromise2(catchResult)) {
|
|
982
|
+
await catchResult;
|
|
983
|
+
}
|
|
984
|
+
}
|
|
985
|
+
}
|
|
986
|
+
__name(tryCatch, "tryCatch");
|
|
885
987
|
|
|
886
|
-
//
|
|
988
|
+
// env-graph/lib/data-types.ts
|
|
887
989
|
var EnvGraphDataType = class {
|
|
888
990
|
constructor(def, factory) {
|
|
889
991
|
this.def = def;
|
|
@@ -1172,7 +1274,7 @@ var PortDataType = createEnvGraphDataType(
|
|
|
1172
1274
|
);
|
|
1173
1275
|
var SEMVER_REGEX = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;
|
|
1174
1276
|
var SemverDataType = createEnvGraphDataType(
|
|
1175
|
-
(
|
|
1277
|
+
(_settings) => ({
|
|
1176
1278
|
name: "semver",
|
|
1177
1279
|
icon: "simple-icons:semver",
|
|
1178
1280
|
typeDescription: "semantic version string",
|
|
@@ -1231,7 +1333,7 @@ var BaseDataTypes = {
|
|
|
1231
1333
|
md5: Md5DataType
|
|
1232
1334
|
};
|
|
1233
1335
|
|
|
1234
|
-
//
|
|
1336
|
+
// env-graph/lib/simple-queue.ts
|
|
1235
1337
|
var SimpleQueue = class {
|
|
1236
1338
|
static {
|
|
1237
1339
|
__name(this, "SimpleQueue");
|
|
@@ -1269,7 +1371,7 @@ var SimpleQueue = class {
|
|
|
1269
1371
|
}
|
|
1270
1372
|
};
|
|
1271
1373
|
|
|
1272
|
-
//
|
|
1374
|
+
// env-graph/lib/resolver.ts
|
|
1273
1375
|
var execAsync = promisify(exec);
|
|
1274
1376
|
var Resolver = class {
|
|
1275
1377
|
constructor(fnArgs) {
|
|
@@ -1445,7 +1547,7 @@ var ExecResolver = class _ExecResolver extends Resolver {
|
|
|
1445
1547
|
throw new ResolutionError("exec() expects a string child arg");
|
|
1446
1548
|
}
|
|
1447
1549
|
try {
|
|
1448
|
-
const { stdout
|
|
1550
|
+
const { stdout } = await _ExecResolver.execQueue.enqueue(() => execAsync(commandStr));
|
|
1449
1551
|
return stdout.replace(/\n$/, "");
|
|
1450
1552
|
} catch (err) {
|
|
1451
1553
|
console.log("exec() failed", err);
|
|
@@ -1555,7 +1657,7 @@ var BaseResolvers = [
|
|
|
1555
1657
|
RegexResolver
|
|
1556
1658
|
];
|
|
1557
1659
|
|
|
1558
|
-
//
|
|
1660
|
+
// env-graph/lib/graph-utils.ts
|
|
1559
1661
|
function findGraphCycles(graph) {
|
|
1560
1662
|
const visited = /* @__PURE__ */ new Set();
|
|
1561
1663
|
const recursionStack = /* @__PURE__ */ new Set();
|
|
@@ -1739,7 +1841,7 @@ async function generateTypes(graph, lang, outputPath) {
|
|
|
1739
1841
|
}
|
|
1740
1842
|
__name(generateTypes, "generateTypes");
|
|
1741
1843
|
|
|
1742
|
-
//
|
|
1844
|
+
// env-graph/lib/env-graph.ts
|
|
1743
1845
|
var EnvGraph2 = class {
|
|
1744
1846
|
static {
|
|
1745
1847
|
__name(this, "EnvGraph");
|
|
@@ -1895,7 +1997,7 @@ var EnvGraph2 = class {
|
|
|
1895
1997
|
}
|
|
1896
1998
|
}
|
|
1897
1999
|
const itemsToResolveStatus = my_dash_default.mapValues(this.configSchema, () => false);
|
|
1898
|
-
const deferred = new Promise((resolve,
|
|
2000
|
+
const deferred = new Promise((resolve, _reject) => {
|
|
1899
2001
|
const markItemCompleted = /* @__PURE__ */ __name((itemKey) => {
|
|
1900
2002
|
delete itemsToResolveStatus[itemKey];
|
|
1901
2003
|
if (reverseAdjList[itemKey]) {
|
|
@@ -1975,15 +2077,24 @@ var EnvGraph2 = class {
|
|
|
1975
2077
|
}
|
|
1976
2078
|
};
|
|
1977
2079
|
|
|
1978
|
-
//
|
|
2080
|
+
// env-graph/lib/config-item.ts
|
|
1979
2081
|
var ConfigItem3 = class {
|
|
1980
|
-
constructor(envGraph, key) {
|
|
1981
|
-
this.envGraph = envGraph;
|
|
1982
|
-
this.key = key;
|
|
1983
|
-
}
|
|
1984
2082
|
static {
|
|
1985
2083
|
__name(this, "ConfigItem");
|
|
1986
2084
|
}
|
|
2085
|
+
// annoyingly we cannot use readonly if we want to support `erasableSyntaxOnly`
|
|
2086
|
+
#envGraph;
|
|
2087
|
+
#key;
|
|
2088
|
+
constructor(_envGraph, _key) {
|
|
2089
|
+
this.#envGraph = _envGraph;
|
|
2090
|
+
this.#key = _key;
|
|
2091
|
+
}
|
|
2092
|
+
get envGraph() {
|
|
2093
|
+
return this.#envGraph;
|
|
2094
|
+
}
|
|
2095
|
+
get key() {
|
|
2096
|
+
return this.#key;
|
|
2097
|
+
}
|
|
1987
2098
|
defs = [];
|
|
1988
2099
|
addDef(itemDef, source) {
|
|
1989
2100
|
this.defs.unshift({ itemDef, source });
|
|
@@ -2202,7 +2313,6 @@ var ConfigItem3 = class {
|
|
|
2202
2313
|
} else if (err instanceof Error) {
|
|
2203
2314
|
const validationError = new ValidationError("Unexpected error during validation");
|
|
2204
2315
|
validationError.cause = err;
|
|
2205
|
-
console.log(err);
|
|
2206
2316
|
this.validationErrors = [validationError];
|
|
2207
2317
|
} else {
|
|
2208
2318
|
const validationError = new ValidationError(`Unexpected non-error thrown during validation - ${err}`);
|
|
@@ -2217,7 +2327,7 @@ var ConfigItem3 = class {
|
|
|
2217
2327
|
}
|
|
2218
2328
|
};
|
|
2219
2329
|
|
|
2220
|
-
//
|
|
2330
|
+
// env-graph/lib/data-source.ts
|
|
2221
2331
|
var DATA_SOURCE_TYPES = Object.freeze({
|
|
2222
2332
|
schema: {
|
|
2223
2333
|
fileSuffixes: ["schema"],
|
|
@@ -2268,7 +2378,7 @@ var EnvGraphDataSource = class {
|
|
|
2268
2378
|
return obj;
|
|
2269
2379
|
}
|
|
2270
2380
|
};
|
|
2271
|
-
var
|
|
2381
|
+
var ProcessEnvDataSource = class _ProcessEnvDataSource extends EnvGraphDataSource {
|
|
2272
2382
|
static {
|
|
2273
2383
|
__name(this, "ProcessEnvDataSource");
|
|
2274
2384
|
}
|
|
@@ -2295,13 +2405,14 @@ var ProcessEnvDataSource2 = class _ProcessEnvDataSource extends EnvGraphDataSour
|
|
|
2295
2405
|
}
|
|
2296
2406
|
};
|
|
2297
2407
|
var EnvSourceParseError = class extends Error {
|
|
2298
|
-
constructor(message, location) {
|
|
2299
|
-
super(message);
|
|
2300
|
-
this.location = location;
|
|
2301
|
-
}
|
|
2302
2408
|
static {
|
|
2303
2409
|
__name(this, "EnvSourceParseError");
|
|
2304
2410
|
}
|
|
2411
|
+
location;
|
|
2412
|
+
constructor(message, _location) {
|
|
2413
|
+
super(message);
|
|
2414
|
+
this.location = _location;
|
|
2415
|
+
}
|
|
2305
2416
|
};
|
|
2306
2417
|
var FileBasedDataSource = class extends EnvGraphDataSource {
|
|
2307
2418
|
static {
|
|
@@ -2432,7 +2543,238 @@ var DotEnvFileDataSource = class extends FileBasedDataSource {
|
|
|
2432
2543
|
}
|
|
2433
2544
|
}
|
|
2434
2545
|
};
|
|
2546
|
+
var SKIP_FILE_TYPES = [".md", ".d.ts"];
|
|
2547
|
+
async function findEnvFiles(opts) {
|
|
2548
|
+
const cwd = opts?.cwd || process.cwd();
|
|
2549
|
+
const envFiles = [];
|
|
2550
|
+
const filesWithinDir = await fs2.readdir(cwd);
|
|
2551
|
+
for (const fileName of filesWithinDir) {
|
|
2552
|
+
if (fileName === ".env" || fileName.startsWith(".env.")) {
|
|
2553
|
+
let skip = false;
|
|
2554
|
+
for (const fileType of SKIP_FILE_TYPES) {
|
|
2555
|
+
if (fileName.endsWith(fileType)) skip = true;
|
|
2556
|
+
}
|
|
2557
|
+
if (skip) continue;
|
|
2558
|
+
envFiles.push(path.join(cwd, fileName));
|
|
2559
|
+
}
|
|
2560
|
+
}
|
|
2561
|
+
return envFiles;
|
|
2562
|
+
}
|
|
2563
|
+
__name(findEnvFiles, "findEnvFiles");
|
|
2564
|
+
|
|
2565
|
+
// env-graph/lib/loader.ts
|
|
2566
|
+
function autoDetectBasePath() {
|
|
2567
|
+
const PWD = process.env.PWD;
|
|
2568
|
+
if (!PWD) {
|
|
2569
|
+
throw new Error("PWD is not set");
|
|
2570
|
+
}
|
|
2571
|
+
return PWD;
|
|
2572
|
+
}
|
|
2573
|
+
__name(autoDetectBasePath, "autoDetectBasePath");
|
|
2574
|
+
async function loadEnvGraph(opts) {
|
|
2575
|
+
const graph = new EnvGraph2();
|
|
2576
|
+
graph.basePath = opts?.basePath ?? autoDetectBasePath();
|
|
2577
|
+
if (opts?.afterInit) {
|
|
2578
|
+
await opts.afterInit(graph);
|
|
2579
|
+
}
|
|
2580
|
+
if (opts?.currentEnvFallback) {
|
|
2581
|
+
graph.envFlagValue = opts.currentEnvFallback;
|
|
2582
|
+
}
|
|
2583
|
+
const envFilePaths = await findEnvFiles({
|
|
2584
|
+
cwd: graph.basePath
|
|
2585
|
+
});
|
|
2586
|
+
for (const envFilePath of envFilePaths) {
|
|
2587
|
+
const fileDataSource = new DotEnvFileDataSource(envFilePath);
|
|
2588
|
+
graph.addDataSource(fileDataSource);
|
|
2589
|
+
await fileDataSource.finishInit();
|
|
2590
|
+
}
|
|
2591
|
+
graph.finalOverridesDataSource = new ProcessEnvDataSource();
|
|
2592
|
+
await graph.finishLoad();
|
|
2593
|
+
return graph;
|
|
2594
|
+
}
|
|
2595
|
+
__name(loadEnvGraph, "loadEnvGraph");
|
|
2596
|
+
|
|
2597
|
+
// src/lib/formatting.ts
|
|
2598
|
+
function applyMods(str, mods) {
|
|
2599
|
+
if (!mods) return str;
|
|
2600
|
+
if (my_dash_default.isArray(mods)) {
|
|
2601
|
+
let modStr = str;
|
|
2602
|
+
mods.forEach((mod) => {
|
|
2603
|
+
modStr = ansis_default[mod](modStr);
|
|
2604
|
+
});
|
|
2605
|
+
return modStr;
|
|
2606
|
+
}
|
|
2607
|
+
return ansis_default[mods](str);
|
|
2608
|
+
}
|
|
2609
|
+
__name(applyMods, "applyMods");
|
|
2610
|
+
function formattedValue(val, showType = false) {
|
|
2611
|
+
let strVal = "";
|
|
2612
|
+
let strType = "";
|
|
2613
|
+
let mods;
|
|
2614
|
+
if (my_dash_default.isBoolean(val)) {
|
|
2615
|
+
strVal = val.toString();
|
|
2616
|
+
mods = ["yellow", "italic"];
|
|
2617
|
+
strType = "boolean";
|
|
2618
|
+
} else if (my_dash_default.isNumber(val)) {
|
|
2619
|
+
strVal = val.toString();
|
|
2620
|
+
mods = "yellow";
|
|
2621
|
+
strType = "number";
|
|
2622
|
+
} else if (my_dash_default.isString(val)) {
|
|
2623
|
+
strVal = `"${val}"`;
|
|
2624
|
+
strType = "string";
|
|
2625
|
+
} else if (my_dash_default.isPlainObject(val)) {
|
|
2626
|
+
strVal = JSON.stringify(val);
|
|
2627
|
+
strType = "object";
|
|
2628
|
+
} else if (val === null) {
|
|
2629
|
+
strVal = "null";
|
|
2630
|
+
mods = "gray";
|
|
2631
|
+
} else if (val === void 0) {
|
|
2632
|
+
strVal = "undefined";
|
|
2633
|
+
mods = "gray";
|
|
2634
|
+
}
|
|
2635
|
+
return [
|
|
2636
|
+
applyMods(strVal, mods),
|
|
2637
|
+
showType && strType ? ansis_default.gray(` (${strType})`) : ""
|
|
2638
|
+
].join("");
|
|
2639
|
+
}
|
|
2640
|
+
__name(formattedValue, "formattedValue");
|
|
2641
|
+
function joinAndCompact(strings, joinChar = " ") {
|
|
2642
|
+
return strings.filter((s) => (
|
|
2643
|
+
// we'll not filter out empty strings - because it's useful to just add newlines
|
|
2644
|
+
s !== void 0 && s !== null && s !== false
|
|
2645
|
+
)).join(joinChar);
|
|
2646
|
+
}
|
|
2647
|
+
__name(joinAndCompact, "joinAndCompact");
|
|
2648
|
+
var VALIDATION_STATE_COLORS = {
|
|
2649
|
+
error: "red",
|
|
2650
|
+
warn: "yellow",
|
|
2651
|
+
valid: "cyan"
|
|
2652
|
+
};
|
|
2653
|
+
function getItemSummary(item) {
|
|
2654
|
+
const summary = [];
|
|
2655
|
+
const itemErrors = item.errors;
|
|
2656
|
+
const icon = itemErrors.length ? itemErrors[0].icon : "\u2705";
|
|
2657
|
+
const isSensitive = item.isSensitive;
|
|
2658
|
+
const isRequired = item.isRequired;
|
|
2659
|
+
summary.push(joinAndCompact([
|
|
2660
|
+
icon,
|
|
2661
|
+
ansis_default[VALIDATION_STATE_COLORS[item.validationState]](item.key) + (isRequired ? ansis_default.magenta("*") : ""),
|
|
2662
|
+
// ansis.gray(`[type = ${item.type.typeLabel}]`),
|
|
2663
|
+
isSensitive && ` \u{1F510}${ansis_default.gray.italic("sensitive")}`
|
|
2664
|
+
// item.useAt ? ansis.gray.italic(`(${item.useAt?.join(', ')})`) : undefined,
|
|
2665
|
+
]));
|
|
2666
|
+
let valAsStr = formattedValue(item.resolvedValue, false);
|
|
2667
|
+
if (isSensitive && item.resolvedValue && my_dash_default.isString(item.resolvedValue)) {
|
|
2668
|
+
valAsStr = redactString(item.resolvedValue);
|
|
2669
|
+
}
|
|
2670
|
+
summary.push(joinAndCompact([
|
|
2671
|
+
ansis_default.gray(" \u2514"),
|
|
2672
|
+
valAsStr,
|
|
2673
|
+
item.isCoerced && ansis_default.gray.italic("< coerced from ") + (isSensitive ? formattedValue(item.resolvedRawValue) : formattedValue(item.resolvedRawValue, false))
|
|
2674
|
+
]));
|
|
2675
|
+
itemErrors?.forEach((err) => {
|
|
2676
|
+
summary.push(ansis_default[err.isWarning ? "yellow" : "red"](` - ${err.isWarning ? "[WARNING] " : ""}${err.message}`));
|
|
2677
|
+
if (err.tip) {
|
|
2678
|
+
summary.push(...err.tip.split("\n").map((line) => ` ${line}`));
|
|
2679
|
+
}
|
|
2680
|
+
});
|
|
2681
|
+
return summary.join("\n");
|
|
2682
|
+
}
|
|
2683
|
+
__name(getItemSummary, "getItemSummary");
|
|
2684
|
+
var asyncCallbacks = /* @__PURE__ */ new Set();
|
|
2685
|
+
var callbacks = /* @__PURE__ */ new Set();
|
|
2686
|
+
var isCalled = false;
|
|
2687
|
+
var isRegistered = false;
|
|
2688
|
+
async function exit(shouldManuallyExit, isSynchronous, signal) {
|
|
2689
|
+
if (isCalled) {
|
|
2690
|
+
return;
|
|
2691
|
+
}
|
|
2692
|
+
isCalled = true;
|
|
2693
|
+
if (asyncCallbacks.size > 0 && isSynchronous) {
|
|
2694
|
+
console.error([
|
|
2695
|
+
"SYNCHRONOUS TERMINATION NOTICE:",
|
|
2696
|
+
"When explicitly exiting the process via process.exit or via a parent process,",
|
|
2697
|
+
"asynchronous tasks in your exitHooks will not run. Either remove these tasks,",
|
|
2698
|
+
"use gracefulExit() instead of process.exit(), or ensure your parent process",
|
|
2699
|
+
"sends a SIGINT to the process running this code."
|
|
2700
|
+
].join(" "));
|
|
2701
|
+
}
|
|
2702
|
+
const exitCode = 128 + signal;
|
|
2703
|
+
const done = /* @__PURE__ */ __name((force = false) => {
|
|
2704
|
+
if (force === true || shouldManuallyExit === true) {
|
|
2705
|
+
process2.exit(exitCode);
|
|
2706
|
+
}
|
|
2707
|
+
}, "done");
|
|
2708
|
+
for (const callback of callbacks) {
|
|
2709
|
+
callback(exitCode);
|
|
2710
|
+
}
|
|
2711
|
+
if (isSynchronous) {
|
|
2712
|
+
done();
|
|
2713
|
+
return;
|
|
2714
|
+
}
|
|
2715
|
+
const promises = [];
|
|
2716
|
+
let forceAfter = 0;
|
|
2717
|
+
for (const [callback, wait] of asyncCallbacks) {
|
|
2718
|
+
forceAfter = Math.max(forceAfter, wait);
|
|
2719
|
+
promises.push(Promise.resolve(callback(exitCode)));
|
|
2720
|
+
}
|
|
2721
|
+
const asyncTimer = setTimeout(() => {
|
|
2722
|
+
done(true);
|
|
2723
|
+
}, forceAfter);
|
|
2724
|
+
await Promise.all(promises);
|
|
2725
|
+
clearTimeout(asyncTimer);
|
|
2726
|
+
done();
|
|
2727
|
+
}
|
|
2728
|
+
__name(exit, "exit");
|
|
2729
|
+
function addHook(options) {
|
|
2730
|
+
const { onExit, wait, isSynchronous } = options;
|
|
2731
|
+
const asyncCallbackConfig = [onExit, wait];
|
|
2732
|
+
if (isSynchronous) {
|
|
2733
|
+
callbacks.add(onExit);
|
|
2734
|
+
} else {
|
|
2735
|
+
asyncCallbacks.add(asyncCallbackConfig);
|
|
2736
|
+
}
|
|
2737
|
+
if (!isRegistered) {
|
|
2738
|
+
isRegistered = true;
|
|
2739
|
+
process2.once("beforeExit", exit.bind(void 0, true, false, -128));
|
|
2740
|
+
process2.once("SIGINT", exit.bind(void 0, true, false, 2));
|
|
2741
|
+
process2.once("SIGTERM", exit.bind(void 0, true, false, 15));
|
|
2742
|
+
process2.once("exit", exit.bind(void 0, false, true, 0));
|
|
2743
|
+
process2.on("message", (message) => {
|
|
2744
|
+
if (message === "shutdown") {
|
|
2745
|
+
exit(true, true, -128);
|
|
2746
|
+
}
|
|
2747
|
+
});
|
|
2748
|
+
}
|
|
2749
|
+
return () => {
|
|
2750
|
+
if (isSynchronous) {
|
|
2751
|
+
callbacks.delete(onExit);
|
|
2752
|
+
} else {
|
|
2753
|
+
asyncCallbacks.delete(asyncCallbackConfig);
|
|
2754
|
+
}
|
|
2755
|
+
};
|
|
2756
|
+
}
|
|
2757
|
+
__name(addHook, "addHook");
|
|
2758
|
+
function asyncExitHook(onExit, options = {}) {
|
|
2759
|
+
if (typeof onExit !== "function") {
|
|
2760
|
+
throw new TypeError("onExit must be a function");
|
|
2761
|
+
}
|
|
2762
|
+
if (!(typeof options.wait === "number" && options.wait > 0)) {
|
|
2763
|
+
throw new TypeError("wait must be set to a positive numeric value");
|
|
2764
|
+
}
|
|
2765
|
+
return addHook({
|
|
2766
|
+
onExit,
|
|
2767
|
+
wait: options.wait,
|
|
2768
|
+
isSynchronous: false
|
|
2769
|
+
});
|
|
2770
|
+
}
|
|
2771
|
+
__name(asyncExitHook, "asyncExitHook");
|
|
2772
|
+
function gracefulExit(signal = 0) {
|
|
2773
|
+
exit(true, false, -128 + signal);
|
|
2774
|
+
}
|
|
2775
|
+
__name(gracefulExit, "gracefulExit");
|
|
2776
|
+
//! these are probably not relevant anymore, or needs to move to a plugin layer?
|
|
2435
2777
|
|
|
2436
|
-
export { DotEnvFileDataSource, EnvGraph2 as EnvGraph, EnvSourceParseError,
|
|
2437
|
-
//# sourceMappingURL=chunk-
|
|
2438
|
-
//# sourceMappingURL=chunk-
|
|
2778
|
+
export { CoercionError, ConfigLoadError, DotEnvFileDataSource, EnvGraph2 as EnvGraph, EnvSourceParseError, ProcessEnvDataSource, ResolutionError, SchemaError, StaticValueResolver, ValidationError, ansis_default, asyncExitHook, checkIsFileGitIgnored, getItemSummary, gracefulExit, joinAndCompact, loadEnvGraph, my_dash_default };
|
|
2779
|
+
//# sourceMappingURL=chunk-ZW2T4C6A.js.map
|
|
2780
|
+
//# sourceMappingURL=chunk-ZW2T4C6A.js.map
|