@wandelbots/nova-js
Version:
Official JS client for the Wandelbots API
50 lines (48 loc) • 2.69 kB
JavaScript
const require_LoginWithAuth0 = require('./LoginWithAuth0-CBD9BXXz.cjs');
const require_NovaClient = require('./NovaClient-D2EItmiH.cjs');
let axios = require("axios");
//#region src/lib/errorHandling.ts
function delay(ms) {
return new Promise((resolve) => setTimeout(resolve, ms));
}
/**
* @deprecated Use makeErrorMessage instead and truncate the error for display as needed, or make a situation-specific localized error message based on a response code
*/
function makeShortErrorMessage(err) {
return makeErrorMessage(err);
}
/**
* Attempts to make a helpful error message from an unknown thrown error
* or promise rejection.
*
* This function is mainly to aid debugging and good bug reports. For
* expected errors encountered by end users, it's more ideal to catch
* the specific error code and provide a localized app-specific error message.
*/
function makeErrorMessage(err) {
if (err instanceof axios.AxiosError) {
if (err.response) return `${err.response?.status} ${err.response?.statusText} from ${err.response?.config.method?.toUpperCase() || "accessing"} ${err.response?.config.url}: ${JSON.stringify(err.response?.data)}`;
else if (err.config) if (err.code === "ERR_NETWORK") return `${err.message} from ${err.config.method?.toUpperCase() || "accessing"} ${err.config.url}. This error can happen because of either connection issues or server CORS policy.`;
else return `${err.message} from ${err.config.method?.toUpperCase() || "accessing"} ${err.config.url}`;
} else if (err instanceof Error) return err.message;
else if (typeof err === "string") return err;
else if (typeof err === "object") return require_NovaClient.tryStringifyJson(err) || `Unserializable object ${err}`;
return `${err}`;
}
//#endregion
exports.AutoReconnectingWebsocket = require_LoginWithAuth0.AutoReconnectingWebsocket;
exports.NovaClient = require_NovaClient.NovaClient;
exports.XYZ_TO_VECTOR = require_NovaClient.XYZ_TO_VECTOR;
exports.availableStorage = require_LoginWithAuth0.availableStorage;
exports.degreesToRadians = require_NovaClient.degreesToRadians;
exports.delay = delay;
exports.isSameCoordinateSystem = require_NovaClient.isSameCoordinateSystem;
exports.loginWithAuth0 = require_LoginWithAuth0.loginWithAuth0;
exports.makeErrorMessage = makeErrorMessage;
exports.makeShortErrorMessage = makeShortErrorMessage;
exports.makeUrlQueryString = require_NovaClient.makeUrlQueryString;
exports.poseToWandelscriptString = require_NovaClient.poseToWandelscriptString;
exports.radiansToDegrees = require_NovaClient.radiansToDegrees;
exports.tryParseJson = require_NovaClient.tryParseJson;
exports.tryStringifyJson = require_NovaClient.tryStringifyJson;
//# sourceMappingURL=index.cjs.map