"use strict";
|
// Copyright (c) Microsoft Corporation.
|
// Licensed under the MIT License.
|
Object.defineProperty(exports, "__esModule", { value: true });
|
exports.getErrorMessage = getErrorMessage;
|
const util_1 = require("@typespec/ts-http-runtime/internal/util");
|
/**
|
* Given what is thought to be an error object, return the message if possible.
|
* If the message is missing, returns a stringified version of the input.
|
* @param e - Something thrown from a try block
|
* @returns The error message or a string of the input
|
*/
|
function getErrorMessage(e) {
|
if ((0, util_1.isError)(e)) {
|
return e.message;
|
}
|
else {
|
let stringified;
|
try {
|
if (typeof e === "object" && e) {
|
stringified = JSON.stringify(e);
|
}
|
else {
|
stringified = String(e);
|
}
|
}
|
catch (err) {
|
stringified = "[unable to stringify input]";
|
}
|
return `Unknown error ${stringified}`;
|
}
|
}
|
//# sourceMappingURL=error.js.map
|