effect-errors 1.3.12 → 1.4.2
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/README.md +10 -6
- package/cjs/capture-errors.js +74 -0
- package/cjs/capture-errors.js.map +1 -0
- package/cjs/index.js +61 -0
- package/cjs/index.js.map +1 -0
- package/cjs/logic/errors/capture-errors-from-cause.js +18 -0
- package/cjs/logic/errors/capture-errors-from-cause.js.map +1 -0
- package/cjs/logic/errors/extract-error-details.js +63 -0
- package/cjs/logic/errors/extract-error-details.js.map +1 -0
- package/cjs/logic/errors/parse-error.js +24 -0
- package/cjs/logic/errors/parse-error.js.map +1 -0
- package/cjs/logic/pretty-printing/format-failures-title.js +15 -0
- package/cjs/logic/pretty-printing/format-failures-title.js.map +1 -0
- package/cjs/logic/pretty-printing/format-span-attributes.js +55 -0
- package/cjs/logic/pretty-printing/format-span-attributes.js.map +1 -0
- package/cjs/logic/pretty-printing/maybe-print-node-stacktrace.js +24 -0
- package/cjs/logic/pretty-printing/maybe-print-node-stacktrace.js.map +1 -0
- package/cjs/logic/pretty-printing/maybe-print-span-attributes.js +31 -0
- package/cjs/logic/pretty-printing/maybe-print-span-attributes.js.map +1 -0
- package/cjs/logic/pretty-printing/maybe-warn-about-plain-strings.js +20 -0
- package/cjs/logic/pretty-printing/maybe-warn-about-plain-strings.js.map +1 -0
- package/cjs/logic/pretty-printing/print-effect-stacktrace.js +24 -0
- package/cjs/logic/pretty-printing/print-effect-stacktrace.js.map +1 -0
- package/cjs/logic/spans/get-span-attributes.js +33 -0
- package/cjs/logic/spans/get-span-attributes.js.map +1 -0
- package/cjs/logic/spans/get-span-duration.js +21 -0
- package/cjs/logic/spans/get-span-duration.js.map +1 -0
- package/cjs/logic/spans/spans-stack-trailing-char.js +15 -0
- package/cjs/logic/spans/spans-stack-trailing-char.js.map +1 -0
- package/cjs/logic/spans/split-spans-attributes-by-type.js +23 -0
- package/cjs/logic/spans/split-spans-attributes-by-type.js.map +1 -0
- package/cjs/logic/stack/filter-stack.js +21 -0
- package/cjs/logic/stack/filter-stack.js.map +1 -0
- package/cjs/logic/strip-cwd-path.js +10 -0
- package/cjs/logic/strip-cwd-path.js.map +1 -0
- package/cjs/pretty-print.js +43 -0
- package/cjs/pretty-print.js.map +1 -0
- package/cjs/runners/run-promise.js +18 -0
- package/cjs/runners/run-promise.js.map +1 -0
- package/cjs/runners/run-sync.js +18 -0
- package/cjs/runners/run-sync.js.map +1 -0
- package/cjs/types/pretty-error.type.js +22 -0
- package/cjs/types/pretty-error.type.js.map +1 -0
- package/cjs/types/pretty-print-options.type.js +12 -0
- package/cjs/types/pretty-print-options.type.js.map +1 -0
- package/{capture-errors.d.ts → dts/capture-errors.d.ts} +3 -1
- package/dts/capture-errors.d.ts.map +1 -0
- package/dts/index.d.ts +6 -0
- package/dts/index.d.ts.map +1 -0
- package/{logic → dts/logic}/errors/capture-errors-from-cause.d.ts +1 -0
- package/dts/logic/errors/capture-errors-from-cause.d.ts.map +1 -0
- package/{logic → dts/logic}/errors/extract-error-details.d.ts +1 -0
- package/dts/logic/errors/extract-error-details.d.ts.map +1 -0
- package/{logic → dts/logic}/errors/parse-error.d.ts +1 -0
- package/dts/logic/errors/parse-error.d.ts.map +1 -0
- package/dts/logic/pretty-printing/format-failures-title.d.ts +2 -0
- package/dts/logic/pretty-printing/format-failures-title.d.ts.map +1 -0
- package/dts/logic/pretty-printing/format-span-attributes.d.ts +7 -0
- package/dts/logic/pretty-printing/format-span-attributes.d.ts.map +1 -0
- package/dts/logic/pretty-printing/maybe-print-node-stacktrace.d.ts +4 -0
- package/dts/logic/pretty-printing/maybe-print-node-stacktrace.d.ts.map +1 -0
- package/dts/logic/pretty-printing/maybe-print-span-attributes.d.ts +4 -0
- package/dts/logic/pretty-printing/maybe-print-span-attributes.d.ts.map +1 -0
- package/dts/logic/pretty-printing/maybe-warn-about-plain-strings.d.ts +2 -0
- package/dts/logic/pretty-printing/maybe-warn-about-plain-strings.d.ts.map +1 -0
- package/dts/logic/pretty-printing/print-effect-stacktrace.d.ts +4 -0
- package/dts/logic/pretty-printing/print-effect-stacktrace.d.ts.map +1 -0
- package/dts/logic/spans/get-span-attributes.d.ts +5 -0
- package/dts/logic/spans/get-span-attributes.d.ts.map +1 -0
- package/{logic → dts/logic}/spans/get-span-duration.d.ts +1 -0
- package/dts/logic/spans/get-span-duration.d.ts.map +1 -0
- package/{logic → dts/logic}/spans/spans-stack-trailing-char.d.ts +1 -0
- package/dts/logic/spans/spans-stack-trailing-char.d.ts.map +1 -0
- package/dts/logic/spans/split-spans-attributes-by-type.d.ts +7 -0
- package/dts/logic/spans/split-spans-attributes-by-type.d.ts.map +1 -0
- package/{logic → dts/logic}/stack/filter-stack.d.ts +1 -0
- package/dts/logic/stack/filter-stack.d.ts.map +1 -0
- package/{logic → dts/logic}/strip-cwd-path.d.ts +1 -0
- package/dts/logic/strip-cwd-path.d.ts.map +1 -0
- package/dts/pretty-print.d.ts +4 -0
- package/dts/pretty-print.d.ts.map +1 -0
- package/{runners → dts/runners}/run-promise.d.ts +1 -0
- package/dts/runners/run-promise.d.ts.map +1 -0
- package/{runners → dts/runners}/run-sync.d.ts +1 -0
- package/dts/runners/run-sync.d.ts.map +1 -0
- package/{types → dts/types}/pretty-error.type.d.ts +1 -0
- package/dts/types/pretty-error.type.d.ts.map +1 -0
- package/{types → dts/types}/pretty-print-options.type.d.ts +1 -0
- package/dts/types/pretty-print-options.type.d.ts.map +1 -0
- package/esm/capture-errors.js +67 -0
- package/esm/capture-errors.js.map +1 -0
- package/{index.d.ts → esm/index.js} +1 -0
- package/esm/index.js.map +1 -0
- package/esm/logic/errors/capture-errors-from-cause.js +11 -0
- package/esm/logic/errors/capture-errors-from-cause.js.map +1 -0
- package/esm/logic/errors/extract-error-details.js +56 -0
- package/esm/logic/errors/extract-error-details.js.map +1 -0
- package/esm/logic/errors/parse-error.js +17 -0
- package/esm/logic/errors/parse-error.js.map +1 -0
- package/esm/logic/pretty-printing/format-failures-title.js +3 -0
- package/esm/logic/pretty-printing/format-failures-title.js.map +1 -0
- package/esm/logic/pretty-printing/format-span-attributes.js +43 -0
- package/esm/logic/pretty-printing/format-span-attributes.js.map +1 -0
- package/esm/logic/pretty-printing/maybe-print-node-stacktrace.js +12 -0
- package/esm/logic/pretty-printing/maybe-print-node-stacktrace.js.map +1 -0
- package/esm/logic/pretty-printing/maybe-print-span-attributes.js +19 -0
- package/esm/logic/pretty-printing/maybe-print-span-attributes.js.map +1 -0
- package/esm/logic/pretty-printing/maybe-warn-about-plain-strings.js +8 -0
- package/esm/logic/pretty-printing/maybe-warn-about-plain-strings.js.map +1 -0
- package/esm/logic/pretty-printing/print-effect-stacktrace.js +12 -0
- package/esm/logic/pretty-printing/print-effect-stacktrace.js.map +1 -0
- package/esm/logic/spans/get-span-attributes.js +21 -0
- package/esm/logic/spans/get-span-attributes.js.map +1 -0
- package/esm/logic/spans/get-span-duration.js +9 -0
- package/esm/logic/spans/get-span-duration.js.map +1 -0
- package/esm/logic/spans/spans-stack-trailing-char.js +3 -0
- package/esm/logic/spans/spans-stack-trailing-char.js.map +1 -0
- package/esm/logic/spans/split-spans-attributes-by-type.js +16 -0
- package/esm/logic/spans/split-spans-attributes-by-type.js.map +1 -0
- package/esm/logic/stack/filter-stack.js +14 -0
- package/esm/logic/stack/filter-stack.js.map +1 -0
- package/esm/logic/strip-cwd-path.js +3 -0
- package/esm/logic/strip-cwd-path.js.map +1 -0
- package/esm/pretty-print.js +31 -0
- package/esm/pretty-print.js.map +1 -0
- package/esm/runners/run-promise.js +11 -0
- package/esm/runners/run-promise.js.map +1 -0
- package/esm/runners/run-sync.js +11 -0
- package/esm/runners/run-sync.js.map +1 -0
- package/esm/types/pretty-error.type.js +15 -0
- package/esm/types/pretty-error.type.js.map +1 -0
- package/esm/types/pretty-print-options.type.js +6 -0
- package/esm/types/pretty-print-options.type.js.map +1 -0
- package/package.json +29 -14
- package/capture-errors.js +0 -51
- package/capture-errors.test.d.ts +0 -1
- package/capture-errors.test.js +0 -162
- package/examples/errors/fetch-error.d.ts +0 -9
- package/examples/errors/fetch-error.js +0 -27
- package/examples/errors/file-error.d.ts +0 -9
- package/examples/errors/file-error.js +0 -27
- package/examples/errors/user-not-found.error.d.ts +0 -9
- package/examples/errors/user-not-found.error.js +0 -27
- package/examples/from-promise.d.ts +0 -5
- package/examples/from-promise.js +0 -113
- package/examples/parallel-errors.d.ts +0 -4
- package/examples/parallel-errors.js +0 -69
- package/examples/util/filename.effect.d.ts +0 -2
- package/examples/util/filename.effect.js +0 -11
- package/index.js +0 -21
- package/logic/errors/capture-errors-from-cause.js +0 -41
- package/logic/errors/extract-error-details.js +0 -74
- package/logic/errors/parse-error.js +0 -19
- package/logic/spans/get-span-attributes.d.ts +0 -1
- package/logic/spans/get-span-attributes.js +0 -36
- package/logic/spans/get-span-duration.js +0 -15
- package/logic/spans/spans-stack-trailing-char.js +0 -11
- package/logic/stack/filter-stack.js +0 -39
- package/logic/strip-cwd-path.js +0 -8
- package/pretty-print.d.ts +0 -3
- package/pretty-print.js +0 -75
- package/runners/run-promise.js +0 -89
- package/runners/run-sync.js +0 -17
- package/tests/mocks/console.mock.d.ts +0 -9
- package/tests/mocks/console.mock.js +0 -66
- package/tests/runners/effect-cause.d.ts +0 -2
- package/tests/runners/effect-cause.js +0 -49
- package/types/pretty-error.type.js +0 -14
- package/types/pretty-print-options.type.js +0 -8
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"split-spans-attributes-by-type.js","names":["splitSpansAttributesByTypes","attributes","Array","from","entries","reduce","prev","key","value","stacktrace","Map","exports"],"sources":["../../../../src/logic/spans/split-spans-attributes-by-type.ts"],"sourcesContent":[null],"mappings":";;;;;;AAKO,MAAMA,2BAA2B,GACtCC,UAAwC,IAExCC,KAAK,CAACC,IAAI,CAACF,UAAU,CAACG,OAAO,EAAE,CAAC,CAACC,MAAM,CACrC,CAACC,IAAI,EAAE,CAACC,GAAG,EAAEC,KAAK,CAAC,KAAI;EACrB,IAAID,GAAG,KAAK,iBAAiB,EAAE;IAC7B,OAAO;MACLN,UAAU,EAAEK,IAAI,CAACL,UAAU;MAC3BQ,UAAU,EAAE,CAAC,GAAGH,IAAI,CAACG,UAAU,EAAED,KAAK;KACvC;EACH;EAEA,OAAO;IACLP,UAAU,EAAE,IAAIS,GAAG,CAAC,CAAC,GAAGJ,IAAI,CAACL,UAAU,EAAE,CAACM,GAAG,EAAEC,KAAK,CAAC,CAAC,CAAC;IACvDC,UAAU,EAAEH,IAAI,CAACG;GAClB;AACH,CAAC,EACD;EACEA,UAAU,EAAE,EAAE;EACdR,UAAU,EAAE,IAAIS,GAAG;CACpB,CACF;AAACC,OAAA,CAAAX,2BAAA,GAAAA,2BAAA","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.filterStack = void 0;
|
|
7
|
+
var _stripCwdPath = /*#__PURE__*/require("../strip-cwd-path");
|
|
8
|
+
const filterStack = (stack, stripCwd) => {
|
|
9
|
+
const lines = stack.split('\r\n');
|
|
10
|
+
const out = [];
|
|
11
|
+
for (const line of lines) {
|
|
12
|
+
out.push(line.replace(/at .*effect_cutpoint.*\((.*)\)/, 'at $1'));
|
|
13
|
+
if (line.includes('effect_cutpoint')) {
|
|
14
|
+
return out.join('\r\n');
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
const final = out.join('\r\n').replace(/ {4}at /g, '│ at ');
|
|
18
|
+
return stripCwd ? (0, _stripCwdPath.stripCwdPath)(final) : final;
|
|
19
|
+
};
|
|
20
|
+
exports.filterStack = filterStack;
|
|
21
|
+
//# sourceMappingURL=filter-stack.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter-stack.js","names":["_stripCwdPath","require","filterStack","stack","stripCwd","lines","split","out","line","push","replace","includes","join","final","stripCwdPath","exports"],"sources":["../../../../src/logic/stack/filter-stack.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,aAAA,gBAAAC,OAAA;AAEO,MAAMC,WAAW,GAAGA,CAACC,KAAa,EAAEC,QAAiB,KAAI;EAC9D,MAAMC,KAAK,GAAGF,KAAK,CAACG,KAAK,CAAC,MAAM,CAAC;EACjC,MAAMC,GAAG,GAAa,EAAE;EAExB,KAAK,MAAMC,IAAI,IAAIH,KAAK,EAAE;IACxBE,GAAG,CAACE,IAAI,CAACD,IAAI,CAACE,OAAO,CAAC,gCAAgC,EAAE,OAAO,CAAC,CAAC;IAEjE,IAAIF,IAAI,CAACG,QAAQ,CAAC,iBAAiB,CAAC,EAAE;MACpC,OAAOJ,GAAG,CAACK,IAAI,CAAC,MAAM,CAAC;IACzB;EACF;EAEA,MAAMC,KAAK,GAAGN,GAAG,CAACK,IAAI,CAAC,MAAM,CAAC,CAACF,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC;EAE3D,OAAON,QAAQ,GAAG,IAAAJ,aAAA,CAAAc,YAAY,EAACD,KAAK,CAAC,GAAGA,KAAK;AAC/C,CAAC;AAACE,OAAA,CAAAb,WAAA,GAAAA,WAAA","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.stripCwdPath = void 0;
|
|
7
|
+
const cwdRegex = global.process !== undefined ? /*#__PURE__*/new RegExp( /*#__PURE__*/global.process.cwd(), 'g') : null;
|
|
8
|
+
const stripCwdPath = path => cwdRegex === null ? path : path.replace(cwdRegex, '.');
|
|
9
|
+
exports.stripCwdPath = stripCwdPath;
|
|
10
|
+
//# sourceMappingURL=strip-cwd-path.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"strip-cwd-path.js","names":["cwdRegex","global","process","undefined","RegExp","cwd","stripCwdPath","path","replace","exports"],"sources":["../../../src/logic/strip-cwd-path.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,MAAMA,QAAQ,GACZC,MAAM,CAACC,OAAO,KAAKC,SAAS,gBAAG,IAAIC,MAAM,eAACH,MAAM,CAACC,OAAO,CAACG,GAAG,EAAE,EAAE,GAAG,CAAC,GAAG,IAAI;AAEtE,MAAMC,YAAY,GAAIC,IAAY,IACvCP,QAAQ,KAAK,IAAI,GAAGO,IAAI,GAAGA,IAAI,CAACC,OAAO,CAACR,QAAQ,EAAE,GAAG,CAAC;AAACS,OAAA,CAAAH,YAAA,GAAAA,YAAA","ignoreList":[]}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.prettyPrint = void 0;
|
|
7
|
+
var _chalk = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("chalk"));
|
|
8
|
+
var _Cause = /*#__PURE__*/require("effect/Cause");
|
|
9
|
+
var _captureErrorsFromCause = /*#__PURE__*/require("./logic/errors/capture-errors-from-cause");
|
|
10
|
+
var _formatFailuresTitle = /*#__PURE__*/require("./logic/pretty-printing/format-failures-title");
|
|
11
|
+
var _maybePrintNodeStacktrace = /*#__PURE__*/require("./logic/pretty-printing/maybe-print-node-stacktrace");
|
|
12
|
+
var _maybePrintSpanAttributes = /*#__PURE__*/require("./logic/pretty-printing/maybe-print-span-attributes");
|
|
13
|
+
var _maybeWarnAboutPlainStrings = /*#__PURE__*/require("./logic/pretty-printing/maybe-warn-about-plain-strings");
|
|
14
|
+
var _printEffectStacktrace = /*#__PURE__*/require("./logic/pretty-printing/print-effect-stacktrace");
|
|
15
|
+
var _prettyPrintOptions = /*#__PURE__*/require("./types/pretty-print-options.type");
|
|
16
|
+
function _interopRequireDefault(obj) {
|
|
17
|
+
return obj && obj.__esModule ? obj : {
|
|
18
|
+
default: obj
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
const prettyPrint = (cause, options = _prettyPrintOptions.prettyPrintOptionsDefault) => {
|
|
22
|
+
if ((0, _Cause.isInterruptedOnly)(cause)) {
|
|
23
|
+
return 'All fibers interrupted without errors.';
|
|
24
|
+
}
|
|
25
|
+
const failures = (0, _captureErrorsFromCause.captureErrorsFrom)(cause);
|
|
26
|
+
const title = `\r\n🫠 ${_chalk.default.bold.yellowBright.underline(`${failures.length} error${failures.length > 1 ? 's' : ''} occured\r\n`)}\r\n`;
|
|
27
|
+
return title + failures.map(({
|
|
28
|
+
errorType,
|
|
29
|
+
message: errorMessage,
|
|
30
|
+
stack,
|
|
31
|
+
span,
|
|
32
|
+
isPlainString
|
|
33
|
+
}, failureIndex) => {
|
|
34
|
+
const d = [(0, _formatFailuresTitle.formatFailuresTitle)(errorType, errorMessage, failures.length, failureIndex)];
|
|
35
|
+
(0, _maybeWarnAboutPlainStrings.maybeWarnAboutPlainStrings)(d, isPlainString);
|
|
36
|
+
const spanAttributesStack = (0, _maybePrintSpanAttributes.maybePrintSpanAttributes)(d, span, isPlainString, options);
|
|
37
|
+
(0, _printEffectStacktrace.printEffectStacktrace)(d, span, spanAttributesStack, options);
|
|
38
|
+
(0, _maybePrintNodeStacktrace.maybePrintNodeStacktrace)(d, span, stack, isPlainString, options);
|
|
39
|
+
return [...d, '\r\n'].join('');
|
|
40
|
+
}).join('\r\n');
|
|
41
|
+
};
|
|
42
|
+
exports.prettyPrint = prettyPrint;
|
|
43
|
+
//# sourceMappingURL=pretty-print.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pretty-print.js","names":["_chalk","_interopRequireDefault","require","_Cause","_captureErrorsFromCause","_formatFailuresTitle","_maybePrintNodeStacktrace","_maybePrintSpanAttributes","_maybeWarnAboutPlainStrings","_printEffectStacktrace","_prettyPrintOptions","obj","__esModule","default","prettyPrint","cause","options","prettyPrintOptionsDefault","isInterruptedOnly","failures","captureErrorsFrom","title","bold","yellowBright","underline","length","map","errorType","message","errorMessage","stack","span","isPlainString","failureIndex","d","formatFailuresTitle","maybeWarnAboutPlainStrings","spanAttributesStack","maybePrintSpanAttributes","printEffectStacktrace","maybePrintNodeStacktrace","join","exports"],"sources":["../../src/pretty-print.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,MAAA,gBAAAC,sBAAA,eAAAC,OAAA;AACA,IAAAC,MAAA,gBAAAD,OAAA;AAEA,IAAAE,uBAAA,gBAAAF,OAAA;AACA,IAAAG,oBAAA,gBAAAH,OAAA;AACA,IAAAI,yBAAA,gBAAAJ,OAAA;AACA,IAAAK,yBAAA,gBAAAL,OAAA;AACA,IAAAM,2BAAA,gBAAAN,OAAA;AACA,IAAAO,sBAAA,gBAAAP,OAAA;AACA,IAAAQ,mBAAA,gBAAAR,OAAA;AAG2C,SAAAD,uBAAAU,GAAA;EAAA,OAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA;IAAAE,OAAA,EAAAF;EAAA;AAAA;AAEpC,MAAMG,WAAW,GAAGA,CACzBC,KAAe,EACfC,OAAA,GAA8BN,mBAAA,CAAAO,yBAAyB,KAC7C;EACV,IAAI,IAAAd,MAAA,CAAAe,iBAAiB,EAACH,KAAK,CAAC,EAAE;IAC5B,OAAO,wCAAwC;EACjD;EAEA,MAAMI,QAAQ,GAAG,IAAAf,uBAAA,CAAAgB,iBAAiB,EAAIL,KAAK,CAAC;EAE5C,MAAMM,KAAK,GAAG,WAAWrB,MAAA,CAAAa,OAAK,CAACS,IAAI,CAACC,YAAY,CAACC,SAAS,CACxD,GAAGL,QAAQ,CAACM,MAAM,SAASN,QAAQ,CAACM,MAAM,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,cAAc,CACxE,MAAM;EAEP,OACEJ,KAAK,GACLF,QAAQ,CACLO,GAAG,CACF,CACE;IAAEC,SAAS;IAAEC,OAAO,EAAEC,YAAY;IAAEC,KAAK;IAAEC,IAAI;IAAEC;EAAa,CAAE,EAChEC,YAAY,KACV;IACF,MAAMC,CAAC,GAAa,CAClB,IAAA7B,oBAAA,CAAA8B,mBAAmB,EACjBR,SAAS,EACTE,YAAY,EACZV,QAAQ,CAACM,MAAM,EACfQ,YAAY,CACb,CACF;IAED,IAAAzB,2BAAA,CAAA4B,0BAA0B,EAACF,CAAC,EAAEF,aAAa,CAAC;IAE5C,MAAMK,mBAAmB,GAAG,IAAA9B,yBAAA,CAAA+B,wBAAwB,EAClDJ,CAAC,EACDH,IAAI,EACJC,aAAa,EACbhB,OAAO,CACR;IAED,IAAAP,sBAAA,CAAA8B,qBAAqB,EAACL,CAAC,EAAEH,IAAI,EAAEM,mBAAmB,EAAErB,OAAO,CAAC;IAC5D,IAAAV,yBAAA,CAAAkC,wBAAwB,EAACN,CAAC,EAAEH,IAAI,EAAED,KAAK,EAAEE,aAAa,EAAEhB,OAAO,CAAC;IAEhE,OAAO,CAAC,GAAGkB,CAAC,EAAE,MAAM,CAAC,CAACO,IAAI,CAAC,EAAE,CAAC;EAChC,CAAC,CACF,CACAA,IAAI,CAAC,MAAM,CAAC;AAEnB,CAAC;AAACC,OAAA,CAAA5B,WAAA,GAAAA,WAAA","ignoreList":[]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.runPromise = void 0;
|
|
7
|
+
var _effect = /*#__PURE__*/require("effect");
|
|
8
|
+
var _ = /*#__PURE__*/require("..");
|
|
9
|
+
var _prettyPrintOptions = /*#__PURE__*/require("../types/pretty-print-options.type");
|
|
10
|
+
const runPromise = async (effect, options = _prettyPrintOptions.prettyPrintOptionsDefault) => await _effect.Effect.runPromise((0, _effect.pipe)(effect, _effect.Effect.sandbox, _effect.Effect.catchAll(e => {
|
|
11
|
+
if (options.enabled === false) {
|
|
12
|
+
return _effect.Effect.fail(e);
|
|
13
|
+
}
|
|
14
|
+
console.error((0, _.prettyPrint)(e, options));
|
|
15
|
+
return _effect.Effect.fail('❌ runPromise failure');
|
|
16
|
+
})));
|
|
17
|
+
exports.runPromise = runPromise;
|
|
18
|
+
//# sourceMappingURL=run-promise.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-promise.js","names":["_effect","require","_","_prettyPrintOptions","runPromise","effect","options","prettyPrintOptionsDefault","Effect","pipe","sandbox","catchAll","e","enabled","fail","console","error","prettyPrint","exports"],"sources":["../../../src/runners/run-promise.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,OAAA,gBAAAC,OAAA;AAEA,IAAAC,CAAA,gBAAAD,OAAA;AACA,IAAAE,mBAAA,gBAAAF,OAAA;AAKO,MAAMG,UAAU,GAAG,MAAAA,CACxBC,MAA2B,EAC3BC,OAAA,GAA8BH,mBAAA,CAAAI,yBAAyB,KAEvD,MAAMP,OAAA,CAAAQ,MAAM,CAACJ,UAAU,CACrB,IAAAJ,OAAA,CAAAS,IAAI,EACFJ,MAAM,EACNL,OAAA,CAAAQ,MAAM,CAACE,OAAO,EACdV,OAAA,CAAAQ,MAAM,CAACG,QAAQ,CAAEC,CAAC,IAAI;EACpB,IAAIN,OAAO,CAACO,OAAO,KAAK,KAAK,EAAE;IAC7B,OAAOb,OAAA,CAAAQ,MAAM,CAACM,IAAI,CAACF,CAAC,CAAC;EACvB;EAEAG,OAAO,CAACC,KAAK,CAAC,IAAAd,CAAA,CAAAe,WAAW,EAACL,CAAC,EAAEN,OAAO,CAAC,CAAC;EAEtC,OAAON,OAAA,CAAAQ,MAAM,CAACM,IAAI,CAAC,sBAAsB,CAAU;AACrD,CAAC,CAAC,CACH,CACF;AAACI,OAAA,CAAAd,UAAA,GAAAA,UAAA","ignoreList":[]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.runSync = void 0;
|
|
7
|
+
var _effect = /*#__PURE__*/require("effect");
|
|
8
|
+
var _ = /*#__PURE__*/require("..");
|
|
9
|
+
var _prettyPrintOptions = /*#__PURE__*/require("../types/pretty-print-options.type");
|
|
10
|
+
const runSync = (effect, options = _prettyPrintOptions.prettyPrintOptionsDefault) => _effect.Effect.runSync((0, _effect.pipe)(effect, _effect.Effect.sandbox, _effect.Effect.catchAll(e => {
|
|
11
|
+
if (options.enabled === true) {
|
|
12
|
+
console.error((0, _.prettyPrint)(e, options));
|
|
13
|
+
return _effect.Effect.fail('❌ runSync failure');
|
|
14
|
+
}
|
|
15
|
+
return _effect.Effect.fail(e);
|
|
16
|
+
})));
|
|
17
|
+
exports.runSync = runSync;
|
|
18
|
+
//# sourceMappingURL=run-sync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-sync.js","names":["_effect","require","_","_prettyPrintOptions","runSync","effect","options","prettyPrintOptionsDefault","Effect","pipe","sandbox","catchAll","e","enabled","console","error","prettyPrint","fail","exports"],"sources":["../../../src/runners/run-sync.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,OAAA,gBAAAC,OAAA;AAEA,IAAAC,CAAA,gBAAAD,OAAA;AACA,IAAAE,mBAAA,gBAAAF,OAAA;AAKO,MAAMG,OAAO,GAAGA,CACrBC,MAA2B,EAC3BC,OAAA,GAA8BH,mBAAA,CAAAI,yBAAyB,KAEvDP,OAAA,CAAAQ,MAAM,CAACJ,OAAO,CACZ,IAAAJ,OAAA,CAAAS,IAAI,EACFJ,MAAM,EACNL,OAAA,CAAAQ,MAAM,CAACE,OAAO,EACdV,OAAA,CAAAQ,MAAM,CAACG,QAAQ,CAAEC,CAAC,IAAI;EACpB,IAAIN,OAAO,CAACO,OAAO,KAAK,IAAI,EAAE;IAC5BC,OAAO,CAACC,KAAK,CAAC,IAAAb,CAAA,CAAAc,WAAW,EAACJ,CAAC,EAAEN,OAAO,CAAC,CAAC;IAEtC,OAAON,OAAA,CAAAQ,MAAM,CAACS,IAAI,CAAC,mBAAmB,CAAU;EAClD;EAEA,OAAOjB,OAAA,CAAAQ,MAAM,CAACS,IAAI,CAACL,CAAC,CAAC;AACvB,CAAC,CAAC,CACH,CACF;AAACM,OAAA,CAAAd,OAAA,GAAAA,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.PrettyError = void 0;
|
|
7
|
+
class PrettyError {
|
|
8
|
+
message;
|
|
9
|
+
stack;
|
|
10
|
+
span;
|
|
11
|
+
isPlainString;
|
|
12
|
+
errorType;
|
|
13
|
+
constructor(message, stack, span, isPlainString, errorType) {
|
|
14
|
+
this.message = message;
|
|
15
|
+
this.stack = stack;
|
|
16
|
+
this.span = span;
|
|
17
|
+
this.isPlainString = isPlainString;
|
|
18
|
+
this.errorType = errorType;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
exports.PrettyError = PrettyError;
|
|
22
|
+
//# sourceMappingURL=pretty-error.type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pretty-error.type.js","names":["PrettyError","message","stack","span","isPlainString","errorType","constructor","exports"],"sources":["../../../src/types/pretty-error.type.ts"],"sourcesContent":[null],"mappings":";;;;;;AAEM,MAAOA,WAAW;EAEXC,OAAA;EACAC,KAAA;EACAC,IAAA;EACAC,aAAA;EACAC,SAAA;EALXC,YACWL,OAAgB,EAChBC,KAAyB,EACzBC,IAAsB,EACtBC,aAAsB,EACtBC,SAAmB;IAJnB,KAAAJ,OAAO,GAAPA,OAAO;IACP,KAAAC,KAAK,GAALA,KAAK;IACL,KAAAC,IAAI,GAAJA,IAAI;IACJ,KAAAC,aAAa,GAAbA,aAAa;IACb,KAAAC,SAAS,GAATA,SAAS;EACjB;;AACJE,OAAA,CAAAP,WAAA,GAAAA,WAAA","ignoreList":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.prettyPrintOptionsDefault = void 0;
|
|
7
|
+
const prettyPrintOptionsDefault = exports.prettyPrintOptionsDefault = {
|
|
8
|
+
enabled: true,
|
|
9
|
+
stripCwd: false,
|
|
10
|
+
reverseSpans: true
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=pretty-print-options.type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pretty-print-options.type.js","names":["prettyPrintOptionsDefault","exports","enabled","stripCwd","reverseSpans"],"sources":["../../../src/types/pretty-print-options.type.ts"],"sourcesContent":[null],"mappings":";;;;;;AAMO,MAAMA,yBAAyB,GAAAC,OAAA,CAAAD,yBAAA,GAAuB;EAC3DE,OAAO,EAAE,IAAI;EACbC,QAAQ,EAAE,KAAK;EACfC,YAAY,EAAE;CACf","ignoreList":[]}
|
|
@@ -8,7 +8,8 @@ export interface ErrorSpan {
|
|
|
8
8
|
export interface ErrorData {
|
|
9
9
|
errorType: unknown;
|
|
10
10
|
message: unknown;
|
|
11
|
-
stack?: string;
|
|
11
|
+
stack?: string[];
|
|
12
|
+
effectStacktrace?: string[];
|
|
12
13
|
spans?: ErrorSpan[];
|
|
13
14
|
isPlainString: boolean;
|
|
14
15
|
}
|
|
@@ -21,3 +22,4 @@ export interface CaptureErrorsOptions {
|
|
|
21
22
|
stripCwd?: boolean;
|
|
22
23
|
}
|
|
23
24
|
export declare const captureErrors: <E>(cause: Cause<E>, { reverseSpans, stripCwd }?: CaptureErrorsOptions) => CapturedErrors;
|
|
25
|
+
//# sourceMappingURL=capture-errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capture-errors.d.ts","sourceRoot":"","sources":["../../src/capture-errors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,KAAK,EAAqB,MAAM,cAAc,CAAC;AAC7D,OAAO,EAA2B,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AAMzE,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,aAAa,aACjB,MAAM,CAAC,CAAC,+BACa,oBAAoB,KAI/C,cAsDF,CAAC"}
|
package/dts/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mCAAmC,CAAC;AAClD,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capture-errors-from-cause.d.ts","sourceRoot":"","sources":["../../../../src/logic/errors/capture-errors-from-cause.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,KAAK,EAAqB,MAAM,cAAc,CAAC;AAE7D,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAIjE,eAAO,MAAM,iBAAiB,aAAc,MAAM,CAAC,CAAC,KAAG,SAAS,WAAW,EAQvE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extract-error-details.d.ts","sourceRoot":"","sources":["../../../../src/logic/errors/extract-error-details.ts"],"names":[],"mappings":"AAGA,UAAU,YAAY;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,mBAAmB,UAAW,OAAO,KAAG,YA+DpD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse-error.d.ts","sourceRoot":"","sources":["../../../../src/logic/errors/parse-error.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAM5D,eAAO,MAAM,UAAU,UAAW,OAAO,KAAG,WAoB3C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format-failures-title.d.ts","sourceRoot":"","sources":["../../../../src/logic/pretty-printing/format-failures-title.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB,cACnB,OAAO,WACT,OAAO,kBACA,MAAM,gBACR,MAAM,WAUd,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type Span } from 'effect/Tracer';
|
|
2
|
+
import { type PrettyPrintOptions } from '../../types/pretty-print-options.type';
|
|
3
|
+
export declare const formatSpanAttributes: (span: Span | undefined, { stripCwd, reverseSpans }: PrettyPrintOptions) => {
|
|
4
|
+
message: string;
|
|
5
|
+
stack: string[];
|
|
6
|
+
};
|
|
7
|
+
//# sourceMappingURL=format-span-attributes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format-span-attributes.d.ts","sourceRoot":"","sources":["../../../../src/logic/pretty-printing/format-span-attributes.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgB,KAAK,IAAI,EAAE,MAAM,eAAe,CAAC;AAExD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAMhF,eAAO,MAAM,oBAAoB,SACzB,IAAI,GAAG,SAAS,8BACM,kBAAkB;;;CAiD/C,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type Span } from 'effect/Tracer';
|
|
2
|
+
import { type PrettyPrintOptions } from '../../types/pretty-print-options.type';
|
|
3
|
+
export declare const maybePrintNodeStacktrace: (d: string[], span: Span | undefined, stack: string | undefined, isPlainString: boolean, { stripCwd }: PrettyPrintOptions) => void;
|
|
4
|
+
//# sourceMappingURL=maybe-print-node-stacktrace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"maybe-print-node-stacktrace.d.ts","sourceRoot":"","sources":["../../../../src/logic/pretty-printing/maybe-print-node-stacktrace.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAGhF,eAAO,MAAM,wBAAwB,MAChC,MAAM,EAAE,QACL,IAAI,GAAG,SAAS,SACf,MAAM,GAAG,SAAS,iBACV,OAAO,gBACR,kBAAkB,SAWjC,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type Span } from 'effect/Tracer';
|
|
2
|
+
import { type PrettyPrintOptions } from '../../types/pretty-print-options.type';
|
|
3
|
+
export declare const maybePrintSpanAttributes: (d: string[], span: Span | undefined, isPlainString: boolean, { stripCwd, reverseSpans }: PrettyPrintOptions) => string[] | undefined;
|
|
4
|
+
//# sourceMappingURL=maybe-print-span-attributes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"maybe-print-span-attributes.d.ts","sourceRoot":"","sources":["../../../../src/logic/pretty-printing/maybe-print-span-attributes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAIhF,eAAO,MAAM,wBAAwB,MAChC,MAAM,EAAE,QACL,IAAI,GAAG,SAAS,iBACP,OAAO,8BACM,kBAAkB,yBAiB/C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"maybe-warn-about-plain-strings.d.ts","sourceRoot":"","sources":["../../../../src/logic/pretty-printing/maybe-warn-about-plain-strings.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,0BAA0B,MAClC,MAAM,EAAE,iBACI,OAAO,SASvB,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type Span } from 'effect/Tracer';
|
|
2
|
+
import { type PrettyPrintOptions } from '../../types/pretty-print-options.type';
|
|
3
|
+
export declare const printEffectStacktrace: (d: string[], span: Span | undefined, spanAttributesStack: string[] | undefined, { stripCwd }: PrettyPrintOptions) => void;
|
|
4
|
+
//# sourceMappingURL=print-effect-stacktrace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"print-effect-stacktrace.d.ts","sourceRoot":"","sources":["../../../../src/logic/pretty-printing/print-effect-stacktrace.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAGhF,eAAO,MAAM,qBAAqB,MAC7B,MAAM,EAAE,QACL,IAAI,GAAG,SAAS,uBACD,MAAM,EAAE,GAAG,SAAS,gBAC3B,kBAAkB,SAUjC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-span-attributes.d.ts","sourceRoot":"","sources":["../../../../src/logic/spans/get-span-attributes.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,iBAAiB,kBACb,YAAY,MAAM,EAAE,OAAO,CAAC,eAC9B,OAAO;;;CAmBrB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-span-duration.d.ts","sourceRoot":"","sources":["../../../../src/logic/spans/get-span-duration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,eAAO,MAAM,eAAe,WAAY,UAAU,eAAe,OAAO,WAQvE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spans-stack-trailing-char.d.ts","sourceRoot":"","sources":["../../../../src/logic/spans/spans-stack-trailing-char.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB,gBAAiB,OAAO,WACT,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
interface FilteredEffectAttributes {
|
|
2
|
+
stacktrace: string[];
|
|
3
|
+
attributes: ReadonlyMap<string, unknown>;
|
|
4
|
+
}
|
|
5
|
+
export declare const splitSpansAttributesByTypes: (attributes: ReadonlyMap<string, unknown>) => FilteredEffectAttributes;
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=split-spans-attributes-by-type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"split-spans-attributes-by-type.d.ts","sourceRoot":"","sources":["../../../../src/logic/spans/split-spans-attributes-by-type.ts"],"names":[],"mappings":"AAAA,UAAU,wBAAwB;IAChC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAED,eAAO,MAAM,2BAA2B,eAC1B,YAAY,MAAM,EAAE,OAAO,CAAC,6BAoBvC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter-stack.d.ts","sourceRoot":"","sources":["../../../../src/logic/stack/filter-stack.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,UAAW,MAAM,YAAY,OAAO,WAe3D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"strip-cwd-path.d.ts","sourceRoot":"","sources":["../../../src/logic/strip-cwd-path.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,SAAU,MAAM,KAAG,MACY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pretty-print.d.ts","sourceRoot":"","sources":["../../src/pretty-print.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,KAAK,EAAqB,MAAM,cAAc,CAAC;AAQ7D,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,mCAAmC,CAAC;AAE3C,eAAO,MAAM,WAAW,aACf,MAAM,CAAC,CAAC,YACN,kBAAkB,KAC1B,MA6CF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-promise.d.ts","sourceRoot":"","sources":["../../../src/runners/run-promise.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAQ,MAAM,QAAQ,CAAC;AAGtC,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,oCAAoC,CAAC;AAE5C,eAAO,MAAM,UAAU,iBACb,OAAO,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,YAClB,kBAAkB,KAC1B,QAAQ,CAAC,CAeT,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-sync.d.ts","sourceRoot":"","sources":["../../../src/runners/run-sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAQ,MAAM,QAAQ,CAAC;AAGtC,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,oCAAoC,CAAC;AAE5C,eAAO,MAAM,OAAO,iBACV,OAAO,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,YAClB,kBAAkB,KAC1B,CAeA,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pretty-error.type.d.ts","sourceRoot":"","sources":["../../../src/types/pretty-error.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,eAAe,CAAC;AAE1C,qBAAa,WAAW;IAEpB,QAAQ,CAAC,OAAO,EAAE,OAAO;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS;IAClC,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS;IAC/B,QAAQ,CAAC,aAAa,EAAE,OAAO;IAC/B,QAAQ,CAAC,SAAS,CAAC;gBAJV,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,IAAI,EAAE,IAAI,GAAG,SAAS,EACtB,aAAa,EAAE,OAAO,EACtB,SAAS,CAAC,SAAS;CAE/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pretty-print-options.type.d.ts","sourceRoot":"","sources":["../../../src/types/pretty-print-options.type.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,eAAO,MAAM,yBAAyB,EAAE,kBAIvC,CAAC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { Option } from 'effect';
|
|
2
|
+
import { isInterruptedOnly } from 'effect/Cause';
|
|
3
|
+
import { captureErrorsFrom } from './logic/errors/capture-errors-from-cause';
|
|
4
|
+
import { splitSpansAttributesByTypes } from './logic/spans/split-spans-attributes-by-type';
|
|
5
|
+
import { stripCwdPath } from './logic/strip-cwd-path';
|
|
6
|
+
export const captureErrors = (cause, {
|
|
7
|
+
reverseSpans,
|
|
8
|
+
stripCwd
|
|
9
|
+
} = {
|
|
10
|
+
reverseSpans: true,
|
|
11
|
+
stripCwd: true
|
|
12
|
+
}) => {
|
|
13
|
+
if (isInterruptedOnly(cause)) {
|
|
14
|
+
return {
|
|
15
|
+
interrupted: true,
|
|
16
|
+
errors: []
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
const errors = captureErrorsFrom(cause).map(({
|
|
20
|
+
message,
|
|
21
|
+
stack: maybeStack,
|
|
22
|
+
span,
|
|
23
|
+
errorType,
|
|
24
|
+
isPlainString
|
|
25
|
+
}) => {
|
|
26
|
+
const effectStacktrace = [];
|
|
27
|
+
const spans = [];
|
|
28
|
+
if (span !== undefined) {
|
|
29
|
+
let current = span;
|
|
30
|
+
while (current !== undefined && current._tag === 'Span') {
|
|
31
|
+
const {
|
|
32
|
+
name,
|
|
33
|
+
attributes: allAttributes,
|
|
34
|
+
status
|
|
35
|
+
} = current;
|
|
36
|
+
const {
|
|
37
|
+
attributes,
|
|
38
|
+
stacktrace
|
|
39
|
+
} = splitSpansAttributesByTypes(allAttributes);
|
|
40
|
+
effectStacktrace.push(...stacktrace);
|
|
41
|
+
spans.push({
|
|
42
|
+
name,
|
|
43
|
+
attributes,
|
|
44
|
+
status
|
|
45
|
+
});
|
|
46
|
+
current = Option.getOrUndefined(current.parent);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
let stack;
|
|
50
|
+
if (maybeStack !== undefined) {
|
|
51
|
+
stack = stripCwd === true ? stripCwdPath(maybeStack) : maybeStack;
|
|
52
|
+
}
|
|
53
|
+
return {
|
|
54
|
+
errorType,
|
|
55
|
+
message,
|
|
56
|
+
stack: stack?.replaceAll(/ {4}at /g, 'at ').split('\r\n'),
|
|
57
|
+
effectStacktrace: effectStacktrace.length > 0 ? effectStacktrace : undefined,
|
|
58
|
+
spans: reverseSpans === true ? spans.toReversed() : spans,
|
|
59
|
+
isPlainString
|
|
60
|
+
};
|
|
61
|
+
});
|
|
62
|
+
return {
|
|
63
|
+
interrupted: false,
|
|
64
|
+
errors
|
|
65
|
+
};
|
|
66
|
+
};
|
|
67
|
+
//# sourceMappingURL=capture-errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capture-errors.js","names":["Option","isInterruptedOnly","captureErrorsFrom","splitSpansAttributesByTypes","stripCwdPath","captureErrors","cause","reverseSpans","stripCwd","interrupted","errors","map","message","stack","maybeStack","span","errorType","isPlainString","effectStacktrace","spans","undefined","current","_tag","name","attributes","allAttributes","status","stacktrace","push","getOrUndefined","parent","replaceAll","split","length","toReversed"],"sources":["../../src/capture-errors.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,MAAM,QAAQ,QAAQ;AAC/B,SAAqBC,iBAAiB,QAAQ,cAAc;AAG5D,SAASC,iBAAiB,QAAQ,0CAA0C;AAC5E,SAASC,2BAA2B,QAAQ,8CAA8C;AAC1F,SAASC,YAAY,QAAQ,wBAAwB;AA2BrD,OAAO,MAAMC,aAAa,GAAGA,CAC3BC,KAAe,EACf;EAAEC,YAAY;EAAEC;AAAQ,IAA2B;EACjDD,YAAY,EAAE,IAAI;EAClBC,QAAQ,EAAE;CACX,KACiB;EAClB,IAAIP,iBAAiB,CAACK,KAAK,CAAC,EAAE;IAC5B,OAAO;MACLG,WAAW,EAAE,IAAI;MACjBC,MAAM,EAAE;KACT;EACH;EAEA,MAAMA,MAAM,GAAGR,iBAAiB,CAAII,KAAK,CAAC,CAACK,GAAG,CAC5C,CAAC;IAAEC,OAAO;IAAEC,KAAK,EAAEC,UAAU;IAAEC,IAAI;IAAEC,SAAS;IAAEC;EAAa,CAAE,KAAI;IACjE,MAAMC,gBAAgB,GAAa,EAAE;IACrC,MAAMC,KAAK,GAAG,EAAE;IAEhB,IAAIJ,IAAI,KAAKK,SAAS,EAAE;MACtB,IAAIC,OAAO,GAA+BN,IAAI;MAE9C,OAAOM,OAAO,KAAKD,SAAS,IAAIC,OAAO,CAACC,IAAI,KAAK,MAAM,EAAE;QACvD,MAAM;UAAEC,IAAI;UAAEC,UAAU,EAAEC,aAAa;UAAEC;QAAM,CAAE,GAAGL,OAAO;QAE3D,MAAM;UAAEG,UAAU;UAAEG;QAAU,CAAE,GAC9BxB,2BAA2B,CAACsB,aAAa,CAAC;QAE5CP,gBAAgB,CAACU,IAAI,CAAC,GAAGD,UAAU,CAAC;QAEpCR,KAAK,CAACS,IAAI,CAAC;UACTL,IAAI;UACJC,UAAU;UACVE;SACD,CAAC;QACFL,OAAO,GAAGrB,MAAM,CAAC6B,cAAc,CAACR,OAAO,CAACS,MAAM,CAAC;MACjD;IACF;IAEA,IAAIjB,KAAK;IACT,IAAIC,UAAU,KAAKM,SAAS,EAAE;MAC5BP,KAAK,GAAGL,QAAQ,KAAK,IAAI,GAAGJ,YAAY,CAACU,UAAU,CAAC,GAAGA,UAAU;IACnE;IAEA,OAAO;MACLE,SAAS;MACTJ,OAAO;MACPC,KAAK,EAAEA,KAAK,EAAEkB,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,CAACC,KAAK,CAAC,MAAM,CAAC;MACzDd,gBAAgB,EACdA,gBAAgB,CAACe,MAAM,GAAG,CAAC,GAAGf,gBAAgB,GAAGE,SAAS;MAC5DD,KAAK,EAAEZ,YAAY,KAAK,IAAI,GAAGY,KAAK,CAACe,UAAU,EAAE,GAAGf,KAAK;MACzDF;KACD;EACH,CAAC,CACF;EAED,OAAO;IACLR,WAAW,EAAE,KAAK;IAClBC;GACD;AACH,CAAC","ignoreList":[]}
|
package/esm/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc,gBAAgB;AAC9B,cAAc,uBAAuB;AACrC,cAAc,oBAAoB;AAClC,cAAc,mCAAmC;AACjD,cAAc,kBAAkB","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { reduceWithContext } from 'effect/Cause';
|
|
2
|
+
import { parseError } from './parse-error';
|
|
3
|
+
export const captureErrorsFrom = cause => reduceWithContext(cause, undefined, {
|
|
4
|
+
emptyCase: () => [],
|
|
5
|
+
dieCase: (_, unknownError) => [parseError(unknownError)],
|
|
6
|
+
failCase: (_, error) => [parseError(error)],
|
|
7
|
+
interruptCase: () => [],
|
|
8
|
+
parallelCase: (_, l, r) => [...l, ...r],
|
|
9
|
+
sequentialCase: (_, l, r) => [...l, ...r]
|
|
10
|
+
});
|
|
11
|
+
//# sourceMappingURL=capture-errors-from-cause.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capture-errors-from-cause.js","names":["reduceWithContext","parseError","captureErrorsFrom","cause","undefined","emptyCase","dieCase","_","unknownError","failCase","error","interruptCase","parallelCase","l","r","sequentialCase"],"sources":["../../../../src/logic/errors/capture-errors-from-cause.ts"],"sourcesContent":[null],"mappings":"AAAA,SAAqBA,iBAAiB,QAAQ,cAAc;AAI5D,SAASC,UAAU,QAAQ,eAAe;AAE1C,OAAO,MAAMC,iBAAiB,GAAOC,KAAe,IAClDH,iBAAiB,CAACG,KAAK,EAAEC,SAAS,EAAE;EAClCC,SAAS,EAAEA,CAAA,KAA8B,EAAE;EAC3CC,OAAO,EAAEA,CAACC,CAAC,EAAEC,YAAY,KAAK,CAACP,UAAU,CAACO,YAAY,CAAC,CAAC;EACxDC,QAAQ,EAAEA,CAACF,CAAC,EAAEG,KAAK,KAAK,CAACT,UAAU,CAACS,KAAK,CAAC,CAAC;EAC3CC,aAAa,EAAEA,CAAA,KAAM,EAAE;EACvBC,YAAY,EAAEA,CAACL,CAAC,EAAEM,CAAC,EAAEC,CAAC,KAAK,CAAC,GAAGD,CAAC,EAAE,GAAGC,CAAC,CAAC;EACvCC,cAAc,EAAEA,CAACR,CAAC,EAAEM,CAAC,EAAEC,CAAC,KAAK,CAAC,GAAGD,CAAC,EAAE,GAAGC,CAAC;CACzC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { isFunction } from 'effect/Function';
|
|
2
|
+
import { hasProperty } from 'effect/Predicate';
|
|
3
|
+
export const extractErrorDetails = error => {
|
|
4
|
+
if (typeof error === 'string') {
|
|
5
|
+
return {
|
|
6
|
+
isPlainString: true,
|
|
7
|
+
message: error
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
// TaggedError with cause
|
|
11
|
+
if (error instanceof Error && hasProperty(error, 'cause') && hasProperty(error, '_tag')) {
|
|
12
|
+
return {
|
|
13
|
+
isPlainString: false,
|
|
14
|
+
type: error._tag,
|
|
15
|
+
message: error.cause
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
// TaggedError with error ctor
|
|
19
|
+
if (error instanceof Error && hasProperty(error, 'error')) {
|
|
20
|
+
return {
|
|
21
|
+
isPlainString: false,
|
|
22
|
+
type: error.name,
|
|
23
|
+
message: error.error
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
// Plain objects with tag attribute
|
|
27
|
+
if (hasProperty(error, '_tag') && hasProperty(error, 'message')) {
|
|
28
|
+
return {
|
|
29
|
+
isPlainString: false,
|
|
30
|
+
type: error._tag,
|
|
31
|
+
message: error.message
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
// Plain objects with toString impl
|
|
35
|
+
if (hasProperty(error, 'toString') && isFunction(error.toString) && error.toString !== Object.prototype.toString && error.toString !== Array.prototype.toString) {
|
|
36
|
+
const message = error.toString();
|
|
37
|
+
const maybeWithUnderlyingType = message.split(': ');
|
|
38
|
+
if (maybeWithUnderlyingType.length > 1) {
|
|
39
|
+
const [type, ...message] = maybeWithUnderlyingType;
|
|
40
|
+
return {
|
|
41
|
+
isPlainString: false,
|
|
42
|
+
type,
|
|
43
|
+
message
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
return {
|
|
47
|
+
message,
|
|
48
|
+
isPlainString: false
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
return {
|
|
52
|
+
message: `Error: ${JSON.stringify(error)}`,
|
|
53
|
+
isPlainString: false
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=extract-error-details.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extract-error-details.js","names":["isFunction","hasProperty","extractErrorDetails","error","isPlainString","message","Error","type","_tag","cause","name","toString","Object","prototype","Array","maybeWithUnderlyingType","split","length","JSON","stringify"],"sources":["../../../../src/logic/errors/extract-error-details.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,WAAW,QAAQ,kBAAkB;AAQ9C,OAAO,MAAMC,mBAAmB,GAAIC,KAAc,IAAkB;EAClE,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7B,OAAO;MACLC,aAAa,EAAE,IAAI;MACnBC,OAAO,EAAEF;KACV;EACH;EAEA;EACA,IACEA,KAAK,YAAYG,KAAK,IACtBL,WAAW,CAACE,KAAK,EAAE,OAAO,CAAC,IAC3BF,WAAW,CAACE,KAAK,EAAE,MAAM,CAAC,EAC1B;IACA,OAAO;MACLC,aAAa,EAAE,KAAK;MACpBG,IAAI,EAAEJ,KAAK,CAACK,IAAI;MAChBH,OAAO,EAAEF,KAAK,CAACM;KAChB;EACH;EAEA;EACA,IAAIN,KAAK,YAAYG,KAAK,IAAIL,WAAW,CAACE,KAAK,EAAE,OAAO,CAAC,EAAE;IACzD,OAAO;MACLC,aAAa,EAAE,KAAK;MACpBG,IAAI,EAAEJ,KAAK,CAACO,IAAI;MAChBL,OAAO,EAAEF,KAAK,CAACA;KAChB;EACH;EAEA;EACA,IAAIF,WAAW,CAACE,KAAK,EAAE,MAAM,CAAC,IAAIF,WAAW,CAACE,KAAK,EAAE,SAAS,CAAC,EAAE;IAC/D,OAAO;MACLC,aAAa,EAAE,KAAK;MACpBG,IAAI,EAAEJ,KAAK,CAACK,IAAI;MAChBH,OAAO,EAAEF,KAAK,CAACE;KAChB;EACH;EAEA;EACA,IACEJ,WAAW,CAACE,KAAK,EAAE,UAAU,CAAC,IAC9BH,UAAU,CAACG,KAAK,CAACQ,QAAQ,CAAC,IAC1BR,KAAK,CAACQ,QAAQ,KAAKC,MAAM,CAACC,SAAS,CAACF,QAAQ,IAC5CR,KAAK,CAACQ,QAAQ,KAAKG,KAAK,CAACD,SAAS,CAACF,QAAQ,EAC3C;IACA,MAAMN,OAAO,GAAGF,KAAK,CAACQ,QAAQ,EAAE;IAChC,MAAMI,uBAAuB,GAAGV,OAAO,CAACW,KAAK,CAAC,IAAI,CAAC;IAEnD,IAAID,uBAAuB,CAACE,MAAM,GAAG,CAAC,EAAE;MACtC,MAAM,CAACV,IAAI,EAAE,GAAGF,OAAO,CAAC,GAAGU,uBAAuB;MAElD,OAAO;QACLX,aAAa,EAAE,KAAK;QACpBG,IAAI;QACJF;OACD;IACH;IAEA,OAAO;MAAEA,OAAO;MAAED,aAAa,EAAE;IAAK,CAAE;EAC1C;EAEA,OAAO;IAAEC,OAAO,EAAE,UAAUa,IAAI,CAACC,SAAS,CAAChB,KAAK,CAAC,EAAE;IAAEC,aAAa,EAAE;EAAK,CAAE;AAC7E,CAAC","ignoreList":[]}
|