refactor: separate elements logic into a standalone package (#9285)
Some checks failed
Auto release excalidraw next / Auto-release-excalidraw-next (push) Failing after 2m36s
Build Docker image / build-docker (push) Failing after 6s
Cancel previous runs / cancel (push) Failing after 1s
Publish Docker / publish-docker (push) Failing after 31s
New Sentry production release / sentry (push) Failing after 2m3s

This commit is contained in:
Marcel Mraz 2025-03-26 15:24:59 +01:00 committed by GitHub
parent a18f059188
commit 432a46ef9e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
372 changed files with 3466 additions and 2466 deletions

View file

@ -1,8 +1,5 @@
import { isFiniteNumber, pointFrom } from "@excalidraw/math";
import type { LocalPoint, Radians } from "@excalidraw/math";
import { getDefaultAppState } from "../appState";
import {
DEFAULT_FONT_FAMILY,
DEFAULT_TEXT_ALIGN,
@ -13,22 +10,24 @@ import {
DEFAULT_ELEMENT_PROPS,
DEFAULT_GRID_SIZE,
DEFAULT_GRID_STEP,
} from "../constants";
import {
getNonDeletedElements,
getNormalizedDimensions,
isInvisiblySmallElement,
refreshTextDimensions,
} from "../element";
import { normalizeFixedPoint } from "../element/binding";
randomId,
getUpdatedTimestamp,
updateActiveTool,
arrayToMap,
getSizeFromPoints,
normalizeLink,
getLineHeight,
} from "@excalidraw/common";
import { getNonDeletedElements } from "@excalidraw/element";
import { normalizeFixedPoint } from "@excalidraw/element/binding";
import {
updateElbowArrowPoints,
validateElbowPoints,
} from "../element/elbowArrow";
import { LinearElementEditor } from "../element/linearElementEditor";
import { bumpVersion } from "../element/mutateElement";
import { getContainerElement } from "../element/textElement";
import { detectLineHeight } from "../element/textMeasurements";
} from "@excalidraw/element/elbowArrow";
import { LinearElementEditor } from "@excalidraw/element/linearElementEditor";
import { bumpVersion } from "@excalidraw/element/mutateElement";
import { getContainerElement } from "@excalidraw/element/textElement";
import { detectLineHeight } from "@excalidraw/element/textMeasurements";
import {
isArrowElement,
isElbowArrow,
@ -36,20 +35,17 @@ import {
isLinearElement,
isTextElement,
isUsingAdaptiveRadius,
} from "../element/typeChecks";
import { getLineHeight } from "../fonts";
import { syncInvalidIndices } from "../fractionalIndex";
import { randomId } from "../random";
import {
getNormalizedGridSize,
getNormalizedGridStep,
getNormalizedZoom,
} from "../scene";
import { getUpdatedTimestamp, updateActiveTool } from "../utils";
import { arrayToMap } from "../utils";
import { getSizeFromPoints } from "../points";
} from "@excalidraw/element/typeChecks";
import { normalizeLink } from "./url";
import { syncInvalidIndices } from "@excalidraw/element/fractionalIndex";
import { refreshTextDimensions } from "@excalidraw/element/newElement";
import { getNormalizedDimensions } from "@excalidraw/element/sizeHelpers";
import { isInvisiblySmallElement } from "@excalidraw/element/sizeHelpers";
import type { LocalPoint, Radians } from "@excalidraw/math";
import type {
ExcalidrawArrowElement,
@ -65,9 +61,19 @@ import type {
OrderedExcalidrawElement,
PointBinding,
StrokeRoundness,
} from "../element/types";
} from "@excalidraw/element/types";
import type { MarkOptional, Mutable } from "@excalidraw/common/utility-types";
import { getDefaultAppState } from "../appState";
import {
getNormalizedGridSize,
getNormalizedGridStep,
getNormalizedZoom,
} from "../scene";
import type { AppState, BinaryFiles, LibraryItem } from "../types";
import type { MarkOptional, Mutable } from "../utility-types";
import type { ImportedDataState, LegacyAppState } from "./types";
type RestoredAppState = Omit<