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
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const getSpanAttributes: (attributes: ReadonlyMap<string, unknown>, isLastEntry: boolean) => string;
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
3
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
|
-
if (!m) return o;
|
|
5
|
-
var i = m.call(o), r, ar = [], e;
|
|
6
|
-
try {
|
|
7
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
8
|
-
}
|
|
9
|
-
catch (error) { e = { error: error }; }
|
|
10
|
-
finally {
|
|
11
|
-
try {
|
|
12
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
13
|
-
}
|
|
14
|
-
finally { if (e) throw e.error; }
|
|
15
|
-
}
|
|
16
|
-
return ar;
|
|
17
|
-
};
|
|
18
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
19
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
20
|
-
};
|
|
21
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
exports.getSpanAttributes = void 0;
|
|
23
|
-
var chalk_1 = __importDefault(require("chalk"));
|
|
24
|
-
var getSpanAttributes = function (attributes, isLastEntry) {
|
|
25
|
-
if (attributes.size === 0) {
|
|
26
|
-
return '';
|
|
27
|
-
}
|
|
28
|
-
var formattedAttributes = Array.from(attributes.entries())
|
|
29
|
-
.map(function (_a) {
|
|
30
|
-
var _b = __read(_a, 2), key = _b[0], value = _b[1];
|
|
31
|
-
return "".concat(isLastEntry ? ' ' : chalk_1.default.gray('│'), " ").concat(chalk_1.default.blue(key)).concat(chalk_1.default.gray(':'), " ").concat(value);
|
|
32
|
-
})
|
|
33
|
-
.join('\r\n');
|
|
34
|
-
return "\r\n".concat(formattedAttributes);
|
|
35
|
-
};
|
|
36
|
-
exports.getSpanAttributes = getSpanAttributes;
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.getSpanDuration = void 0;
|
|
7
|
-
var chalk_1 = __importDefault(require("chalk"));
|
|
8
|
-
var getSpanDuration = function (status, isLastEntry) {
|
|
9
|
-
if (status._tag !== 'Ended') {
|
|
10
|
-
return '';
|
|
11
|
-
}
|
|
12
|
-
var duration = (status.endTime - status.startTime) / BigInt(1000000);
|
|
13
|
-
return "\r\n".concat(isLastEntry ? ' ' : chalk_1.default.gray('│'), " ~ ").concat(duration, "ms");
|
|
14
|
-
};
|
|
15
|
-
exports.getSpanDuration = getSpanDuration;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.spanStackTrailingChar = void 0;
|
|
7
|
-
var chalk_1 = __importDefault(require("chalk"));
|
|
8
|
-
var spanStackTrailingChar = function (isLastEntry) {
|
|
9
|
-
return isLastEntry ? chalk_1.default.gray('╰') : chalk_1.default.gray('├');
|
|
10
|
-
};
|
|
11
|
-
exports.spanStackTrailingChar = spanStackTrailingChar;
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __values = (this && this.__values) || function(o) {
|
|
3
|
-
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
4
|
-
if (m) return m.call(o);
|
|
5
|
-
if (o && typeof o.length === "number") return {
|
|
6
|
-
next: function () {
|
|
7
|
-
if (o && i >= o.length) o = void 0;
|
|
8
|
-
return { value: o && o[i++], done: !o };
|
|
9
|
-
}
|
|
10
|
-
};
|
|
11
|
-
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
12
|
-
};
|
|
13
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.filterStack = void 0;
|
|
15
|
-
var strip_cwd_path_1 = require("../strip-cwd-path");
|
|
16
|
-
var filterStack = function (stack, stripCwd) {
|
|
17
|
-
var e_1, _a;
|
|
18
|
-
var lines = stack.split('\r\n');
|
|
19
|
-
var out = [];
|
|
20
|
-
try {
|
|
21
|
-
for (var lines_1 = __values(lines), lines_1_1 = lines_1.next(); !lines_1_1.done; lines_1_1 = lines_1.next()) {
|
|
22
|
-
var line = lines_1_1.value;
|
|
23
|
-
out.push(line.replace(/at .*effect_cutpoint.*\((.*)\)/, 'at $1'));
|
|
24
|
-
if (line.includes('effect_cutpoint')) {
|
|
25
|
-
return out.join('\r\n');
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
30
|
-
finally {
|
|
31
|
-
try {
|
|
32
|
-
if (lines_1_1 && !lines_1_1.done && (_a = lines_1.return)) _a.call(lines_1);
|
|
33
|
-
}
|
|
34
|
-
finally { if (e_1) throw e_1.error; }
|
|
35
|
-
}
|
|
36
|
-
var final = out.join('\r\n').replace(/ {4}at /g, '│ at ');
|
|
37
|
-
return stripCwd ? (0, strip_cwd_path_1.stripCwdPath)(final) : final;
|
|
38
|
-
};
|
|
39
|
-
exports.filterStack = filterStack;
|
package/logic/strip-cwd-path.js
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.stripCwdPath = void 0;
|
|
4
|
-
var cwdRegex = global.process !== undefined ? new RegExp(global.process.cwd(), 'g') : null;
|
|
5
|
-
var stripCwdPath = function (path) {
|
|
6
|
-
return cwdRegex === null ? path : path.replace(cwdRegex, '.');
|
|
7
|
-
};
|
|
8
|
-
exports.stripCwdPath = stripCwdPath;
|
package/pretty-print.d.ts
DELETED
package/pretty-print.js
DELETED
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.prettyPrint = void 0;
|
|
7
|
-
var chalk_1 = __importDefault(require("chalk"));
|
|
8
|
-
var effect_1 = require("effect");
|
|
9
|
-
var Cause_1 = require("effect/Cause");
|
|
10
|
-
var capture_errors_from_cause_1 = require("./logic/errors/capture-errors-from-cause");
|
|
11
|
-
var get_span_attributes_1 = require("./logic/spans/get-span-attributes");
|
|
12
|
-
var get_span_duration_1 = require("./logic/spans/get-span-duration");
|
|
13
|
-
var spans_stack_trailing_char_1 = require("./logic/spans/spans-stack-trailing-char");
|
|
14
|
-
var filter_stack_1 = require("./logic/stack/filter-stack");
|
|
15
|
-
var strip_cwd_path_1 = require("./logic/strip-cwd-path");
|
|
16
|
-
var pretty_print_options_type_1 = require("./types/pretty-print-options.type");
|
|
17
|
-
var prettyPrint = function (cause, _a) {
|
|
18
|
-
var _b = _a === void 0 ? pretty_print_options_type_1.prettyPrintOptionsDefault : _a, stripCwd = _b.stripCwd, reverseSpans = _b.reverseSpans;
|
|
19
|
-
if ((0, Cause_1.isInterruptedOnly)(cause)) {
|
|
20
|
-
return 'All fibers interrupted without errors.';
|
|
21
|
-
}
|
|
22
|
-
var failures = (0, capture_errors_from_cause_1.captureErrorsFrom)(cause);
|
|
23
|
-
console.error("\r\n\uD83E\uDEE0 ".concat(chalk_1.default.bold.yellowBright.underline("".concat(failures.length, " error").concat(failures.length > 1 ? 's' : '', " occured\r\n"))));
|
|
24
|
-
return failures
|
|
25
|
-
.map(function (_a, failuresIndex) {
|
|
26
|
-
var _b;
|
|
27
|
-
var errorType = _a.errorType, errorMessage = _a.message, stack = _a.stack, span = _a.span, isPlainString = _a.isPlainString;
|
|
28
|
-
var message = '💥 ' +
|
|
29
|
-
(failures.length > 1
|
|
30
|
-
? chalk_1.default.bgRed.whiteBright(" #".concat(failuresIndex + 1, " -"))
|
|
31
|
-
: '') +
|
|
32
|
-
chalk_1.default.bgRed.whiteBright(" ".concat((_b = errorType) !== null && _b !== void 0 ? _b : 'Unknown error', " ")) +
|
|
33
|
-
chalk_1.default.bold.whiteBright(" \u2022 ".concat(errorMessage)) +
|
|
34
|
-
'\r\n';
|
|
35
|
-
if (isPlainString) {
|
|
36
|
-
message += "\r\n".concat(chalk_1.default.gray('ℹ️ You used a plain string to represent a failure in the error channel (E). You should consider using tagged objects (with a _tag field), or yieldable errors such as Data.TaggedError and Schema.TaggedError for better handling experience.'));
|
|
37
|
-
}
|
|
38
|
-
if (span !== undefined) {
|
|
39
|
-
var current = span;
|
|
40
|
-
var spans_1 = [];
|
|
41
|
-
while (current !== undefined && current._tag === 'Span') {
|
|
42
|
-
spans_1.push(current);
|
|
43
|
-
current = effect_1.Option.getOrUndefined(current.parent);
|
|
44
|
-
}
|
|
45
|
-
var orderedSpans = reverseSpans === true ? spans_1.toReversed() : spans_1;
|
|
46
|
-
message += orderedSpans
|
|
47
|
-
.map(function (_a, index) {
|
|
48
|
-
var name = _a.name, attributes = _a.attributes, status = _a.status;
|
|
49
|
-
var isFirstEntry = index === 0;
|
|
50
|
-
var isLastEntry = index === spans_1.length - 1;
|
|
51
|
-
var filePath = " at ".concat(stripCwd !== undefined ? (0, strip_cwd_path_1.stripCwdPath)(name) : name);
|
|
52
|
-
return chalk_1.default.whiteBright((isFirstEntry ? "\r\n".concat(chalk_1.default.gray('◯')) : '') +
|
|
53
|
-
'\r\n' +
|
|
54
|
-
(0, spans_stack_trailing_char_1.spanStackTrailingChar)(isLastEntry) +
|
|
55
|
-
chalk_1.default.gray('─') +
|
|
56
|
-
filePath +
|
|
57
|
-
(0, get_span_duration_1.getSpanDuration)(status, isLastEntry) +
|
|
58
|
-
(0, get_span_attributes_1.getSpanAttributes)(attributes, isLastEntry));
|
|
59
|
-
})
|
|
60
|
-
.join('');
|
|
61
|
-
}
|
|
62
|
-
else if (!isPlainString) {
|
|
63
|
-
message += "\r\n".concat(chalk_1.default.gray('ℹ️ Consider using spans to improve errors reporting.\r\n'));
|
|
64
|
-
}
|
|
65
|
-
if (stack !== undefined) {
|
|
66
|
-
message += "\r\n".concat(span !== undefined ? '\r\n' : '', "\uD83D\uDEA8 Stacktrace\r\n").concat(chalk_1.default.red((0, filter_stack_1.filterStack)(stack, stripCwd === true)));
|
|
67
|
-
}
|
|
68
|
-
else if (!isPlainString) {
|
|
69
|
-
message += "\r\n\r\n".concat(chalk_1.default.gray('ℹ️ Consider using a yieldable error such as Data.TaggedError and Schema.TaggedError to get a stacktrace.'));
|
|
70
|
-
}
|
|
71
|
-
return message + '\r\n';
|
|
72
|
-
})
|
|
73
|
-
.join('\r\n');
|
|
74
|
-
};
|
|
75
|
-
exports.prettyPrint = prettyPrint;
|
package/runners/run-promise.js
DELETED
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
39
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
40
|
-
if (!m) return o;
|
|
41
|
-
var i = m.call(o), r, ar = [], e;
|
|
42
|
-
try {
|
|
43
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
44
|
-
}
|
|
45
|
-
catch (error) { e = { error: error }; }
|
|
46
|
-
finally {
|
|
47
|
-
try {
|
|
48
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
49
|
-
}
|
|
50
|
-
finally { if (e) throw e.error; }
|
|
51
|
-
}
|
|
52
|
-
return ar;
|
|
53
|
-
};
|
|
54
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
55
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
56
|
-
if (ar || !(i in from)) {
|
|
57
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
58
|
-
ar[i] = from[i];
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
62
|
-
};
|
|
63
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
64
|
-
exports.runPromise = void 0;
|
|
65
|
-
var effect_1 = require("effect");
|
|
66
|
-
var __1 = require("..");
|
|
67
|
-
var pretty_print_options_type_1 = require("../types/pretty-print-options.type");
|
|
68
|
-
var runPromise = function (effect_2) {
|
|
69
|
-
var args_1 = [];
|
|
70
|
-
for (var _i = 1; _i < arguments.length; _i++) {
|
|
71
|
-
args_1[_i - 1] = arguments[_i];
|
|
72
|
-
}
|
|
73
|
-
return __awaiter(void 0, __spreadArray([effect_2], __read(args_1), false), void 0, function (effect, options) {
|
|
74
|
-
if (options === void 0) { options = pretty_print_options_type_1.prettyPrintOptionsDefault; }
|
|
75
|
-
return __generator(this, function (_a) {
|
|
76
|
-
switch (_a.label) {
|
|
77
|
-
case 0: return [4 /*yield*/, effect_1.Effect.runPromise((0, effect_1.pipe)(effect, effect_1.Effect.sandbox, effect_1.Effect.catchAll(function (e) {
|
|
78
|
-
if (options.enabled === false) {
|
|
79
|
-
return effect_1.Effect.fail(e);
|
|
80
|
-
}
|
|
81
|
-
console.error((0, __1.prettyPrint)(e, options));
|
|
82
|
-
return effect_1.Effect.fail('❌ runPromise failure');
|
|
83
|
-
})))];
|
|
84
|
-
case 1: return [2 /*return*/, _a.sent()];
|
|
85
|
-
}
|
|
86
|
-
});
|
|
87
|
-
});
|
|
88
|
-
};
|
|
89
|
-
exports.runPromise = runPromise;
|
package/runners/run-sync.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.runSync = void 0;
|
|
4
|
-
var effect_1 = require("effect");
|
|
5
|
-
var __1 = require("..");
|
|
6
|
-
var pretty_print_options_type_1 = require("../types/pretty-print-options.type");
|
|
7
|
-
var runSync = function (effect, options) {
|
|
8
|
-
if (options === void 0) { options = pretty_print_options_type_1.prettyPrintOptionsDefault; }
|
|
9
|
-
return effect_1.Effect.runSync((0, effect_1.pipe)(effect, effect_1.Effect.sandbox, effect_1.Effect.catchAll(function (e) {
|
|
10
|
-
if (options.enabled === true) {
|
|
11
|
-
console.error((0, __1.prettyPrint)(e, options));
|
|
12
|
-
return effect_1.Effect.fail('❌ runSync failure');
|
|
13
|
-
}
|
|
14
|
-
return effect_1.Effect.fail(e);
|
|
15
|
-
})));
|
|
16
|
-
};
|
|
17
|
-
exports.runSync = runSync;
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
-
});
|
|
21
|
-
};
|
|
22
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
-
function step(op) {
|
|
27
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
29
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
-
switch (op[0]) {
|
|
32
|
-
case 0: case 1: t = op; break;
|
|
33
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
-
default:
|
|
37
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
-
if (t[2]) _.ops.pop();
|
|
42
|
-
_.trys.pop(); continue;
|
|
43
|
-
}
|
|
44
|
-
op = body.call(thisArg, _);
|
|
45
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
|
-
exports.mockConsole = void 0;
|
|
51
|
-
var vitest_1 = require("vitest");
|
|
52
|
-
var mockConsole = function (args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
53
|
-
var _a, _b;
|
|
54
|
-
return __generator(this, function (_c) {
|
|
55
|
-
switch (_c.label) {
|
|
56
|
-
case 0:
|
|
57
|
-
_a = global;
|
|
58
|
-
_b = [{}];
|
|
59
|
-
return [4 /*yield*/, vitest_1.vi.importActual('node:console')];
|
|
60
|
-
case 1:
|
|
61
|
-
_a.console = __assign.apply(void 0, [__assign.apply(void 0, _b.concat([(_c.sent())])), args]);
|
|
62
|
-
return [2 /*return*/];
|
|
63
|
-
}
|
|
64
|
-
});
|
|
65
|
-
}); };
|
|
66
|
-
exports.mockConsole = mockConsole;
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.effectCause = void 0;
|
|
40
|
-
var effect_1 = require("effect");
|
|
41
|
-
var effectCause = function (effect) { return __awaiter(void 0, void 0, void 0, function () {
|
|
42
|
-
return __generator(this, function (_a) {
|
|
43
|
-
switch (_a.label) {
|
|
44
|
-
case 0: return [4 /*yield*/, effect_1.Effect.runPromise((0, effect_1.pipe)(effect, effect_1.Effect.catchAllCause(function (e) { return effect_1.Effect.fail(e); }), effect_1.Effect.flip))];
|
|
45
|
-
case 1: return [2 /*return*/, _a.sent()];
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
}); };
|
|
49
|
-
exports.effectCause = effectCause;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PrettyError = void 0;
|
|
4
|
-
var PrettyError = /** @class */ (function () {
|
|
5
|
-
function PrettyError(message, stack, span, isPlainString, errorType) {
|
|
6
|
-
this.message = message;
|
|
7
|
-
this.stack = stack;
|
|
8
|
-
this.span = span;
|
|
9
|
-
this.isPlainString = isPlainString;
|
|
10
|
-
this.errorType = errorType;
|
|
11
|
-
}
|
|
12
|
-
return PrettyError;
|
|
13
|
-
}());
|
|
14
|
-
exports.PrettyError = PrettyError;
|