50 lines
2.4 KiB
JavaScript
50 lines
2.4 KiB
JavaScript
import { __toESM, require_defineProperty, require_objectSpread2 } from "./objectSpread2-BvkFp-_Y.mjs";
|
|
import { isObject } from "@trpc/server/unstable-core-do-not-import";
|
|
|
|
//#region src/TRPCClientError.ts
|
|
var import_defineProperty = __toESM(require_defineProperty(), 1);
|
|
var import_objectSpread2 = __toESM(require_objectSpread2(), 1);
|
|
function isTRPCClientError(cause) {
|
|
return cause instanceof TRPCClientError;
|
|
}
|
|
function isTRPCErrorResponse(obj) {
|
|
return isObject(obj) && isObject(obj["error"]) && typeof obj["error"]["code"] === "number" && typeof obj["error"]["message"] === "string";
|
|
}
|
|
function getMessageFromUnknownError(err, fallback) {
|
|
if (typeof err === "string") return err;
|
|
if (isObject(err) && typeof err["message"] === "string") return err["message"];
|
|
return fallback;
|
|
}
|
|
var TRPCClientError = class TRPCClientError extends Error {
|
|
constructor(message, opts) {
|
|
var _opts$result, _opts$result2;
|
|
const cause = opts === null || opts === void 0 ? void 0 : opts.cause;
|
|
super(message, { cause });
|
|
(0, import_defineProperty.default)(this, "cause", void 0);
|
|
(0, import_defineProperty.default)(this, "shape", void 0);
|
|
(0, import_defineProperty.default)(this, "data", void 0);
|
|
(0, import_defineProperty.default)(this, "meta", void 0);
|
|
this.meta = opts === null || opts === void 0 ? void 0 : opts.meta;
|
|
this.cause = cause;
|
|
this.shape = opts === null || opts === void 0 || (_opts$result = opts.result) === null || _opts$result === void 0 ? void 0 : _opts$result.error;
|
|
this.data = opts === null || opts === void 0 || (_opts$result2 = opts.result) === null || _opts$result2 === void 0 ? void 0 : _opts$result2.error.data;
|
|
this.name = "TRPCClientError";
|
|
Object.setPrototypeOf(this, TRPCClientError.prototype);
|
|
}
|
|
static from(_cause, opts = {}) {
|
|
const cause = _cause;
|
|
if (isTRPCClientError(cause)) {
|
|
if (opts.meta) cause.meta = (0, import_objectSpread2.default)((0, import_objectSpread2.default)({}, cause.meta), opts.meta);
|
|
return cause;
|
|
}
|
|
if (isTRPCErrorResponse(cause)) return new TRPCClientError(cause.error.message, (0, import_objectSpread2.default)((0, import_objectSpread2.default)({}, opts), {}, {
|
|
result: cause,
|
|
cause: opts.cause
|
|
}));
|
|
return new TRPCClientError(getMessageFromUnknownError(cause, "Unknown error"), (0, import_objectSpread2.default)((0, import_objectSpread2.default)({}, opts), {}, { cause }));
|
|
}
|
|
};
|
|
|
|
//#endregion
|
|
export { TRPCClientError, isTRPCClientError };
|
|
//# sourceMappingURL=TRPCClientError-apv8gw59.mjs.map
|