@witchcraft/layout
    Preparing search index...

    Function findSafeSplitEdgeAndPosition

    • Parameters

      • frame: LayoutFrame
      • dragDirection: "up" | "down" | "left" | "right"
      • movePointOrPosition: number | { x: number; y: number }
      • snapAmount: { x: number; y: number } = settings.snapPointScaled
      • minSize: { height: number; width: number } = settings.minSizeScaled

      Returns {
          edge: {
              endX: number;
              endY: number;
              error?:
                  | KnownError<
                      LayoutError,
                      | {}
                      | { id: string
                      | undefined }
                      | { id: string | undefined }
                      | { size: { height: number; width: number } }
                      | Record<string, never>
                      | { frame: LayoutFrame }
                      | {
                          frame: LayoutFrame;
                          minSize: { height: number; width: number };
                          nearbyFrames: LayoutFrame[];
                      }
                      | { frame: LayoutFrame }
                      | { frame: LayoutFrame; minSize: number; newSize: number }
                      | { frame: LayoutFrame; framesRequiredToBeDeleted: LayoutFrame[] }
                      | { frame: LayoutFrame }
                      | {
                          hoveredFrameId: string;
                          movingFrameId: string;
                          zoneSide: "left" | "right" | "top" | "bottom" | "center";
                      }
                      | {
                          hoveredFrameId: string;
                          movingFrameId: string;
                          zoneSide: "left"
                          | "right"
                          | "top"
                          | "bottom"
                          | "center";
                      }
                      | {
                          hoveredFrameId: string;
                          movingFrameId: string;
                          zoneSide: "left"
                          | "right"
                          | "top"
                          | "bottom"
                          | "center";
                      }
                      | { frame: LayoutFrame }
                      | { frameSizeNeeded: number; minFrameSize: number }
                      | { max: number; min: number; wanted: number }
                      | { problemEdgeCoordinates: number[] }
                      | { id: string; side: "left" | "right" | "top" | "bottom" }
                      | { frame: string }
                      | { frame: LayoutFrame }
                      | { frame: LayoutFrame }
                      | { frame: LayoutFrame }
                      | { frame: LayoutFrame },
                  >
                  | { code: string; message: string };
              startX: number;
              startY: number;
          };
          position: number;
      }