{"version":3,"file":"bx-canvas.min.mjs","sources":["../../../../src/canvas/canvasx/bx-canvas.ts"],"sourcesContent":["import { FabricObject } from '../../shapes/Object/FabricObject';\nimport { FabricObjectProps } from '../../shapes/Object/types';\nimport { ObjectEvents } from '../../EventTypeDefs';\nimport { SerializedObjectProps } from '../../shapes/Object/types';\n\nimport { Canvas } from '../Canvas';\nimport { Point } from '../../Point';\n\ninterface ConnectorControlPoints {\n  mtaStart: Point | null;\n  mbaStart: Point | null;\n  mlaStart: Point | null;\n  mraStart: Point | null;\n}\n\nconst DEFAULT_SELECTION_COLOR = 'rgba(179, 205, 253, 0.5)';\nconst DEFAULT_SELECTION_BORDER_COLOR = '#31A4F5';\nconst DEFAULT_MOVE_CURSOR = 'default';\nconst TARGET_FIND_TOLERANCE = 8;\n\nexport class XCanvas extends Canvas {\n  uniformScaling = true;\n  interactionMode = 'mouse';\n  isEnablePanMoving = false;\n  selectionFullyContained = false;\n  skipOffscreen = true;\n  preserveObjectStacking = true;\n  targetFindTolerance = TARGET_FIND_TOLERANCE;\n  stopAnimateToRectStatus = false;\n  stopAnimateObjectToPositionStatus = false;\n  moveCursor = DEFAULT_MOVE_CURSOR;\n  selectionColor = DEFAULT_SELECTION_COLOR;\n  selectionBorderColor = DEFAULT_SELECTION_BORDER_COLOR;\n  selectionLineWidth = 1;\n  fireMiddleClick = true;\n  showBackgroundDots = true;\n  whiteboardWidth = 1920 * 5;\n  whiteboardHeight = 1080 * 6;\n  isEnableTouchMoving = false;\n  conextMenuObject: Record<string, any> = {};\n  notesDrawCanvas: HTMLCanvasElement | null = null;\n  widgetPadding = 5;\n  connectorStart: Point | null = null;\n  connectorArrow: any = null;\n  vAlignLineTimer: NodeJS.Timeout | null = null;\n  hAlignLineTimer: NodeJS.Timeout | null = null;\n  isDrawingMode = false;\n  isErasingMode = false;\n  group_zIndex: number | null = null;\n  defaultNote: Record<string, any> = {};\n  boundHandlerMouseMove: ((e: any) => void) | null = null;\n  dockingWidget: FabricObject | null = null;\n  instanceOfConnector: any = null;\n  startPointOfConnector: Point | null = null;\n  endPointOfConnector: Point | null = null;\n  inConnectingMode = false;\n  toUpdateNewObjectRemote: any[] = [];\n  toUpdateRemovedObjectRemote: any[] = [];\n  anyChanges = false;\n  thumbnail = '';\n  toUpdateObjectRemote: any[] = [];\n  lastMouseData: any;\n  _numOfColumns = 0;\n  hoveringControl = '';\n\n  findById(\n    id: string\n  ): FabricObject<\n    Partial<FabricObjectProps>,\n    SerializedObjectProps,\n    ObjectEvents\n  > | null {\n    return (\n      this.getObjects().find((widget: FabricObject) => widget.id === id) || null\n    );\n  }\n\n  getAbsoluteCoords(object: any): { left: number; top: number } {\n    return {\n      left: object.left + this._offset.left,\n      top: object.top + this._offset.top,\n    };\n  }\n\n  clearData(): void {\n    while (this._objects.length > 0) {\n      this.remove(this._objects.pop()!);\n    }\n  }\n\n  translateWidget(language: string): Promise<void> {\n    throw new Error('Method not implemented.');\n  }\n  zoomToViewAllObjects(): number {\n    return 1;\n  }\n}\n"],"names":["XCanvas","Canvas","constructor","super","arguments","_defineProperty","this","findById","id","getObjects","find","widget","getAbsoluteCoords","object","left","_offset","top","clearData","_objects","length","remove","pop","translateWidget","language","Error","zoomToViewAllObjects"],"mappings":"gIAoBO,MAAMA,UAAgBC,EAAOC,WAAAA,GAAAC,SAAAC,WAAAC,yBACjB,GAAIA,yBACH,SAAOA,4BACL,GAAKA,kCACC,GAAKA,wBACf,GAAIA,iCACK,GAAIA,6BARD,GASeA,kCACjB,GAAKA,4CACK,GAAKA,oBAZf,WAaMA,wBAfF,4BAgBUA,8BAfH,WAgBgBA,4BAChC,GAACA,0BACJ,GAAIA,6BACD,GAAIA,EAAAC,KAAA,kBACP,MAAQD,EAAAC,KAAA,mBACP,MAAQD,8BACL,GAAKA,EAAAC,KAAA,mBACa,CAAA,GAAED,yBACE,MAAIA,uBAChC,GAACA,wBACc,MAAIA,wBACb,MAAIA,yBACe,MAAIA,yBACJ,MAAIA,wBAC7B,GAAKA,wBACL,GAAKA,sBACS,MAAIA,EAAAC,KAAA,cACC,CAAA,GAAED,+BACc,MAAIA,uBAClB,MAAIA,6BACd,MAAIA,+BACO,MAAIA,6BACN,MAAIA,2BACrB,GAAKA,iCACS,IAAEA,qCACE,IAAEA,qBAC1B,GAAKA,mBACN,IAAEA,8BACgB,IAAEA,EAAAC,KAAA,qBAAA,GAAAD,uBAEhB,GAACA,yBACC,GAAE,CAEpBE,QAAAA,CACEC,GAMA,OACEF,KAAKG,aAAaC,MAAMC,GAAyBA,EAAOH,KAAOA,KAAO,IAE1E,CAEAI,iBAAAA,CAAkBC,GAChB,MAAO,CACLC,KAAMD,EAAOC,KAAOR,KAAKS,QAAQD,KACjCE,IAAKH,EAAOG,IAAMV,KAAKS,QAAQC,IAEnC,CAEAC,SAAAA,GACE,KAAOX,KAAKY,SAASC,OAAS,GAC5Bb,KAAKc,OAAOd,KAAKY,SAASG,MAE9B,CAEAC,eAAAA,CAAgBC,GACd,MAAM,IAAIC,MAAM,0BAClB,CACAC,oBAAAA,GACE,OAAO,CACT"}