mirror of
https://github.com/excalidraw/excalidraw.git
synced 2025-05-03 10:00:07 -04:00
75 lines
1.8 KiB
TypeScript
75 lines
1.8 KiB
TypeScript
type CANVAS_ERROR_NAMES = "CANVAS_ERROR" | "CANVAS_POSSIBLY_TOO_BIG";
|
|
|
|
export class CanvasError extends Error {
|
|
constructor(
|
|
message: string = "Couldn't export canvas.",
|
|
name: CANVAS_ERROR_NAMES = "CANVAS_ERROR",
|
|
) {
|
|
super();
|
|
this.name = name;
|
|
this.message = message;
|
|
}
|
|
}
|
|
|
|
export class AbortError extends DOMException {
|
|
constructor(message: string = "Request Aborted") {
|
|
super(message, "AbortError");
|
|
}
|
|
}
|
|
|
|
type ImageSceneDataErrorCode =
|
|
| "IMAGE_NOT_CONTAINS_SCENE_DATA"
|
|
| "IMAGE_SCENE_DATA_ERROR";
|
|
|
|
export class ImageSceneDataError extends Error {
|
|
public code;
|
|
constructor(
|
|
message = "Image Scene Data Error",
|
|
code: ImageSceneDataErrorCode = "IMAGE_SCENE_DATA_ERROR",
|
|
) {
|
|
super(message);
|
|
this.name = "EncodingError";
|
|
this.code = code;
|
|
}
|
|
}
|
|
|
|
export class InvalidFractionalIndexError extends Error {
|
|
public code = "ELEMENT_HAS_INVALID_INDEX" as const;
|
|
}
|
|
|
|
type WorkerErrorCodes = "WORKER_URL_NOT_DEFINED" | "WORKER_IN_THE_MAIN_CHUNK";
|
|
|
|
export class WorkerUrlNotDefinedError extends Error {
|
|
public code;
|
|
constructor(
|
|
message = "Worker URL is not defined!",
|
|
code: WorkerErrorCodes = "WORKER_URL_NOT_DEFINED",
|
|
) {
|
|
super(message);
|
|
this.name = "WorkerUrlNotDefinedError";
|
|
this.code = code;
|
|
}
|
|
}
|
|
|
|
export class WorkerInTheMainChunkError extends Error {
|
|
public code;
|
|
constructor(
|
|
message = "Worker has to be in a separate chunk!",
|
|
code: WorkerErrorCodes = "WORKER_IN_THE_MAIN_CHUNK",
|
|
) {
|
|
super(message);
|
|
this.name = "WorkerInTheMainChunkError";
|
|
this.code = code;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Use this for generic, handled errors, so you can check against them
|
|
* and rethrow if needed
|
|
*/
|
|
export class ExcalidrawError extends Error {
|
|
constructor(message: string) {
|
|
super(message);
|
|
this.name = "ExcalidrawError";
|
|
}
|
|
}
|