@iexec/dataprotector
Version:
This product enables users to confidentially store data–such as mail address, documents, personal information ...
36 lines • 1.32 kB
JavaScript
import { ValidationError } from 'yup';
import { ApiCallError } from 'iexec/errors';
export const grantAccessErrorMessage = 'Failed to grant access';
export const consumeProtectedDataErrorMessage = 'Failed to consume protected data';
export const processProtectedDataErrorMessage = 'Failed to process protected data';
export class WorkflowError extends Error {
isProtocolError;
constructor({ message, errorCause, isProtocolError = false, }) {
super(message, { cause: errorCause });
this.name = this.constructor.name;
this.isProtocolError = isProtocolError;
}
}
export function handleIfProtocolError(error) {
if (error instanceof ApiCallError) {
throw new WorkflowError({
message: "A service in the iExec protocol appears to be unavailable. You can retry later or contact iExec's technical support for help.",
errorCause: error,
isProtocolError: true,
});
}
}
export class ErrorWithData extends Error {
data;
originalError;
constructor(message, data, originalError) {
super(message);
this.name = this.constructor.name;
this.data = data;
if (originalError) {
this.originalError = originalError;
}
}
}
export { ValidationError };
//# sourceMappingURL=errors.js.map