mirror of
https://github.com/excalidraw/excalidraw.git
synced 2025-04-14 16:40:58 -04:00
* Introducing fractional indices as part of `element.index` * Ensuring invalid fractional indices are always synchronized with the array order * Simplifying reconciliation based on the fractional indices * Moving reconciliation inside the `@excalidraw/excalidraw` package --------- Co-authored-by: Marcel Mraz <marcel@excalidraw.com> Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
38 lines
920 B
TypeScript
38 lines
920 B
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;
|
|
}
|