Fix circular reference

This commit is contained in:
Mark Tolmacs 2025-05-15 12:53:44 +02:00
parent 6c59c5eefb
commit 9c0a81d42c
No known key found for this signature in database

View File

@ -17,7 +17,6 @@ import {
vectorDot, vectorDot,
vectorNormalize, vectorNormalize,
} from "@excalidraw/math"; } from "@excalidraw/math";
import { isPointInShape } from "@excalidraw/element/collision";
import { import {
COLOR_PALETTE, COLOR_PALETTE,
@ -103,9 +102,9 @@ import {
Emitter, Emitter,
} from "@excalidraw/common"; } from "@excalidraw/common";
import { getCommonBounds, getElementAbsoluteCoords } from "@excalidraw/element";
import { import {
getCommonBounds,
getElementAbsoluteCoords,
bindOrUnbindLinearElement, bindOrUnbindLinearElement,
bindOrUnbindLinearElements, bindOrUnbindLinearElements,
fixBindingsAfterDeletion, fixBindingsAfterDeletion,
@ -116,13 +115,8 @@ import {
shouldEnableBindingForPointerEvent, shouldEnableBindingForPointerEvent,
updateBoundElements, updateBoundElements,
getSuggestedBindingsForArrows, getSuggestedBindingsForArrows,
} from "@excalidraw/element"; LinearElementEditor,
newElementWith,
import { LinearElementEditor } from "@excalidraw/element";
import { newElementWith } from "@excalidraw/element";
import {
newFrameElement, newFrameElement,
newFreeDrawElement, newFreeDrawElement,
newEmbeddableElement, newEmbeddableElement,
@ -134,11 +128,9 @@ import {
newLinearElement, newLinearElement,
newTextElement, newTextElement,
refreshTextDimensions, refreshTextDimensions,
} from "@excalidraw/element"; deepCopyElement,
duplicateElements,
import { deepCopyElement, duplicateElements } from "@excalidraw/element"; isPointInShape,
import {
hasBoundTextElement, hasBoundTextElement,
isArrowElement, isArrowElement,
isBindingElement, isBindingElement,
@ -159,43 +151,27 @@ import {
isFlowchartNodeElement, isFlowchartNodeElement,
isBindableElement, isBindableElement,
isTextElement, isTextElement,
} from "@excalidraw/element";
import {
getLockedLinearCursorAlignSize, getLockedLinearCursorAlignSize,
getNormalizedDimensions, getNormalizedDimensions,
isElementCompletelyInViewport, isElementCompletelyInViewport,
isElementInViewport, isElementInViewport,
isInvisiblySmallElement, isInvisiblySmallElement,
} from "@excalidraw/element"; getCornerRadius,
isPathALoop,
import { getCornerRadius, isPathALoop } from "@excalidraw/element";
import {
createSrcDoc, createSrcDoc,
embeddableURLValidator, embeddableURLValidator,
maybeParseEmbedSrc, maybeParseEmbedSrc,
getEmbedLink, getEmbedLink,
} from "@excalidraw/element";
import {
getInitializedImageElements, getInitializedImageElements,
loadHTMLImageElement, loadHTMLImageElement,
normalizeSVG, normalizeSVG,
updateImageCache as _updateImageCache, updateImageCache as _updateImageCache,
} from "@excalidraw/element";
import {
getBoundTextElement, getBoundTextElement,
getContainerCenter, getContainerCenter,
getContainerElement, getContainerElement,
isValidTextContainer, isValidTextContainer,
redrawTextBoundingBox, redrawTextBoundingBox,
} from "@excalidraw/element"; shouldShowBoundingBox,
import { shouldShowBoundingBox } from "@excalidraw/element";
import {
getFrameChildren, getFrameChildren,
isCursorInFrame, isCursorInFrame,
addElementsToFrame, addElementsToFrame,
@ -210,29 +186,17 @@ import {
getFrameLikeTitle, getFrameLikeTitle,
getElementsOverlappingFrame, getElementsOverlappingFrame,
filterElementsEligibleAsFrameChildren, filterElementsEligibleAsFrameChildren,
} from "@excalidraw/element";
import {
hitElementBoundText, hitElementBoundText,
hitElementBoundingBoxOnly, hitElementBoundingBoxOnly,
hitElementItself, hitElementItself,
} from "@excalidraw/element"; getVisibleSceneBounds,
import { getVisibleSceneBounds } from "@excalidraw/element";
import {
FlowChartCreator, FlowChartCreator,
FlowChartNavigator, FlowChartNavigator,
getLinkDirectionFromKey, getLinkDirectionFromKey,
} from "@excalidraw/element"; cropElement,
wrapText,
import { cropElement } from "@excalidraw/element"; isElementLink,
parseElementLinkFromURL,
import { wrapText } from "@excalidraw/element";
import { isElementLink, parseElementLinkFromURL } from "@excalidraw/element";
import {
isMeasureTextSupported, isMeasureTextSupported,
normalizeText, normalizeText,
measureText, measureText,
@ -240,13 +204,8 @@ import {
getApproxMinLineWidth, getApproxMinLineWidth,
getApproxMinLineHeight, getApproxMinLineHeight,
getMinTextElementWidth, getMinTextElementWidth,
} from "@excalidraw/element"; ShapeCache,
getRenderOpacity,
import { ShapeCache } from "@excalidraw/element";
import { getRenderOpacity } from "@excalidraw/element";
import {
editGroupForSelectedElement, editGroupForSelectedElement,
getElementsInGroup, getElementsInGroup,
getSelectedGroupIdForElement, getSelectedGroupIdForElement,
@ -254,42 +213,27 @@ import {
isElementInGroup, isElementInGroup,
isSelectedViaGroup, isSelectedViaGroup,
selectGroupsForSelectedElements, selectGroupsForSelectedElements,
} from "@excalidraw/element"; syncInvalidIndices,
syncMovedIndices,
import { syncInvalidIndices, syncMovedIndices } from "@excalidraw/element";
import {
excludeElementsInFramesFromSelection, excludeElementsInFramesFromSelection,
getSelectionStateForElements, getSelectionStateForElements,
makeNextSelectedElementIds, makeNextSelectedElementIds,
} from "@excalidraw/element";
import {
getResizeOffsetXY, getResizeOffsetXY,
getResizeArrowDirection, getResizeArrowDirection,
transformElements, transformElements,
} from "@excalidraw/element";
import {
getCursorForResizingElement, getCursorForResizingElement,
getElementWithTransformHandleType, getElementWithTransformHandleType,
getTransformHandleTypeFromCoords, getTransformHandleTypeFromCoords,
} from "@excalidraw/element";
import {
dragNewElement, dragNewElement,
dragSelectedElements, dragSelectedElements,
getDragOffsetXY, getDragOffsetXY,
isNonDeletedElement,
Scene,
Store,
CaptureUpdateAction,
type ElementUpdate,
} from "@excalidraw/element"; } from "@excalidraw/element";
import { isNonDeletedElement } from "@excalidraw/element";
import { Scene } from "@excalidraw/element";
import { Store, CaptureUpdateAction } from "@excalidraw/element";
import type { ElementUpdate } from "@excalidraw/element";
import type { LocalPoint, Radians } from "@excalidraw/math"; import type { LocalPoint, Radians } from "@excalidraw/math";
import type { import type {