{
  "version": 3,
  "sources": ["../../../../src/lib/shapes/arrow/arrowpaths.ts"],
  "sourcesContent": ["import { VecLike } from '@tldraw/editor'\nimport { TLArrowInfo } from './arrow-types'\n\n/* --------------------- Curved --------------------- */\n\n/**\n * Get a solid path for a curved arrow's handles.\n *\n * @param info - The arrow info.\n * @public\n */\nexport function getCurvedArrowHandlePath(info: TLArrowInfo & { isStraight: false }) {\n\tconst {\n\t\tstart,\n\t\tend,\n\t\thandleArc: { radius, largeArcFlag, sweepFlag },\n\t} = info\n\treturn `M${start.handle.x},${start.handle.y} A${radius} ${radius} 0 ${largeArcFlag} ${sweepFlag} ${end.handle.x},${end.handle.y}`\n}\n\n/**\n * Get a solid path for a curved arrow's body.\n *\n * @param info - The arrow info.\n * @public\n */\nexport function getSolidCurvedArrowPath(info: TLArrowInfo & { isStraight: false }) {\n\tconst {\n\t\tstart,\n\t\tend,\n\t\tbodyArc: { radius, largeArcFlag, sweepFlag },\n\t} = info\n\treturn `M${start.point.x},${start.point.y} A${radius} ${radius} 0 ${largeArcFlag} ${sweepFlag} ${end.point.x},${end.point.y}`\n}\n\n/* -------------------- Straight -------------------- */\n\nfunction getArrowPath(start: VecLike, end: VecLike) {\n\treturn `M${start.x},${start.y}L${end.x},${end.y}`\n}\n\n/** @public */\nexport function getStraightArrowHandlePath(info: TLArrowInfo & { isStraight: true }) {\n\treturn getArrowPath(info.start.handle, info.end.handle)\n}\n\n/** @public */\nexport function getSolidStraightArrowPath(info: TLArrowInfo & { isStraight: true }) {\n\treturn getArrowPath(info.start.point, info.end.point)\n}\n"],
  "mappings": "AAWO,SAAS,yBAAyB,MAA2C;AACnF,QAAM;AAAA,IACL;AAAA,IACA;AAAA,IACA,WAAW,EAAE,QAAQ,cAAc,UAAU;AAAA,EAC9C,IAAI;AACJ,SAAO,IAAI,MAAM,OAAO,CAAC,IAAI,MAAM,OAAO,CAAC,KAAK,MAAM,IAAI,MAAM,MAAM,YAAY,IAAI,SAAS,IAAI,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC;AAChI;AAQO,SAAS,wBAAwB,MAA2C;AAClF,QAAM;AAAA,IACL;AAAA,IACA;AAAA,IACA,SAAS,EAAE,QAAQ,cAAc,UAAU;AAAA,EAC5C,IAAI;AACJ,SAAO,IAAI,MAAM,MAAM,CAAC,IAAI,MAAM,MAAM,CAAC,KAAK,MAAM,IAAI,MAAM,MAAM,YAAY,IAAI,SAAS,IAAI,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC;AAC5H;AAIA,SAAS,aAAa,OAAgB,KAAc;AACnD,SAAO,IAAI,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC;AAChD;AAGO,SAAS,2BAA2B,MAA0C;AACpF,SAAO,aAAa,KAAK,MAAM,QAAQ,KAAK,IAAI,MAAM;AACvD;AAGO,SAAS,0BAA0B,MAA0C;AACnF,SAAO,aAAa,KAAK,MAAM,OAAO,KAAK,IAAI,KAAK;AACrD;",
  "names": []
}
