@dwelle/excalidraw 0.5.0-e56eec7 → 0.5.0-e8bcd96

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (453) hide show
  1. package/dist/browser/dev/excalidraw-assets-dev/{blockDiagram-91b80b7a-NRABZKZA.js → blockDiagram-91b80b7a-SWMOP5PL.js} +6 -6
  2. package/dist/browser/dev/excalidraw-assets-dev/{c4Diagram-b2a90758-56M32CJD.js → c4Diagram-b2a90758-N33A4OZ7.js} +4 -4
  3. package/dist/browser/dev/excalidraw-assets-dev/{chunk-5EDB2FTV.js → chunk-3XV32LTV.js} +3 -3
  4. package/dist/browser/dev/excalidraw-assets-dev/{chunk-U4N7TEPH.js → chunk-CLMTS5EY.js} +2 -2
  5. package/dist/browser/dev/excalidraw-assets-dev/{chunk-V3PA4IDR.js → chunk-DIDQ2KEW.js} +3 -3
  6. package/dist/browser/dev/excalidraw-assets-dev/{chunk-OH2YDYHX.js → chunk-G3PHSEXY.js} +3 -3
  7. package/dist/browser/dev/excalidraw-assets-dev/{chunk-XZKEYTKS.js → chunk-HCMMCBMX.js} +4 -4
  8. package/dist/browser/dev/excalidraw-assets-dev/{chunk-TTH3BTHQ.js → chunk-K5QPOXOQ.js} +3 -3
  9. package/dist/browser/dev/excalidraw-assets-dev/{chunk-6VTJEXQH.js → chunk-KMSH7QAI.js} +3 -3
  10. package/dist/browser/dev/excalidraw-assets-dev/{chunk-WFT6ZJE6.js → chunk-TVSGJBCZ.js} +7 -7
  11. package/dist/browser/dev/excalidraw-assets-dev/{chunk-PXBR5CBM.js → chunk-UEFQKRSO.js} +25 -25
  12. package/dist/browser/dev/excalidraw-assets-dev/{chunk-E47I6Q7O.js → chunk-UONPRRXT.js} +5 -5
  13. package/dist/browser/dev/excalidraw-assets-dev/{chunk-KDIPICHB.js → chunk-V6ITT7XZ.js} +1134 -1094
  14. package/dist/browser/dev/excalidraw-assets-dev/chunk-V6ITT7XZ.js.map +7 -0
  15. package/dist/browser/dev/excalidraw-assets-dev/{chunk-YC6VTXEO.js → chunk-VU32GUMX.js} +4 -4
  16. package/dist/browser/dev/excalidraw-assets-dev/{chunk-C4OL7SRI.js → chunk-WQNNVZHO.js} +3 -3
  17. package/dist/browser/dev/excalidraw-assets-dev/{chunk-RTA6DTUV.js → chunk-WXRCMPEJ.js} +3 -3
  18. package/dist/browser/dev/excalidraw-assets-dev/{chunk-AKQDHN2W.js → chunk-YGAE3YWH.js} +5 -3
  19. package/dist/browser/dev/excalidraw-assets-dev/chunk-YGAE3YWH.js.map +7 -0
  20. package/dist/browser/dev/excalidraw-assets-dev/{classDiagram-30eddba6-EZJVINS6.js → classDiagram-30eddba6-HGXEWQY2.js} +6 -6
  21. package/dist/browser/dev/excalidraw-assets-dev/{classDiagram-v2-f2df5561-XSUIN44A.js → classDiagram-v2-f2df5561-ANW5DGKP.js} +9 -9
  22. package/dist/browser/dev/excalidraw-assets-dev/{directory-open-01563666-KOK2HSB6.js → directory-open-01563666-67XPRP2W.js} +2 -2
  23. package/dist/browser/dev/excalidraw-assets-dev/{directory-open-4ed118d0-P3Q3CLF3.js → directory-open-4ed118d0-TZOVUMX3.js} +2 -2
  24. package/dist/browser/dev/excalidraw-assets-dev/dist-JWLY7ZTC.js +10 -0
  25. package/dist/browser/dev/excalidraw-assets-dev/{en-PSBMWL4S.js → en-RSUSLGPV.js} +2 -2
  26. package/dist/browser/dev/excalidraw-assets-dev/{erDiagram-47591fe2-U7FLWOG3.js → erDiagram-47591fe2-HB4S6KST.js} +5 -5
  27. package/dist/browser/dev/excalidraw-assets-dev/{file-open-002ab408-EQEHGU2J.js → file-open-002ab408-ODQEDP24.js} +2 -2
  28. package/dist/browser/dev/excalidraw-assets-dev/{file-open-7c801643-QQT6O7P5.js → file-open-7c801643-RPLD6WZI.js} +2 -2
  29. package/dist/browser/dev/excalidraw-assets-dev/{file-save-3189631c-YXX2C7C6.js → file-save-3189631c-63VHNBWZ.js} +2 -2
  30. package/dist/browser/dev/excalidraw-assets-dev/{file-save-745eba88-7G554KTZ.js → file-save-745eba88-SJSX6XSD.js} +2 -2
  31. package/dist/browser/dev/excalidraw-assets-dev/{flowDiagram-5540d9b9-F2VP4JAA.js → flowDiagram-5540d9b9-4QMRNUIV.js} +10 -10
  32. package/dist/browser/dev/excalidraw-assets-dev/{flowDiagram-v2-3b53844e-2WQZZRND.js → flowDiagram-v2-3b53844e-EH5O3NBM.js} +10 -10
  33. package/dist/browser/dev/excalidraw-assets-dev/{flowchart-elk-definition-5fe447d6-IW6O2F6C.js → flowchart-elk-definition-5fe447d6-7HGYBXUA.js} +6 -6
  34. package/dist/browser/dev/excalidraw-assets-dev/{ganttDiagram-9a3bba1f-B5RH7ZAO.js → ganttDiagram-9a3bba1f-V5WA3IP4.js} +3 -3
  35. package/dist/browser/dev/excalidraw-assets-dev/{gitGraphDiagram-96e6b4ee-INGQRNLZ.js → gitGraphDiagram-96e6b4ee-6JA3Z4O2.js} +3 -3
  36. package/dist/browser/dev/excalidraw-assets-dev/{image-GMAHLVER.js → image-GHNRJPTS.js} +6 -6
  37. package/dist/browser/dev/excalidraw-assets-dev/{image-FDQLNM24.css → image-JYKIJPJC.css} +11 -14
  38. package/dist/browser/dev/excalidraw-assets-dev/image-JYKIJPJC.css.map +7 -0
  39. package/dist/browser/dev/excalidraw-assets-dev/{image-blob-reduce.esm-OX75MRP3.js → image-blob-reduce.esm-QYPUYIZK.js} +2 -2
  40. package/dist/browser/dev/excalidraw-assets-dev/{infoDiagram-bcd20f53-43FMAUOR.js → infoDiagram-bcd20f53-24MBINO2.js} +3 -3
  41. package/dist/browser/dev/excalidraw-assets-dev/{journeyDiagram-4fe6b3dc-KFVOUX4I.js → journeyDiagram-4fe6b3dc-KJ4YYJII.js} +4 -4
  42. package/dist/browser/dev/excalidraw-assets-dev/{katex-A3GRORPB.js → katex-INYZI6LE.js} +2 -2
  43. package/dist/browser/dev/excalidraw-assets-dev/{mindmap-definition-f354de21-D7S3CRQ4.js → mindmap-definition-f354de21-VZEH45PD.js} +4 -4
  44. package/dist/browser/dev/excalidraw-assets-dev/{pica-ZAD7MTGA.js → pica-YQGHCBVI.js} +2 -2
  45. package/dist/browser/dev/excalidraw-assets-dev/{pieDiagram-79897490-OON2CRZ5.js → pieDiagram-79897490-Z2LCRKGQ.js} +3 -3
  46. package/dist/browser/dev/excalidraw-assets-dev/{quadrantDiagram-62f64e94-5APTNVVS.js → quadrantDiagram-62f64e94-J3AFAFGX.js} +3 -3
  47. package/dist/browser/dev/excalidraw-assets-dev/{requirementDiagram-05bf5f74-FM7WZVKU.js → requirementDiagram-05bf5f74-M474HB6I.js} +5 -5
  48. package/dist/browser/dev/excalidraw-assets-dev/{roundRect-AYYHVX5X.js → roundRect-ZCXXTYZ4.js} +2 -2
  49. package/dist/browser/dev/excalidraw-assets-dev/{sankeyDiagram-97764748-5HLEFFGY.js → sankeyDiagram-97764748-TNQP5HMX.js} +3 -3
  50. package/dist/browser/dev/excalidraw-assets-dev/{sequenceDiagram-acc0e65c-4ZRSNGPV.js → sequenceDiagram-acc0e65c-3NIA26ZM.js} +4 -4
  51. package/dist/browser/dev/excalidraw-assets-dev/{stateDiagram-0ff1cf1a-OLTPYRPP.js → stateDiagram-0ff1cf1a-V6UXRWCT.js} +6 -6
  52. package/dist/browser/dev/excalidraw-assets-dev/{stateDiagram-v2-9a9d610d-N3XOTAEE.js → stateDiagram-v2-9a9d610d-7LTZXINB.js} +9 -9
  53. package/dist/browser/dev/excalidraw-assets-dev/{timeline-definition-fea2a41d-5PDFIYJQ.js → timeline-definition-fea2a41d-X4VGA6IX.js} +3 -3
  54. package/dist/browser/dev/excalidraw-assets-dev/{xychartDiagram-ab372869-VIWBP45Y.js → xychartDiagram-ab372869-UQCQVK6J.js} +4 -4
  55. package/dist/browser/dev/index.css +10 -13
  56. package/dist/browser/dev/index.css.map +2 -2
  57. package/dist/browser/dev/index.js +5 -5
  58. package/dist/browser/prod/excalidraw-assets/{blockDiagram-91b80b7a-ZBW6LBXS.js → blockDiagram-91b80b7a-2ADOK2UH.js} +1 -1
  59. package/dist/browser/prod/excalidraw-assets/{c4Diagram-b2a90758-GET6IFET.js → c4Diagram-b2a90758-XJ3HR543.js} +1 -1
  60. package/dist/browser/prod/excalidraw-assets/{chunk-OG2UUKMT.js → chunk-4X2EVGJW.js} +1 -1
  61. package/dist/browser/prod/excalidraw-assets/{chunk-S3O7MXSU.js → chunk-5ARJLPSL.js} +1 -1
  62. package/dist/browser/prod/excalidraw-assets/{chunk-364WSJPQ.js → chunk-6RDIDVV6.js} +4 -4
  63. package/dist/browser/prod/excalidraw-assets/chunk-AWDUHWKA.js +269 -0
  64. package/dist/browser/prod/excalidraw-assets/{chunk-QBYA3CCP.js → chunk-COMJOADH.js} +1 -1
  65. package/dist/browser/prod/excalidraw-assets/{chunk-4FM7RPKW.js → chunk-DHU3NMWJ.js} +1 -1
  66. package/dist/browser/prod/excalidraw-assets/{chunk-MRQWXP64.js → chunk-FKEWZS6G.js} +1 -1
  67. package/dist/browser/prod/excalidraw-assets/{chunk-T7MBBIYG.js → chunk-GID7HY42.js} +1 -1
  68. package/dist/browser/prod/excalidraw-assets/{chunk-Y3NNVSMP.js → chunk-H4K7WCAG.js} +1 -1
  69. package/dist/browser/prod/excalidraw-assets/{chunk-IW42BK4V.js → chunk-PDA7IERE.js} +1 -1
  70. package/dist/browser/prod/excalidraw-assets/{chunk-2UGPV7X3.js → chunk-SCYMUHNO.js} +1 -1
  71. package/dist/browser/prod/excalidraw-assets/{chunk-BJTCWAK5.js → chunk-SCZE4QLN.js} +2 -2
  72. package/dist/browser/prod/excalidraw-assets/{chunk-X7R4RA7C.js → chunk-Y4AVKYKK.js} +1 -1
  73. package/dist/browser/prod/excalidraw-assets/{chunk-4SHJFNCN.js → chunk-YFHFEESB.js} +1 -1
  74. package/dist/browser/prod/excalidraw-assets/{chunk-6TNDONBF.js → chunk-Z4B7QXT2.js} +1 -1
  75. package/dist/browser/prod/excalidraw-assets/{classDiagram-30eddba6-MJ5GZSCE.js → classDiagram-30eddba6-RQ6VHNNF.js} +1 -1
  76. package/dist/browser/prod/excalidraw-assets/{classDiagram-v2-f2df5561-FU5PRXDD.js → classDiagram-v2-f2df5561-TL3XYHL6.js} +1 -1
  77. package/dist/browser/prod/excalidraw-assets/{directory-open-01563666-UG2J4T6L.js → directory-open-01563666-ORBUXLUB.js} +1 -1
  78. package/dist/browser/prod/excalidraw-assets/{directory-open-4ed118d0-FGQD6TMW.js → directory-open-4ed118d0-HRBZ4CD4.js} +1 -1
  79. package/dist/browser/prod/excalidraw-assets/dist-IRBESAGJ.js +1 -0
  80. package/dist/browser/prod/excalidraw-assets/{en-MPFDZHEH.js → en-SOC7FEW5.js} +1 -1
  81. package/dist/browser/prod/excalidraw-assets/{erDiagram-47591fe2-YGAMNOK6.js → erDiagram-47591fe2-PBCROW3M.js} +1 -1
  82. package/dist/browser/prod/excalidraw-assets/{file-open-002ab408-WLX7QPS6.js → file-open-002ab408-SRGK55ER.js} +1 -1
  83. package/dist/browser/prod/excalidraw-assets/{file-open-7c801643-YB6IH3XI.js → file-open-7c801643-IAPRROWG.js} +1 -1
  84. package/dist/browser/prod/excalidraw-assets/{file-save-3189631c-MRYCXU63.js → file-save-3189631c-LO2KPJNL.js} +1 -1
  85. package/dist/browser/prod/excalidraw-assets/{file-save-745eba88-UZEDMFLR.js → file-save-745eba88-2DRIRHNX.js} +1 -1
  86. package/dist/browser/prod/excalidraw-assets/{flowDiagram-5540d9b9-V23UQWYJ.js → flowDiagram-5540d9b9-6MWFBLXS.js} +1 -1
  87. package/dist/browser/prod/excalidraw-assets/flowDiagram-v2-3b53844e-CD6XHMHV.js +1 -0
  88. package/dist/browser/prod/excalidraw-assets/{flowchart-elk-definition-5fe447d6-N3ISH6AG.js → flowchart-elk-definition-5fe447d6-4UPGJKHJ.js} +1 -1
  89. package/dist/browser/prod/excalidraw-assets/{ganttDiagram-9a3bba1f-7SAN2TXA.js → ganttDiagram-9a3bba1f-PDRTJQZH.js} +1 -1
  90. package/dist/browser/prod/excalidraw-assets/{gitGraphDiagram-96e6b4ee-EXV6PWXL.js → gitGraphDiagram-96e6b4ee-3J3YSPOQ.js} +1 -1
  91. package/dist/browser/prod/excalidraw-assets/image-U235TWVW.css +1 -0
  92. package/dist/browser/prod/excalidraw-assets/image-ZYZR4L6P.js +1 -0
  93. package/dist/browser/prod/excalidraw-assets/{image-blob-reduce.esm-GOFU5DPX.js → image-blob-reduce.esm-XVCS6NNL.js} +1 -1
  94. package/dist/browser/prod/excalidraw-assets/{infoDiagram-bcd20f53-LJZ36XP5.js → infoDiagram-bcd20f53-DVJQEG4I.js} +1 -1
  95. package/dist/browser/prod/excalidraw-assets/{journeyDiagram-4fe6b3dc-TFRSU2KH.js → journeyDiagram-4fe6b3dc-ASSTFADN.js} +1 -1
  96. package/dist/browser/prod/excalidraw-assets/{katex-HAQKNIIQ.js → katex-RDNZD65H.js} +1 -1
  97. package/dist/browser/prod/excalidraw-assets/{mindmap-definition-f354de21-J3C2WSJB.js → mindmap-definition-f354de21-4Y6OYM5B.js} +1 -1
  98. package/dist/browser/prod/excalidraw-assets/{pica-ABPXE5C5.js → pica-P43LGTW6.js} +1 -1
  99. package/dist/browser/prod/excalidraw-assets/{pieDiagram-79897490-FMJ3ZAF7.js → pieDiagram-79897490-XJXBVFLX.js} +1 -1
  100. package/dist/browser/prod/excalidraw-assets/{quadrantDiagram-62f64e94-YI32TPUI.js → quadrantDiagram-62f64e94-PC5DTCKV.js} +1 -1
  101. package/dist/browser/prod/excalidraw-assets/{requirementDiagram-05bf5f74-UO2ATL3U.js → requirementDiagram-05bf5f74-ILVOGHRN.js} +1 -1
  102. package/dist/browser/prod/excalidraw-assets/{roundRect-UKQBLFKQ.js → roundRect-HU3IUMCJ.js} +1 -1
  103. package/dist/browser/prod/excalidraw-assets/{sankeyDiagram-97764748-3RR36435.js → sankeyDiagram-97764748-SC5VBCT5.js} +1 -1
  104. package/dist/browser/prod/excalidraw-assets/{sequenceDiagram-acc0e65c-G2Q6J4UN.js → sequenceDiagram-acc0e65c-MFG2JCTS.js} +1 -1
  105. package/dist/browser/prod/excalidraw-assets/{stateDiagram-0ff1cf1a-QEYVXCSB.js → stateDiagram-0ff1cf1a-2HXG5RCM.js} +1 -1
  106. package/dist/browser/prod/excalidraw-assets/{stateDiagram-v2-9a9d610d-3VKD7UYK.js → stateDiagram-v2-9a9d610d-PKXRQ3RV.js} +1 -1
  107. package/dist/browser/prod/excalidraw-assets/{timeline-definition-fea2a41d-H4D6IYVJ.js → timeline-definition-fea2a41d-LOYYYOFB.js} +1 -1
  108. package/dist/browser/prod/excalidraw-assets/{xychartDiagram-ab372869-SUXFHV53.js → xychartDiagram-ab372869-LYHM7ECI.js} +1 -1
  109. package/dist/browser/prod/index.css +1 -1
  110. package/dist/browser/prod/index.js +1 -128
  111. package/dist/{prod/en-Q552WR7L.json → dev/en-GM5O55AO.json} +4 -2
  112. package/dist/dev/index.css +10 -13
  113. package/dist/dev/index.css.map +2 -2
  114. package/dist/dev/index.js +1032 -977
  115. package/dist/dev/index.js.map +4 -4
  116. package/dist/excalidraw/actions/actionAlign.d.ts +2 -2
  117. package/dist/excalidraw/actions/actionBoundText.d.ts +3 -3
  118. package/dist/excalidraw/actions/actionBoundText.js +3 -1
  119. package/dist/excalidraw/actions/actionCanvas.d.ts +3 -3
  120. package/dist/excalidraw/actions/actionDeleteSelected.d.ts +2 -2
  121. package/dist/excalidraw/actions/actionDistribute.d.ts +2 -2
  122. package/dist/excalidraw/actions/actionDuplicateSelection.d.ts +2 -2
  123. package/dist/excalidraw/actions/actionElementLock.d.ts +1 -1
  124. package/dist/excalidraw/actions/actionExport.d.ts +1 -1
  125. package/dist/excalidraw/actions/actionFinalize.d.ts +1 -1
  126. package/dist/excalidraw/actions/actionFlip.d.ts +2 -2
  127. package/dist/excalidraw/actions/actionFlip.js +5 -6
  128. package/dist/excalidraw/actions/actionFrame.d.ts +2 -2
  129. package/dist/excalidraw/actions/actionGroup.d.ts +2 -2
  130. package/dist/excalidraw/actions/actionHistory.d.ts +3 -3
  131. package/dist/excalidraw/actions/actionLinearEditor.d.ts +4 -2
  132. package/dist/excalidraw/actions/actionLinearEditor.js +19 -4
  133. package/dist/excalidraw/actions/actionNavigate.d.ts +1 -1
  134. package/dist/excalidraw/actions/actionProperties.d.ts +2 -2
  135. package/dist/excalidraw/actions/actionProperties.js +1 -1
  136. package/dist/excalidraw/actions/actionSelectAll.d.ts +1 -1
  137. package/dist/excalidraw/actions/actionTextAutoResize.d.ts +17 -0
  138. package/dist/excalidraw/actions/actionTextAutoResize.js +38 -0
  139. package/dist/excalidraw/actions/actionToggleGridMode.d.ts +1 -1
  140. package/dist/excalidraw/actions/actionZindex.d.ts +4 -0
  141. package/dist/excalidraw/actions/actionZindex.js +4 -0
  142. package/dist/excalidraw/actions/manager.d.ts +3 -3
  143. package/dist/excalidraw/actions/register.d.ts +1 -1
  144. package/dist/excalidraw/actions/shortcuts.d.ts +2 -2
  145. package/dist/excalidraw/actions/types.d.ts +6 -6
  146. package/dist/excalidraw/align.d.ts +1 -1
  147. package/dist/excalidraw/animated-trail.d.ts +2 -2
  148. package/dist/excalidraw/appState.d.ts +1 -1
  149. package/dist/excalidraw/change.d.ts +4 -4
  150. package/dist/excalidraw/change.js +1 -1
  151. package/dist/excalidraw/charts.d.ts +1 -1
  152. package/dist/excalidraw/clients.d.ts +2 -2
  153. package/dist/excalidraw/clients.js +1 -1
  154. package/dist/excalidraw/clipboard.d.ts +3 -3
  155. package/dist/excalidraw/colors.d.ts +1 -1
  156. package/dist/excalidraw/components/Actions.d.ts +3 -3
  157. package/dist/excalidraw/components/Actions.js +8 -5
  158. package/dist/excalidraw/components/App.d.ts +8 -9
  159. package/dist/excalidraw/components/App.js +50 -52
  160. package/dist/excalidraw/components/ColorPicker/ColorInput.d.ts +1 -1
  161. package/dist/excalidraw/components/ColorPicker/ColorInput.js +1 -1
  162. package/dist/excalidraw/components/ColorPicker/ColorPicker.d.ts +4 -4
  163. package/dist/excalidraw/components/ColorPicker/ColorPicker.js +1 -1
  164. package/dist/excalidraw/components/ColorPicker/Picker.d.ts +3 -3
  165. package/dist/excalidraw/components/ColorPicker/PickerColorList.d.ts +1 -1
  166. package/dist/excalidraw/components/ColorPicker/PickerHeading.d.ts +1 -1
  167. package/dist/excalidraw/components/ColorPicker/ShadeList.d.ts +1 -1
  168. package/dist/excalidraw/components/ColorPicker/TopPicks.d.ts +1 -1
  169. package/dist/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +2 -2
  170. package/dist/excalidraw/components/ColorPicker/colorPickerUtils.js +1 -1
  171. package/dist/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +2 -2
  172. package/dist/excalidraw/components/ColorPicker/keyboardNavHandlers.js +1 -1
  173. package/dist/excalidraw/components/CommandPalette/CommandPalette.d.ts +1 -1
  174. package/dist/excalidraw/components/CommandPalette/CommandPalette.js +5 -5
  175. package/dist/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +1 -1
  176. package/dist/excalidraw/components/CommandPalette/types.d.ts +3 -3
  177. package/dist/excalidraw/components/ConfirmDialog.d.ts +1 -1
  178. package/dist/excalidraw/components/ContextMenu.d.ts +2 -2
  179. package/dist/excalidraw/components/ContextMenu.js +1 -1
  180. package/dist/excalidraw/components/DarkModeToggle.d.ts +1 -1
  181. package/dist/excalidraw/components/DefaultSidebar.d.ts +2 -2
  182. package/dist/excalidraw/components/DialogActionButton.d.ts +1 -1
  183. package/dist/excalidraw/components/EyeDropper.d.ts +2 -2
  184. package/dist/excalidraw/components/FollowMode/FollowMode.d.ts +1 -1
  185. package/dist/excalidraw/components/HintViewer.d.ts +1 -1
  186. package/dist/excalidraw/components/ImageExportDialog.d.ts +1 -1
  187. package/dist/excalidraw/components/InitializeApp.d.ts +2 -2
  188. package/dist/excalidraw/components/JSONExportDialog.d.ts +3 -3
  189. package/dist/excalidraw/components/LayerUI.d.ts +4 -4
  190. package/dist/excalidraw/components/LayerUI.js +1 -1
  191. package/dist/excalidraw/components/LibraryMenu.d.ts +2 -2
  192. package/dist/excalidraw/components/LibraryMenuBrowseButton.d.ts +1 -1
  193. package/dist/excalidraw/components/LibraryMenuControlButtons.d.ts +1 -1
  194. package/dist/excalidraw/components/LibraryMenuHeaderContent.d.ts +2 -2
  195. package/dist/excalidraw/components/LibraryMenuItems.d.ts +1 -1
  196. package/dist/excalidraw/components/LibraryMenuSection.d.ts +5 -4
  197. package/dist/excalidraw/components/LibraryUnit.d.ts +2 -2
  198. package/dist/excalidraw/components/LoadingMessage.d.ts +1 -1
  199. package/dist/excalidraw/components/MagicSettings.js +2 -2
  200. package/dist/excalidraw/components/MobileMenu.d.ts +3 -3
  201. package/dist/excalidraw/components/Modal.d.ts +1 -1
  202. package/dist/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +1 -1
  203. package/dist/excalidraw/components/PasteChartDialog.d.ts +1 -1
  204. package/dist/excalidraw/components/PublishLibrary.d.ts +1 -1
  205. package/dist/excalidraw/components/SVGLayer.d.ts +1 -1
  206. package/dist/excalidraw/components/Sidebar/Sidebar.js +1 -1
  207. package/dist/excalidraw/components/Sidebar/SidebarTab.d.ts +1 -1
  208. package/dist/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +1 -1
  209. package/dist/excalidraw/components/Sidebar/SidebarTrigger.d.ts +1 -1
  210. package/dist/excalidraw/components/Sidebar/common.d.ts +1 -1
  211. package/dist/excalidraw/components/Stats.d.ts +2 -2
  212. package/dist/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +1 -1
  213. package/dist/excalidraw/components/TTDDialog/TTDDialog.js +2 -2
  214. package/dist/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +1 -1
  215. package/dist/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +1 -1
  216. package/dist/excalidraw/components/TTDDialog/TTDDialogPanels.d.ts +1 -1
  217. package/dist/excalidraw/components/TTDDialog/TTDDialogTabs.d.ts +1 -1
  218. package/dist/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +1 -1
  219. package/dist/excalidraw/components/TTDDialog/common.d.ts +4 -4
  220. package/dist/excalidraw/components/TextField.d.ts +1 -1
  221. package/dist/excalidraw/components/Toast.d.ts +1 -1
  222. package/dist/excalidraw/components/ToolButton.d.ts +3 -2
  223. package/dist/excalidraw/components/Trans.d.ts +1 -1
  224. package/dist/excalidraw/components/UserList.d.ts +1 -1
  225. package/dist/excalidraw/components/canvases/InteractiveCanvas.d.ts +1 -1
  226. package/dist/excalidraw/components/canvases/InteractiveCanvas.js +2 -2
  227. package/dist/excalidraw/components/canvases/StaticCanvas.d.ts +2 -2
  228. package/dist/excalidraw/components/canvases/StaticCanvas.js +2 -2
  229. package/dist/excalidraw/components/dropdownMenu/DropdownMenuItem.js +2 -2
  230. package/dist/excalidraw/components/footer/Footer.d.ts +2 -2
  231. package/dist/excalidraw/components/hyperlink/Hyperlink.d.ts +2 -2
  232. package/dist/excalidraw/components/hyperlink/helpers.d.ts +3 -3
  233. package/dist/excalidraw/components/icons.d.ts +3 -2
  234. package/dist/excalidraw/components/icons.js +19 -6
  235. package/dist/excalidraw/constants.d.ts +2 -2
  236. package/dist/excalidraw/context/ui-appState.d.ts +1 -1
  237. package/dist/excalidraw/cursor.d.ts +1 -1
  238. package/dist/excalidraw/data/EditorLocalStorage.d.ts +2 -2
  239. package/dist/excalidraw/data/blob.d.ts +5 -5
  240. package/dist/excalidraw/data/filesystem.d.ts +2 -1
  241. package/dist/excalidraw/data/index.d.ts +4 -4
  242. package/dist/excalidraw/data/json.d.ts +3 -3
  243. package/dist/excalidraw/data/library.d.ts +3 -3
  244. package/dist/excalidraw/data/magic.d.ts +3 -3
  245. package/dist/excalidraw/data/reconcile.d.ts +3 -3
  246. package/dist/excalidraw/data/resave.d.ts +2 -2
  247. package/dist/excalidraw/data/resave.js +1 -1
  248. package/dist/excalidraw/data/restore.d.ts +3 -3
  249. package/dist/excalidraw/data/restore.js +1 -0
  250. package/dist/excalidraw/data/transform.d.ts +3 -3
  251. package/dist/excalidraw/data/types.d.ts +3 -3
  252. package/dist/excalidraw/element/ElementCanvasButtons.d.ts +1 -1
  253. package/dist/excalidraw/element/binding.d.ts +5 -19
  254. package/dist/excalidraw/element/binding.js +109 -90
  255. package/dist/excalidraw/element/bounds.d.ts +3 -3
  256. package/dist/excalidraw/element/collision.d.ts +3 -3
  257. package/dist/excalidraw/element/collision.js +1 -1
  258. package/dist/excalidraw/element/containerCache.d.ts +1 -1
  259. package/dist/excalidraw/element/dragElements.d.ts +3 -3
  260. package/dist/excalidraw/element/embeddable.d.ts +3 -3
  261. package/dist/excalidraw/element/image.d.ts +2 -2
  262. package/dist/excalidraw/element/index.d.ts +2 -2
  263. package/dist/excalidraw/element/index.js +1 -1
  264. package/dist/excalidraw/element/linearElementEditor.d.ts +4 -4
  265. package/dist/excalidraw/element/mutateElement.d.ts +3 -3
  266. package/dist/excalidraw/element/mutateElement.js +5 -3
  267. package/dist/excalidraw/element/newElement.d.ts +3 -8
  268. package/dist/excalidraw/element/newElement.js +15 -13
  269. package/dist/excalidraw/element/resizeElements.d.ts +3 -3
  270. package/dist/excalidraw/element/resizeElements.js +71 -22
  271. package/dist/excalidraw/element/resizeTest.d.ts +4 -4
  272. package/dist/excalidraw/element/resizeTest.js +2 -4
  273. package/dist/excalidraw/element/showSelectedShapeActions.d.ts +2 -2
  274. package/dist/excalidraw/element/sizeHelpers.d.ts +2 -2
  275. package/dist/excalidraw/element/sortElements.d.ts +1 -1
  276. package/dist/excalidraw/element/textElement.d.ts +4 -4
  277. package/dist/excalidraw/element/textElement.js +8 -3
  278. package/dist/excalidraw/element/textWysiwyg.d.ts +10 -5
  279. package/dist/excalidraw/element/textWysiwyg.js +6 -8
  280. package/dist/excalidraw/element/transformHandles.d.ts +3 -3
  281. package/dist/excalidraw/element/transformHandles.js +0 -10
  282. package/dist/excalidraw/element/typeChecks.d.ts +3 -3
  283. package/dist/excalidraw/element/types.d.ts +11 -4
  284. package/dist/excalidraw/emitter.d.ts +1 -1
  285. package/dist/excalidraw/fractionalIndex.d.ts +1 -1
  286. package/dist/excalidraw/frame.d.ts +3 -3
  287. package/dist/excalidraw/gatransforms.d.ts +1 -1
  288. package/dist/excalidraw/gesture.d.ts +1 -1
  289. package/dist/excalidraw/groups.d.ts +3 -3
  290. package/dist/excalidraw/history.d.ts +4 -4
  291. package/dist/excalidraw/hooks/useEmitter.d.ts +1 -1
  292. package/dist/excalidraw/hooks/useLibraryItemSvg.d.ts +1 -1
  293. package/dist/excalidraw/i18n.d.ts +1 -1
  294. package/dist/excalidraw/index.d.ts +1 -1
  295. package/dist/excalidraw/jotai.d.ts +1 -1
  296. package/dist/excalidraw/laser-trails.d.ts +3 -2
  297. package/dist/excalidraw/locales/en.json +4 -2
  298. package/dist/excalidraw/math.d.ts +2 -2
  299. package/dist/excalidraw/points.d.ts +1 -1
  300. package/dist/excalidraw/queue.d.ts +1 -1
  301. package/dist/excalidraw/renderer/helpers.d.ts +2 -2
  302. package/dist/excalidraw/renderer/interactiveScene.d.ts +1 -1
  303. package/dist/excalidraw/renderer/interactiveScene.js +1 -1
  304. package/dist/excalidraw/renderer/renderElement.d.ts +3 -3
  305. package/dist/excalidraw/renderer/renderElement.js +2 -2
  306. package/dist/excalidraw/renderer/renderSnaps.d.ts +1 -1
  307. package/dist/excalidraw/renderer/staticScene.d.ts +1 -1
  308. package/dist/excalidraw/renderer/staticSvgScene.d.ts +4 -4
  309. package/dist/excalidraw/scene/Fonts.d.ts +2 -4
  310. package/dist/excalidraw/scene/Fonts.js +6 -12
  311. package/dist/excalidraw/scene/Renderer.d.ts +4 -4
  312. package/dist/excalidraw/scene/Renderer.js +2 -3
  313. package/dist/excalidraw/scene/Scene.d.ts +13 -7
  314. package/dist/excalidraw/scene/Scene.js +14 -8
  315. package/dist/excalidraw/scene/Shape.d.ts +1 -1
  316. package/dist/excalidraw/scene/ShapeCache.d.ts +5 -4
  317. package/dist/excalidraw/scene/comparisons.d.ts +2 -2
  318. package/dist/excalidraw/scene/export.d.ts +3 -3
  319. package/dist/excalidraw/scene/export.js +2 -2
  320. package/dist/excalidraw/scene/scroll.d.ts +2 -2
  321. package/dist/excalidraw/scene/scrollbars.d.ts +3 -3
  322. package/dist/excalidraw/scene/selection.d.ts +2 -2
  323. package/dist/excalidraw/scene/types.d.ts +4 -4
  324. package/dist/excalidraw/scene/zoom.d.ts +1 -1
  325. package/dist/excalidraw/snapping.d.ts +4 -4
  326. package/dist/excalidraw/store.d.ts +2 -2
  327. package/dist/excalidraw/types.d.ts +17 -17
  328. package/dist/excalidraw/utils.d.ts +4 -4
  329. package/dist/excalidraw/zindex.d.ts +2 -2
  330. package/dist/{dev/en-Q552WR7L.json → prod/en-GM5O55AO.json} +4 -2
  331. package/dist/prod/index.css +1 -1
  332. package/dist/prod/index.js +33 -33
  333. package/dist/utils/bbox.d.ts +2 -2
  334. package/dist/utils/collision.d.ts +1 -1
  335. package/dist/utils/export.d.ts +1 -1
  336. package/dist/utils/geometry/geometry.d.ts +1 -1
  337. package/dist/utils/geometry/shape.d.ts +1 -1
  338. package/dist/utils/withinBounds.d.ts +1 -1
  339. package/history.ts +4 -4
  340. package/package.json +1 -1
  341. package/dist/browser/dev/excalidraw-assets-dev/chunk-AKQDHN2W.js.map +0 -7
  342. package/dist/browser/dev/excalidraw-assets-dev/chunk-KDIPICHB.js.map +0 -7
  343. package/dist/browser/dev/excalidraw-assets-dev/dist-O6HOTHQF.js +0 -10
  344. package/dist/browser/dev/excalidraw-assets-dev/image-FDQLNM24.css.map +0 -7
  345. package/dist/browser/prod/excalidraw-assets/ar-SA-JA6F2FMJ-MVAFRXH2.js +0 -10
  346. package/dist/browser/prod/excalidraw-assets/az-AZ-GVIENQVH-DULWV7IG.js +0 -1
  347. package/dist/browser/prod/excalidraw-assets/bg-BG-YFNNHCEP-TOMMDX7A.js +0 -5
  348. package/dist/browser/prod/excalidraw-assets/bn-BD-LMEIWSRD-U6EPN6XJ.js +0 -5
  349. package/dist/browser/prod/excalidraw-assets/ca-ES-C2WGCLOT-4Q2376G3.js +0 -8
  350. package/dist/browser/prod/excalidraw-assets/chunk-CKRG5LOX.js +0 -335
  351. package/dist/browser/prod/excalidraw-assets/chunk-Q6QP4TRB.js +0 -11
  352. package/dist/browser/prod/excalidraw-assets/chunk-SJBOQTFA.js +0 -1
  353. package/dist/browser/prod/excalidraw-assets/cs-CZ-F2NDIQMB-4NMYRMO2.js +0 -11
  354. package/dist/browser/prod/excalidraw-assets/da-DK-WBEQB3CJ-6YAF4DNI.js +0 -5
  355. package/dist/browser/prod/excalidraw-assets/de-DE-VEIMCP7R-NSRLPHDI.js +0 -8
  356. package/dist/browser/prod/excalidraw-assets/dist-LI3DBBWR.js +0 -1
  357. package/dist/browser/prod/excalidraw-assets/el-GR-TKRKG5GQ-6N4GY2DI.js +0 -10
  358. package/dist/browser/prod/excalidraw-assets/en-Q552WR7L-QAV42NF3.js +0 -1
  359. package/dist/browser/prod/excalidraw-assets/es-ES-TOLWEZNW-ODY4LX7F.js +0 -9
  360. package/dist/browser/prod/excalidraw-assets/eu-ES-7CDRJQWJ-KF3KSB2X.js +0 -11
  361. package/dist/browser/prod/excalidraw-assets/fa-IR-527E2XGU-WLLGMWYR.js +0 -8
  362. package/dist/browser/prod/excalidraw-assets/fi-FI-NLQ7RQGZ-EZLGQEWF.js +0 -6
  363. package/dist/browser/prod/excalidraw-assets/flowDiagram-v2-3b53844e-UDC2ZAFT.js +0 -1
  364. package/dist/browser/prod/excalidraw-assets/fr-FR-KUHO4FLU-2OW7FE5V.js +0 -9
  365. package/dist/browser/prod/excalidraw-assets/gl-ES-NEXX3VBB-TESFDR6O.js +0 -10
  366. package/dist/browser/prod/excalidraw-assets/he-IL-MED2VGBZ-N4VYRCHF.js +0 -10
  367. package/dist/browser/prod/excalidraw-assets/hi-IN-5V633W7V-4VXVQ6GE.js +0 -4
  368. package/dist/browser/prod/excalidraw-assets/hu-HU-2FOZGVGR-7CHHZRPD.js +0 -7
  369. package/dist/browser/prod/excalidraw-assets/id-ID-I6BOLXTF-ULJRGCTU.js +0 -10
  370. package/dist/browser/prod/excalidraw-assets/image-ZKACJTPS.js +0 -1
  371. package/dist/browser/prod/excalidraw-assets/it-IT-WKPQOK4P-C3FTW2QG.js +0 -11
  372. package/dist/browser/prod/excalidraw-assets/ja-JP-VKA4ISRU-EBXFDMUP.js +0 -8
  373. package/dist/browser/prod/excalidraw-assets/kaa-IKPRSBNY-URJPWZZH.js +0 -1
  374. package/dist/browser/prod/excalidraw-assets/kab-KAB-IE4PHQTZ-OMISFOMM.js +0 -8
  375. package/dist/browser/prod/excalidraw-assets/kk-KZ-MNJT6XSV-56OVE4EH.js +0 -1
  376. package/dist/browser/prod/excalidraw-assets/km-KH-LADGDFXV-KI7V2Z5A.js +0 -11
  377. package/dist/browser/prod/excalidraw-assets/ko-KR-XD7AVF2F-EFYGITKM.js +0 -9
  378. package/dist/browser/prod/excalidraw-assets/ku-TR-4XBHKDQA-U25XLPMW.js +0 -9
  379. package/dist/browser/prod/excalidraw-assets/lt-LT-QC35R4YH-6TDSRONI.js +0 -3
  380. package/dist/browser/prod/excalidraw-assets/lv-LV-GSD5D3BA-KMXM2FQ7.js +0 -7
  381. package/dist/browser/prod/excalidraw-assets/mr-IN-KOLSWM7Y-NVYC6JCO.js +0 -13
  382. package/dist/browser/prod/excalidraw-assets/my-MM-M53KMUET-A2ORJJ2D.js +0 -1
  383. package/dist/browser/prod/excalidraw-assets/nb-NO-XXC6U37A-L4O4DGCC.js +0 -10
  384. package/dist/browser/prod/excalidraw-assets/nl-NL-HCCJQEUO-7Q2LV5NM.js +0 -8
  385. package/dist/browser/prod/excalidraw-assets/nn-NO-6P7Z2PI2-TUT2PFEE.js +0 -8
  386. package/dist/browser/prod/excalidraw-assets/oc-FR-JRJKPLNT-SBQHJH7X.js +0 -8
  387. package/dist/browser/prod/excalidraw-assets/pa-IN-LZWLEPIB-7NKOXI65.js +0 -4
  388. package/dist/browser/prod/excalidraw-assets/percentages-UCQDHIQF-Q4IM6ZEB.js +0 -1
  389. package/dist/browser/prod/excalidraw-assets/pl-PL-3WBLCXI2-E2SMTIVM.js +0 -9
  390. package/dist/browser/prod/excalidraw-assets/pt-BR-O3ZPTUNW-RS7M7EKX.js +0 -9
  391. package/dist/browser/prod/excalidraw-assets/pt-PT-7AQTSAFO-AEANJ2UN.js +0 -9
  392. package/dist/browser/prod/excalidraw-assets/ro-RO-HJ65JYWV-35XNZ4QJ.js +0 -11
  393. package/dist/browser/prod/excalidraw-assets/ru-RU-P7ROIYNC-ERPG3GJT.js +0 -9
  394. package/dist/browser/prod/excalidraw-assets/si-LK-7ZSWVION-YHKN25MU.js +0 -1
  395. package/dist/browser/prod/excalidraw-assets/sk-SK-NXVBGLYY-IKQZT26E.js +0 -6
  396. package/dist/browser/prod/excalidraw-assets/sl-SI-VFTWOYNP-UPLNMI3E.js +0 -6
  397. package/dist/browser/prod/excalidraw-assets/sv-SE-YONBLQNW-ZG4TE7PV.js +0 -10
  398. package/dist/browser/prod/excalidraw-assets/ta-IN-BSETPMLX-FC54FMQJ.js +0 -9
  399. package/dist/browser/prod/excalidraw-assets/th-TH-URTRDITB-K6QQ2PRO.js +0 -2
  400. package/dist/browser/prod/excalidraw-assets/tr-TR-N5SCAVTB-HMUEG6DN.js +0 -7
  401. package/dist/browser/prod/excalidraw-assets/uk-UA-LBCYVSQZ-DEJZCNRZ.js +0 -6
  402. package/dist/browser/prod/excalidraw-assets/vi-VN-POZWLIUU-EY6QFLQV.js +0 -5
  403. package/dist/browser/prod/excalidraw-assets/zh-CN-FUF5V3SC-5UIL2T3T.js +0 -10
  404. package/dist/browser/prod/excalidraw-assets/zh-HK-OB4VW42C-3ID2CCZJ.js +0 -1
  405. package/dist/browser/prod/excalidraw-assets/zh-TW-5JPVKOM7-VUPJBABS.js +0 -9
  406. /package/dist/browser/dev/excalidraw-assets-dev/{blockDiagram-91b80b7a-NRABZKZA.js.map → blockDiagram-91b80b7a-SWMOP5PL.js.map} +0 -0
  407. /package/dist/browser/dev/excalidraw-assets-dev/{c4Diagram-b2a90758-56M32CJD.js.map → c4Diagram-b2a90758-N33A4OZ7.js.map} +0 -0
  408. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-5EDB2FTV.js.map → chunk-3XV32LTV.js.map} +0 -0
  409. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-U4N7TEPH.js.map → chunk-CLMTS5EY.js.map} +0 -0
  410. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-V3PA4IDR.js.map → chunk-DIDQ2KEW.js.map} +0 -0
  411. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-OH2YDYHX.js.map → chunk-G3PHSEXY.js.map} +0 -0
  412. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-XZKEYTKS.js.map → chunk-HCMMCBMX.js.map} +0 -0
  413. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-TTH3BTHQ.js.map → chunk-K5QPOXOQ.js.map} +0 -0
  414. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-6VTJEXQH.js.map → chunk-KMSH7QAI.js.map} +0 -0
  415. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-WFT6ZJE6.js.map → chunk-TVSGJBCZ.js.map} +0 -0
  416. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-PXBR5CBM.js.map → chunk-UEFQKRSO.js.map} +0 -0
  417. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-E47I6Q7O.js.map → chunk-UONPRRXT.js.map} +0 -0
  418. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-YC6VTXEO.js.map → chunk-VU32GUMX.js.map} +0 -0
  419. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-C4OL7SRI.js.map → chunk-WQNNVZHO.js.map} +0 -0
  420. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-RTA6DTUV.js.map → chunk-WXRCMPEJ.js.map} +0 -0
  421. /package/dist/browser/dev/excalidraw-assets-dev/{classDiagram-30eddba6-EZJVINS6.js.map → classDiagram-30eddba6-HGXEWQY2.js.map} +0 -0
  422. /package/dist/browser/dev/excalidraw-assets-dev/{classDiagram-v2-f2df5561-XSUIN44A.js.map → classDiagram-v2-f2df5561-ANW5DGKP.js.map} +0 -0
  423. /package/dist/browser/dev/excalidraw-assets-dev/{directory-open-01563666-KOK2HSB6.js.map → directory-open-01563666-67XPRP2W.js.map} +0 -0
  424. /package/dist/browser/dev/excalidraw-assets-dev/{directory-open-4ed118d0-P3Q3CLF3.js.map → directory-open-4ed118d0-TZOVUMX3.js.map} +0 -0
  425. /package/dist/browser/dev/excalidraw-assets-dev/{dist-O6HOTHQF.js.map → dist-JWLY7ZTC.js.map} +0 -0
  426. /package/dist/browser/dev/excalidraw-assets-dev/{en-PSBMWL4S.js.map → en-RSUSLGPV.js.map} +0 -0
  427. /package/dist/browser/dev/excalidraw-assets-dev/{erDiagram-47591fe2-U7FLWOG3.js.map → erDiagram-47591fe2-HB4S6KST.js.map} +0 -0
  428. /package/dist/browser/dev/excalidraw-assets-dev/{file-open-002ab408-EQEHGU2J.js.map → file-open-002ab408-ODQEDP24.js.map} +0 -0
  429. /package/dist/browser/dev/excalidraw-assets-dev/{file-open-7c801643-QQT6O7P5.js.map → file-open-7c801643-RPLD6WZI.js.map} +0 -0
  430. /package/dist/browser/dev/excalidraw-assets-dev/{file-save-3189631c-YXX2C7C6.js.map → file-save-3189631c-63VHNBWZ.js.map} +0 -0
  431. /package/dist/browser/dev/excalidraw-assets-dev/{file-save-745eba88-7G554KTZ.js.map → file-save-745eba88-SJSX6XSD.js.map} +0 -0
  432. /package/dist/browser/dev/excalidraw-assets-dev/{flowDiagram-5540d9b9-F2VP4JAA.js.map → flowDiagram-5540d9b9-4QMRNUIV.js.map} +0 -0
  433. /package/dist/browser/dev/excalidraw-assets-dev/{flowDiagram-v2-3b53844e-2WQZZRND.js.map → flowDiagram-v2-3b53844e-EH5O3NBM.js.map} +0 -0
  434. /package/dist/browser/dev/excalidraw-assets-dev/{flowchart-elk-definition-5fe447d6-IW6O2F6C.js.map → flowchart-elk-definition-5fe447d6-7HGYBXUA.js.map} +0 -0
  435. /package/dist/browser/dev/excalidraw-assets-dev/{ganttDiagram-9a3bba1f-B5RH7ZAO.js.map → ganttDiagram-9a3bba1f-V5WA3IP4.js.map} +0 -0
  436. /package/dist/browser/dev/excalidraw-assets-dev/{gitGraphDiagram-96e6b4ee-INGQRNLZ.js.map → gitGraphDiagram-96e6b4ee-6JA3Z4O2.js.map} +0 -0
  437. /package/dist/browser/dev/excalidraw-assets-dev/{image-GMAHLVER.js.map → image-GHNRJPTS.js.map} +0 -0
  438. /package/dist/browser/dev/excalidraw-assets-dev/{image-blob-reduce.esm-OX75MRP3.js.map → image-blob-reduce.esm-QYPUYIZK.js.map} +0 -0
  439. /package/dist/browser/dev/excalidraw-assets-dev/{infoDiagram-bcd20f53-43FMAUOR.js.map → infoDiagram-bcd20f53-24MBINO2.js.map} +0 -0
  440. /package/dist/browser/dev/excalidraw-assets-dev/{journeyDiagram-4fe6b3dc-KFVOUX4I.js.map → journeyDiagram-4fe6b3dc-KJ4YYJII.js.map} +0 -0
  441. /package/dist/browser/dev/excalidraw-assets-dev/{katex-A3GRORPB.js.map → katex-INYZI6LE.js.map} +0 -0
  442. /package/dist/browser/dev/excalidraw-assets-dev/{mindmap-definition-f354de21-D7S3CRQ4.js.map → mindmap-definition-f354de21-VZEH45PD.js.map} +0 -0
  443. /package/dist/browser/dev/excalidraw-assets-dev/{pica-ZAD7MTGA.js.map → pica-YQGHCBVI.js.map} +0 -0
  444. /package/dist/browser/dev/excalidraw-assets-dev/{pieDiagram-79897490-OON2CRZ5.js.map → pieDiagram-79897490-Z2LCRKGQ.js.map} +0 -0
  445. /package/dist/browser/dev/excalidraw-assets-dev/{quadrantDiagram-62f64e94-5APTNVVS.js.map → quadrantDiagram-62f64e94-J3AFAFGX.js.map} +0 -0
  446. /package/dist/browser/dev/excalidraw-assets-dev/{requirementDiagram-05bf5f74-FM7WZVKU.js.map → requirementDiagram-05bf5f74-M474HB6I.js.map} +0 -0
  447. /package/dist/browser/dev/excalidraw-assets-dev/{roundRect-AYYHVX5X.js.map → roundRect-ZCXXTYZ4.js.map} +0 -0
  448. /package/dist/browser/dev/excalidraw-assets-dev/{sankeyDiagram-97764748-5HLEFFGY.js.map → sankeyDiagram-97764748-TNQP5HMX.js.map} +0 -0
  449. /package/dist/browser/dev/excalidraw-assets-dev/{sequenceDiagram-acc0e65c-4ZRSNGPV.js.map → sequenceDiagram-acc0e65c-3NIA26ZM.js.map} +0 -0
  450. /package/dist/browser/dev/excalidraw-assets-dev/{stateDiagram-0ff1cf1a-OLTPYRPP.js.map → stateDiagram-0ff1cf1a-V6UXRWCT.js.map} +0 -0
  451. /package/dist/browser/dev/excalidraw-assets-dev/{stateDiagram-v2-9a9d610d-N3XOTAEE.js.map → stateDiagram-v2-9a9d610d-7LTZXINB.js.map} +0 -0
  452. /package/dist/browser/dev/excalidraw-assets-dev/{timeline-definition-fea2a41d-5PDFIYJQ.js.map → timeline-definition-fea2a41d-X4VGA6IX.js.map} +0 -0
  453. /package/dist/browser/dev/excalidraw-assets-dev/{xychartDiagram-ab372869-VIWBP45Y.js.map → xychartDiagram-ab372869-UQCQVK6J.js.map} +0 -0
@@ -121,10 +121,22 @@ export const shareWindows = createIcon(_jsxs(_Fragment, { children: [_jsx("path"
121
121
  // Icon imported form Storybook
122
122
  // Storybook is licensed under MIT https://github.com/storybookjs/storybook/blob/next/LICENSE
123
123
  export const resetZoom = createIcon(_jsx("path", { stroke: "currentColor", strokeWidth: "40", fill: "currentColor", d: "M148 560a318 318 0 0 0 522 110 316 316 0 0 0 0-450 316 316 0 0 0-450 0c-11 11-21 22-30 34v4h47c25 0 46 21 46 46s-21 45-46 45H90c-13 0-25-6-33-14-9-9-14-20-14-33V156c0-25 20-45 45-45s45 20 45 45v32l1 1a401 401 0 0 1 623 509l212 212a42 42 0 0 1-59 59L698 757A401 401 0 0 1 65 570a42 42 0 0 1 83-10z" }), { width: 1024 });
124
- export const BringForwardIcon = createIcon(_jsxs(_Fragment, { children: [_jsxs("g", { clipPath: "url(#a)", stroke: "currentColor", strokeWidth: "1.25", strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("path", { d: "M13.889 4.167H8.333c-.767 0-1.389.622-1.389 1.389v5.555c0 .767.622 1.389 1.39 1.389h5.555c.767 0 1.389-.622 1.389-1.389V5.556c0-.767-.622-1.39-1.39-1.39Z", fill: "currentColor" }), _jsx("path", { d: "M12.5 12.5v1.389a1.389 1.389 0 0 1-1.389 1.389H5.556a1.389 1.389 0 0 1-1.39-1.39V8.334a1.389 1.389 0 0 1 1.39-1.389h1.388" })] }), _jsx("defs", { children: _jsx("clipPath", { id: "a", children: _jsx("path", { fill: "#fff", d: "M0 0h20v20H0z" }) }) })] }), modifiedTablerIconProps);
125
- export const SendBackwardIcon = createIcon(_jsxs(_Fragment, { children: [_jsxs("g", { clipPath: "url(#a)", stroke: "currentColor", strokeWidth: "1.25", strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M6.944 12.5H12.5v1.389a1.389 1.389 0 0 1-1.389 1.389H5.556a1.389 1.389 0 0 1-1.39-1.39V8.334a1.389 1.389 0 0 1 1.39-1.389h1.388", fill: "currentColor" }), _jsx("path", { d: "M13.889 4.167H8.333c-.767 0-1.389.621-1.389 1.389v5.555c0 .767.622 1.389 1.39 1.389h5.555c.767 0 1.389-.622 1.389-1.389V5.556c0-.768-.622-1.39-1.39-1.39Z" })] }), _jsx("defs", { children: _jsx("clipPath", { id: "a", children: _jsx("path", { fill: "#fff", d: "M0 0h20v20H0z" }) }) })] }), modifiedTablerIconProps);
126
- export const BringToFrontIcon = createIcon(_jsxs(_Fragment, { children: [_jsxs("g", { clipPath: "url(#a)", stroke: "currentColor", strokeWidth: "1.25", children: [_jsx("path", { d: "M8.775 6.458h2.45a2.316 2.316 0 0 1 2.317 2.316v2.452a2.316 2.316 0 0 1-2.316 2.316H8.774a2.316 2.316 0 0 1-2.317-2.316V8.774a2.316 2.316 0 0 1 2.317-2.316Z", fill: "currentColor" }), _jsx("path", { d: "M5.441 9.792h2.451a2.316 2.316 0 0 1 2.316 2.316v2.45a2.316 2.316 0 0 1-2.316 2.317h-2.45a2.316 2.316 0 0 1-2.317-2.316v-2.451a2.316 2.316 0 0 1 2.316-2.316ZM12.108 3.125h2.45a2.316 2.316 0 0 1 2.317 2.316v2.451a2.316 2.316 0 0 1-2.316 2.316h-2.451a2.316 2.316 0 0 1-2.316-2.316v-2.45a2.316 2.316 0 0 1 2.316-2.317Z" })] }), _jsx("defs", { children: _jsx("clipPath", { id: "a", children: _jsx("path", { fill: "#fff", d: "M0 0h20v20H0z" }) }) })] }), modifiedTablerIconProps);
127
- export const SendToBackIcon = createIcon(_jsxs(_Fragment, { children: [_jsxs("g", { clipPath: "url(#a)", children: [_jsx("path", { d: "M5.441 9.792h2.451a2.316 2.316 0 0 1 2.316 2.316v2.45a2.316 2.316 0 0 1-2.316 2.317h-2.45a2.316 2.316 0 0 1-2.317-2.316v-2.451a2.316 2.316 0 0 1 2.316-2.316Z", stroke: "currentColor", strokeWidth: "1.25" }), _jsx("path", { d: "M5.441 9.792h2.451a2.316 2.316 0 0 1 2.316 2.316v2.45a2.316 2.316 0 0 1-2.316 2.317h-2.45a2.316 2.316 0 0 1-2.317-2.316v-2.451a2.316 2.316 0 0 1 2.316-2.316Z", stroke: "currentColor", strokeWidth: "1.25" }), _jsx("mask", { id: "SendToBackIcon", fill: "#fff", children: _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M9.167 5.833v2.06a2.941 2.941 0 0 0 2.94 2.94h2.06v.393a2.941 2.941 0 0 1-2.941 2.94h-.393v-2.058a2.941 2.941 0 0 0-2.94-2.941h-2.06v-.393a2.941 2.941 0 0 1 2.942-2.94h.392Z" }) }), _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M9.167 5.833v2.06a2.941 2.941 0 0 0 2.94 2.94h2.06v.393a2.941 2.941 0 0 1-2.941 2.94h-.393v-2.058a2.941 2.941 0 0 0-2.94-2.941h-2.06v-.393a2.941 2.941 0 0 1 2.942-2.94h.392Z", fill: "currentColor" }), _jsx("path", { d: "M9.167 5.833h1.25v-1.25h-1.25v1.25Zm5 5h1.25v-1.25h-1.25v1.25Zm-3.334 3.334h-1.25v1.25h1.25v-1.25Zm-5-5h-1.25v1.25h1.25v-1.25Zm2.084-3.334v2.06h2.5v-2.06h-2.5Zm0 2.06a4.191 4.191 0 0 0 4.19 4.19v-2.5a1.691 1.691 0 0 1-1.69-1.69h-2.5Zm4.19 4.19h2.06v-2.5h-2.06v2.5Zm.81-1.25v.393h2.5v-.393h-2.5Zm0 .393c0 .933-.758 1.69-1.691 1.69v2.5a4.191 4.191 0 0 0 4.19-4.19h-2.5Zm-1.691 1.69h-.393v2.5h.393v-2.5Zm.857 1.25v-2.058h-2.5v2.059h2.5Zm0-2.058a4.191 4.191 0 0 0-4.19-4.191v2.5c.933 0 1.69.757 1.69 1.69h2.5Zm-4.19-4.191h-2.06v2.5h2.06v-2.5Zm-.81 1.25v-.393h-2.5v.393h2.5Zm0-.393c0-.934.758-1.69 1.692-1.69v-2.5a4.191 4.191 0 0 0-4.192 4.19h2.5Zm1.692-1.69h.392v-2.5h-.392v2.5Z", fill: "currentColor", mask: "url(#SendToBackIcon)" }), _jsx("path", { d: "M12.108 3.125h2.45a2.316 2.316 0 0 1 2.317 2.316v2.451a2.316 2.316 0 0 1-2.316 2.316h-2.451a2.316 2.316 0 0 1-2.316-2.316v-2.45a2.316 2.316 0 0 1 2.316-2.317Z", stroke: "currentColor", strokeWidth: "1.25" })] }), _jsx("defs", { children: _jsx("clipPath", { id: "a", children: _jsx("path", { fill: "#fff", d: "M0 0h20v20H0z" }) }) })] }), modifiedTablerIconProps);
124
+ const arrowBarToTopJSX = (_jsxs("g", { strokeWidth: 1.5, children: [_jsx("path", { stroke: "none", d: "M0 0h24v24H0z", fill: "none" }), _jsx("path", { d: "M12 10l0 10" }), _jsx("path", { d: "M12 10l4 4" }), _jsx("path", { d: "M12 10l-4 4" }), _jsx("path", { d: "M4 4l16 0" })] }));
125
+ const arrownNarrowUpJSX = (_jsxs("g", { strokeWidth: 1.5, children: [_jsx("path", { stroke: "none", d: "M0 0h24v24H0z", fill: "none" }), _jsx("path", { d: "M12 5l0 14" }), _jsx("path", { d: "M16 9l-4 -4" }), _jsx("path", { d: "M8 9l4 -4" })] }));
126
+ export const BringForwardIcon = createIcon(arrownNarrowUpJSX, tablerIconProps);
127
+ export const SendBackwardIcon = createIcon(arrownNarrowUpJSX, {
128
+ ...tablerIconProps,
129
+ style: {
130
+ transform: "rotate(180deg)",
131
+ },
132
+ });
133
+ export const BringToFrontIcon = createIcon(arrowBarToTopJSX, tablerIconProps);
134
+ export const SendToBackIcon = createIcon(arrowBarToTopJSX, {
135
+ ...tablerIconProps,
136
+ style: {
137
+ transform: "rotate(180deg)",
138
+ },
139
+ });
128
140
  //
129
141
  // Align action icons created from scratch to match those of z-index actions
130
142
  // Note: vertical align icons are flipped so the larger item is always the
@@ -241,7 +253,8 @@ export const pngIcon = createIcon(_jsxs("g", { strokeWidth: 1.25, children: [_js
241
253
  export const magnetIcon = createIcon(_jsxs("g", { strokeWidth: 1.25, children: [_jsx("path", { stroke: "none", d: "M0 0h24v24H0z", fill: "none" }), _jsx("path", { d: "M4 13v-8a2 2 0 0 1 2 -2h1a2 2 0 0 1 2 2v8a2 2 0 0 0 6 0v-8a2 2 0 0 1 2 -2h1a2 2 0 0 1 2 2v8a8 8 0 0 1 -16 0" }), _jsx("path", { d: "M4 8l5 0" }), _jsx("path", { d: "M15 8l4 0" })] }), tablerIconProps);
242
254
  export const coffeeIcon = createIcon(_jsxs("g", { strokeWidth: 1.25, children: [_jsx("path", { stroke: "none", d: "M0 0h24v24H0z", fill: "none" }), _jsx("path", { d: "M3 14c.83 .642 2.077 1.017 3.5 1c1.423 .017 2.67 -.358 3.5 -1c.83 -.642 2.077 -1.017 3.5 -1c1.423 -.017 2.67 .358 3.5 1" }), _jsx("path", { d: "M8 3a2.4 2.4 0 0 0 -1 2a2.4 2.4 0 0 0 1 2" }), _jsx("path", { d: "M12 3a2.4 2.4 0 0 0 -1 2a2.4 2.4 0 0 0 1 2" }), _jsx("path", { d: "M3 10h14v5a6 6 0 0 1 -6 6h-2a6 6 0 0 1 -6 -6v-5z" }), _jsx("path", { d: "M16.746 16.726a3 3 0 1 0 .252 -5.555" })] }), tablerIconProps);
243
255
  export const DeviceDesktopIcon = createIcon(_jsxs("g", { stroke: "currentColor", children: [_jsx("path", { stroke: "none", d: "M0 0h24v24H0z", fill: "none" }), _jsx("path", { d: "M3 5a1 1 0 0 1 1-1h16a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-16a1 1 0 0 1-1-1v-10zM7 20h10M9 16v4M15 16v4" })] }), { ...tablerIconProps, strokeWidth: 1.5 });
244
- // arrow-bar-to-left
245
- export const arrowBarToLeftIcon = createIcon(_jsxs("g", { children: [_jsx("path", { stroke: "none", d: "M0 0h24v24H0z", fill: "none" }), _jsx("path", { d: "M10 12l10 0" }), _jsx("path", { d: "M10 12l4 4" }), _jsx("path", { d: "M10 12l4 -4" }), _jsx("path", { d: "M4 4l0 16" })] }), tablerIconProps);
256
+ // login
257
+ export const loginIcon = createIcon(_jsxs("g", { strokeWidth: 1.5, children: [_jsx("path", { stroke: "none", d: "M0 0h24v24H0z", fill: "none" }), _jsx("path", { d: "M15 8v-2a2 2 0 0 0 -2 -2h-7a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h7a2 2 0 0 0 2 -2v-2" }), _jsx("path", { d: "M21 12h-13l3 -3" }), _jsx("path", { d: "M11 15l-3 -3" })] }), tablerIconProps);
246
258
  export const youtubeIcon = createIcon(_jsxs("g", { children: [_jsx("path", { stroke: "none", d: "M0 0h24v24H0z", fill: "none" }), _jsx("path", { d: "M2 8a4 4 0 0 1 4 -4h12a4 4 0 0 1 4 4v8a4 4 0 0 1 -4 4h-12a4 4 0 0 1 -4 -4v-8z" }), _jsx("path", { d: "M10 9l5 3l-5 3z" })] }), tablerIconProps);
247
259
  export const gridIcon = createIcon(_jsxs("g", { strokeWidth: 1.5, children: [_jsx("path", { stroke: "none", d: "M0 0h24v24H0z", fill: "none" }), _jsx("path", { d: "M3 6h18" }), _jsx("path", { d: "M3 12h18" }), _jsx("path", { d: "M3 18h18" }), _jsx("path", { d: "M6 3v18" }), _jsx("path", { d: "M12 3v18" }), _jsx("path", { d: "M18 3v18" })] }), tablerIconProps);
260
+ export const lineEditorIcon = createIcon(_jsxs("g", { strokeWidth: 1.5, children: [_jsx("path", { stroke: "none", d: "M0 0h24v24H0z", fill: "none" }), _jsx("path", { d: "M17 3m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z" }), _jsx("path", { d: "M3 17m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z" }), _jsx("path", { d: "M17 5c-6.627 0 -12 5.373 -12 12" })] }), tablerIconProps);
@@ -1,5 +1,5 @@
1
- import { AppProps, NormalizedZoomValue } from "./types";
2
- import { ExcalidrawElement, FontFamilyValues } from "./element/types";
1
+ import type { AppProps, NormalizedZoomValue } from "./types";
2
+ import type { ExcalidrawElement, FontFamilyValues } from "./element/types";
3
3
  export declare const isDarwin: boolean;
4
4
  export declare const isWindows: boolean;
5
5
  export declare const isAndroid: boolean;
@@ -1,4 +1,4 @@
1
1
  import React from "react";
2
- import { UIAppState } from "../types";
2
+ import type { UIAppState } from "../types";
3
3
  export declare const UIAppStateContext: React.Context<UIAppState>;
4
4
  export declare const useUIAppState: () => UIAppState;
@@ -1,4 +1,4 @@
1
- import { AppState } from "./types";
1
+ import type { AppState } from "./types";
2
2
  export declare const resetCursor: (interactiveCanvas: HTMLCanvasElement | null) => void;
3
3
  export declare const setCursor: (interactiveCanvas: HTMLCanvasElement | null, cursor: string) => void;
4
4
  export declare const setEraserCursor: (interactiveCanvas: HTMLCanvasElement | null, theme: AppState["theme"]) => void;
@@ -1,5 +1,5 @@
1
- import { EDITOR_LS_KEYS } from "../constants";
2
- import { JSONValue } from "../types";
1
+ import type { EDITOR_LS_KEYS } from "../constants";
2
+ import type { JSONValue } from "../types";
3
3
  export declare class EditorLocalStorage {
4
4
  static has(key: typeof EDITOR_LS_KEYS[keyof typeof EDITOR_LS_KEYS]): boolean;
5
5
  static get<T extends JSONValue>(key: typeof EDITOR_LS_KEYS[keyof typeof EDITOR_LS_KEYS]): T | null;
@@ -1,9 +1,9 @@
1
1
  import { IMAGE_MIME_TYPES, MIME_TYPES } from "../constants";
2
- import { ExcalidrawElement, FileId } from "../element/types";
3
- import { AppState, DataURL, LibraryItem } from "../types";
4
- import { ValueOf } from "../utility-types";
5
- import { FileSystemHandle } from "./filesystem";
6
- import { ImportedLibraryData } from "./types";
2
+ import type { ExcalidrawElement, FileId } from "../element/types";
3
+ import type { AppState, DataURL, LibraryItem } from "../types";
4
+ import type { ValueOf } from "../utility-types";
5
+ import type { FileSystemHandle } from "./filesystem";
6
+ import type { ImportedLibraryData } from "./types";
7
7
  export declare const getMimeType: (blob: Blob | string) => string;
8
8
  export declare const getFileHandleType: (handle: FileSystemHandle | null) => string | null;
9
9
  export declare const isImageFileHandleType: (type: string | null) => type is "png" | "svg";
@@ -1,4 +1,5 @@
1
- import { FileSystemHandle, supported as nativeFileSystemSupported } from "browser-fs-access";
1
+ import type { FileSystemHandle } from "browser-fs-access";
2
+ import { supported as nativeFileSystemSupported } from "browser-fs-access";
2
3
  import { MIME_TYPES } from "../constants";
3
4
  type FILE_EXTENSION = Exclude<keyof typeof MIME_TYPES, "binary">;
4
5
  export declare const fileOpen: <M extends boolean | undefined = false>(opts: {
@@ -1,7 +1,7 @@
1
- import { ExcalidrawElement, ExcalidrawFrameLikeElement, NonDeletedExcalidrawElement } from "../element/types";
2
- import { ExportType } from "../scene/types";
3
- import { AppState, BinaryFiles } from "../types";
4
- import { FileSystemHandle } from "./filesystem";
1
+ import type { ExcalidrawElement, ExcalidrawFrameLikeElement, NonDeletedExcalidrawElement } from "../element/types";
2
+ import type { ExportType } from "../scene/types";
3
+ import type { AppState, BinaryFiles } from "../types";
4
+ import type { FileSystemHandle } from "./filesystem";
5
5
  export { loadFromBlob } from "./blob";
6
6
  export { loadFromJSON, saveAsJSON } from "./json";
7
7
  export type ExportedElements = readonly NonDeletedExcalidrawElement[] & {
@@ -1,6 +1,6 @@
1
- import { ExcalidrawElement } from "../element/types";
2
- import { AppState, BinaryFiles, LibraryItems } from "../types";
3
- import { ImportedDataState, ImportedLibraryData } from "./types";
1
+ import type { ExcalidrawElement } from "../element/types";
2
+ import type { AppState, BinaryFiles, LibraryItems } from "../types";
3
+ import type { ImportedDataState, ImportedLibraryData } from "./types";
4
4
  export declare const serializeAsJSON: (elements: readonly ExcalidrawElement[], appState: Partial<AppState>, files: BinaryFiles, type: "local" | "database") => string;
5
5
  export declare const saveAsJSON: (elements: readonly ExcalidrawElement[], appState: AppState, files: BinaryFiles, name?: string) => Promise<{
6
6
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
@@ -1,7 +1,7 @@
1
- import { LibraryItems, ExcalidrawImperativeAPI, LibraryItemsSource, LibraryItems_anyVersion } from "../types";
1
+ import type { LibraryItems, ExcalidrawImperativeAPI, LibraryItemsSource, LibraryItems_anyVersion } from "../types";
2
2
  import type App from "../components/App";
3
- import { ExcalidrawElement } from "../element/types";
4
- import { MaybePromise } from "../utility-types";
3
+ import type { ExcalidrawElement } from "../element/types";
4
+ import type { MaybePromise } from "../utility-types";
5
5
  export type LibraryPersistedData = {
6
6
  libraryItems: LibraryItems;
7
7
  };
@@ -1,6 +1,6 @@
1
- import { Theme } from "../element/types";
2
- import { DataURL } from "../types";
3
- import { OpenAIOutput } from "./ai/types";
1
+ import type { Theme } from "../element/types";
2
+ import type { DataURL } from "../types";
3
+ import type { OpenAIOutput } from "./ai/types";
4
4
  export type MagicCacheData = {
5
5
  status: "pending";
6
6
  } | {
@@ -1,6 +1,6 @@
1
- import { OrderedExcalidrawElement } from "../element/types";
2
- import { AppState } from "../types";
3
- import { MakeBrand } from "../utility-types";
1
+ import type { OrderedExcalidrawElement } from "../element/types";
2
+ import type { AppState } from "../types";
3
+ import type { MakeBrand } from "../utility-types";
4
4
  export type ReconciledExcalidrawElement = OrderedExcalidrawElement & MakeBrand<"ReconciledElement">;
5
5
  export type RemoteExcalidrawElement = OrderedExcalidrawElement & MakeBrand<"RemoteExcalidrawElement">;
6
6
  export declare const reconcileElements: (localElements: readonly OrderedExcalidrawElement[], remoteElements: readonly RemoteExcalidrawElement[], localAppState: AppState) => ReconciledExcalidrawElement[];
@@ -1,5 +1,5 @@
1
- import { ExcalidrawElement } from "../element/types";
2
- import { AppState, BinaryFiles } from "../types";
1
+ import type { ExcalidrawElement } from "../element/types";
2
+ import type { AppState, BinaryFiles } from "../types";
3
3
  export declare const resaveAsImageWithScene: (elements: readonly ExcalidrawElement[], appState: AppState, files: BinaryFiles, name: string) => Promise<{
4
4
  fileHandle: import("browser-fs-access").FileSystemHandle;
5
5
  }>;
@@ -1,5 +1,5 @@
1
- import { exportAsImage } from ".";
2
1
  import { prepareElementsForExport } from ".";
2
+ import { exportAsImage } from ".";
3
3
  import { getFileHandleType, isImageFileHandleType } from "./blob";
4
4
  export const resaveAsImageWithScene = async (elements, appState, files, name) => {
5
5
  const { exportBackground, viewBackgroundColor, fileHandle } = appState;
@@ -1,6 +1,6 @@
1
- import { ExcalidrawElement, OrderedExcalidrawElement } from "../element/types";
2
- import { AppState, BinaryFiles, LibraryItem } from "../types";
3
- import { ImportedDataState } from "./types";
1
+ import type { ExcalidrawElement, OrderedExcalidrawElement } from "../element/types";
2
+ import type { AppState, BinaryFiles, LibraryItem } from "../types";
3
+ import type { ImportedDataState } from "./types";
4
4
  type RestoredAppState = Omit<AppState, "offsetTop" | "offsetLeft" | "width" | "height">;
5
5
  export declare const AllowedExcalidrawActiveTools: Record<AppState["activeTool"]["type"], boolean>;
6
6
  export type RestoredDataState = {
@@ -124,6 +124,7 @@ const restoreElement = (element) => {
124
124
  verticalAlign: element.verticalAlign || DEFAULT_VERTICAL_ALIGN,
125
125
  containerId: element.containerId ?? null,
126
126
  originalText: element.originalText || text,
127
+ autoResize: element.autoResize ?? true,
127
128
  lineHeight,
128
129
  });
129
130
  // if empty text, mark as deleted. We keep in array
@@ -1,6 +1,6 @@
1
- import { ElementConstructorOpts } from "../element/newElement";
2
- import { ExcalidrawBindableElement, ExcalidrawElement, ExcalidrawFrameElement, ExcalidrawFreeDrawElement, ExcalidrawGenericElement, ExcalidrawIframeLikeElement, ExcalidrawImageElement, ExcalidrawLinearElement, ExcalidrawMagicFrameElement, ExcalidrawSelectionElement, ExcalidrawTextElement, FileId, FontFamilyValues, TextAlign, VerticalAlign } from "../element/types";
3
- import { MarkOptional } from "../utility-types";
1
+ import type { ElementConstructorOpts } from "../element/newElement";
2
+ import type { ExcalidrawBindableElement, ExcalidrawElement, ExcalidrawFrameElement, ExcalidrawFreeDrawElement, ExcalidrawGenericElement, ExcalidrawIframeLikeElement, ExcalidrawImageElement, ExcalidrawLinearElement, ExcalidrawMagicFrameElement, ExcalidrawSelectionElement, ExcalidrawTextElement, FileId, FontFamilyValues, TextAlign, VerticalAlign } from "../element/types";
3
+ import type { MarkOptional } from "../utility-types";
4
4
  export type ValidLinearElement = {
5
5
  type: "arrow" | "line";
6
6
  x: number;
@@ -1,7 +1,7 @@
1
- import { ExcalidrawElement } from "../element/types";
2
- import { AppState, BinaryFiles, LibraryItems, LibraryItems_anyVersion } from "../types";
1
+ import type { ExcalidrawElement } from "../element/types";
2
+ import type { AppState, BinaryFiles, LibraryItems, LibraryItems_anyVersion } from "../types";
3
3
  import type { cleanAppStateForExport } from "../appState";
4
- import { VERSIONS } from "../constants";
4
+ import type { VERSIONS } from "../constants";
5
5
  export interface ExportedDataState {
6
6
  type: string;
7
7
  version: number;
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { ElementsMap, NonDeletedExcalidrawElement } from "./types";
2
+ import type { ElementsMap, NonDeletedExcalidrawElement } from "./types";
3
3
  import "./ElementCanvasButtons.scss";
4
4
  export declare const ElementCanvasButtons: ({ children, element, elementsMap, }: {
5
5
  children: React.ReactNode;
@@ -1,7 +1,6 @@
1
- import * as GA from "../ga";
2
- import { ExcalidrawBindableElement, ExcalidrawElement, ExcalidrawRectangleElement, ExcalidrawDiamondElement, ExcalidrawEllipseElement, ExcalidrawImageElement, ExcalidrawFrameLikeElement, ExcalidrawIframeLikeElement, NonDeleted, ExcalidrawLinearElement, NonDeletedExcalidrawElement, ElementsMap, NonDeletedSceneElementsMap, ExcalidrawTextElement } from "./types";
3
- import { AppClassProperties, AppState, Point } from "../types";
4
- import { ElementUpdate } from "./mutateElement";
1
+ import type { ExcalidrawBindableElement, ExcalidrawElement, NonDeleted, ExcalidrawLinearElement, NonDeletedExcalidrawElement, ElementsMap, NonDeletedSceneElementsMap } from "./types";
2
+ import type { AppClassProperties, AppState } from "../types";
3
+ import type { ElementUpdate } from "./mutateElement";
5
4
  export type SuggestedBinding = NonDeleted<ExcalidrawBindableElement> | SuggestedPointBinding;
6
5
  export type SuggestedPointBinding = [
7
6
  NonDeleted<ExcalidrawLinearElement>,
@@ -11,14 +10,14 @@ export type SuggestedPointBinding = [
11
10
  export declare const shouldEnableBindingForPointerEvent: (event: React.PointerEvent<HTMLElement>) => boolean;
12
11
  export declare const isBindingEnabled: (appState: AppState) => boolean;
13
12
  export declare const bindOrUnbindLinearElement: (linearElement: NonDeleted<ExcalidrawLinearElement>, startBindingElement: ExcalidrawBindableElement | null | "keep", endBindingElement: ExcalidrawBindableElement | null | "keep", elementsMap: NonDeletedSceneElementsMap) => void;
14
- export declare const bindOrUnbindSelectedElements: (selectedElements: NonDeleted<ExcalidrawElement>[], app: AppClassProperties) => void;
13
+ export declare const bindOrUnbindLinearElements: (selectedElements: NonDeleted<ExcalidrawLinearElement>[], app: AppClassProperties, isBindingEnabled: boolean, draggingPoints: readonly number[] | null) => void;
14
+ export declare const getSuggestedBindingsForArrows: (selectedElements: NonDeleted<ExcalidrawElement>[], app: AppClassProperties) => SuggestedBinding[];
15
15
  export declare const maybeBindLinearElement: (linearElement: NonDeleted<ExcalidrawLinearElement>, appState: AppState, pointerCoords: {
16
16
  x: number;
17
17
  y: number;
18
18
  }, app: AppClassProperties) => void;
19
19
  export declare const bindLinearElement: (linearElement: NonDeleted<ExcalidrawLinearElement>, hoveredElement: ExcalidrawBindableElement, startOrEnd: "start" | "end", elementsMap: NonDeletedSceneElementsMap) => void;
20
20
  export declare const isLinearElementSimpleAndAlreadyBound: (linearElement: NonDeleted<ExcalidrawLinearElement>, alreadyBoundToId: ExcalidrawBindableElement["id"] | undefined, bindableElement: ExcalidrawBindableElement) => boolean;
21
- export declare const unbindLinearElements: (elements: readonly NonDeleted<ExcalidrawElement>[], elementsMap: NonDeletedSceneElementsMap) => void;
22
21
  export declare const getHoveredElementForBinding: (pointerCoords: {
23
22
  x: number;
24
23
  y: number;
@@ -30,22 +29,9 @@ export declare const updateBoundElements: (changedElement: NonDeletedExcalidrawE
30
29
  height: number;
31
30
  };
32
31
  }) => void;
33
- export declare const getEligibleElementsForBinding: (selectedElements: NonDeleted<ExcalidrawElement>[], app: AppClassProperties) => SuggestedBinding[];
34
32
  export declare const fixBindingsAfterDuplication: (sceneElements: readonly ExcalidrawElement[], oldElements: readonly ExcalidrawElement[], oldIdToDuplicatedId: Map<ExcalidrawElement["id"], ExcalidrawElement["id"]>, duplicatesServeAsOld?: "duplicatesServeAsOld" | undefined) => void;
35
33
  export declare const fixBindingsAfterDeletion: (sceneElements: readonly ExcalidrawElement[], deletedElements: readonly ExcalidrawElement[]) => void;
36
- export declare const bindingBorderTest: (element: NonDeleted<ExcalidrawBindableElement>, { x, y }: {
37
- x: number;
38
- y: number;
39
- }, app: AppClassProperties) => boolean;
40
34
  export declare const maxBindingGap: (element: ExcalidrawElement, elementWidth: number, elementHeight: number) => number;
41
- export declare const distanceToBindableElement: (element: ExcalidrawBindableElement, point: readonly [number, number], elementsMap: ElementsMap) => number;
42
- export declare const distanceToEllipse: (element: ExcalidrawEllipseElement, point: readonly [number, number], elementsMap: ElementsMap) => number;
43
- export declare const determineFocusDistance: (element: ExcalidrawBindableElement, a: readonly [number, number], b: readonly [number, number], elementsMap: ElementsMap) => number;
44
- export declare const determineFocusPoint: (element: ExcalidrawBindableElement, focus: number, adjecentPoint: readonly [number, number], elementsMap: ElementsMap) => readonly [number, number];
45
- export declare const intersectElementWithLine: (element: ExcalidrawBindableElement, a: readonly [number, number], b: readonly [number, number], gap: number | undefined, elementsMap: ElementsMap) => Point[];
46
- export declare const getCircleIntersections: (center: readonly [number, number, number, number, number, number, number, number], radius: number, line: readonly [number, number, number, number, number, number, number, number]) => GA.Point[];
47
- export declare const findFocusPointForEllipse: (ellipse: ExcalidrawEllipseElement, relativeDistance: number, point: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
48
- export declare const findFocusPointForRectangulars: (element: ExcalidrawRectangleElement | ExcalidrawImageElement | ExcalidrawDiamondElement | ExcalidrawTextElement | ExcalidrawIframeLikeElement | ExcalidrawFrameLikeElement, relativeDistance: number, point: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
49
35
  export declare const bindingProperties: Set<BindableProp | BindingProp>;
50
36
  export type BindableProp = "boundElements";
51
37
  export type BindingProp = "frameId" | "containerId" | "startBinding" | "endBinding";
@@ -46,39 +46,110 @@ const bindOrUnbindLinearElementEdge = (linearElement, bindableElement, otherEdge
46
46
  boundToElementIds,
47
47
  // Is mutated
48
48
  unboundFromElementIds, elementsMap) => {
49
- if (bindableElement !== "keep") {
50
- if (bindableElement != null) {
51
- // Don't bind if we're trying to bind or are already bound to the same
52
- // element on the other edge already ("start" edge takes precedence).
53
- if (otherEdgeBindableElement == null ||
54
- (otherEdgeBindableElement === "keep"
55
- ? !isLinearElementSimpleAndAlreadyBoundOnOppositeEdge(linearElement, bindableElement, startOrEnd)
56
- : startOrEnd === "start" ||
57
- otherEdgeBindableElement.id !== bindableElement.id)) {
58
- bindLinearElement(linearElement, bindableElement, startOrEnd, elementsMap);
59
- boundToElementIds.add(bindableElement.id);
60
- }
49
+ // "keep" is for method chaining convenience, a "no-op", so just bail out
50
+ if (bindableElement === "keep") {
51
+ return;
52
+ }
53
+ // null means break the bind, so nothing to consider here
54
+ if (bindableElement === null) {
55
+ const unbound = unbindLinearElement(linearElement, startOrEnd);
56
+ if (unbound != null) {
57
+ unboundFromElementIds.add(unbound);
61
58
  }
62
- else {
63
- const unbound = unbindLinearElement(linearElement, startOrEnd);
64
- if (unbound != null) {
65
- unboundFromElementIds.add(unbound);
66
- }
59
+ return;
60
+ }
61
+ // While complext arrows can do anything, simple arrow with both ends trying
62
+ // to bind to the same bindable should not be allowed, start binding takes
63
+ // precedence
64
+ if (isLinearElementSimple(linearElement)) {
65
+ if (otherEdgeBindableElement == null ||
66
+ (otherEdgeBindableElement === "keep"
67
+ ? // TODO: Refactor - Needlessly complex
68
+ !isLinearElementSimpleAndAlreadyBoundOnOppositeEdge(linearElement, bindableElement, startOrEnd)
69
+ : startOrEnd === "start" ||
70
+ otherEdgeBindableElement.id !== bindableElement.id)) {
71
+ bindLinearElement(linearElement, bindableElement, startOrEnd, elementsMap);
72
+ boundToElementIds.add(bindableElement.id);
67
73
  }
68
74
  }
75
+ else {
76
+ bindLinearElement(linearElement, bindableElement, startOrEnd, elementsMap);
77
+ boundToElementIds.add(bindableElement.id);
78
+ }
69
79
  };
70
- export const bindOrUnbindSelectedElements = (selectedElements, app) => {
71
- selectedElements.forEach((selectedElement) => {
72
- if (isBindingElement(selectedElement)) {
73
- bindOrUnbindLinearElement(selectedElement, getElligibleElementForBindingElement(selectedElement, "start", app), getElligibleElementForBindingElement(selectedElement, "end", app), app.scene.getNonDeletedElementsMap());
74
- }
75
- else if (isBindableElement(selectedElement)) {
76
- maybeBindBindableElement(selectedElement, app.scene.getNonDeletedElementsMap(), app);
80
+ const getOriginalBindingIfStillCloseOfLinearElementEdge = (linearElement, edge, app) => {
81
+ const elementsMap = app.scene.getNonDeletedElementsMap();
82
+ const coors = getLinearElementEdgeCoors(linearElement, edge, elementsMap);
83
+ const elementId = edge === "start"
84
+ ? linearElement.startBinding?.elementId
85
+ : linearElement.endBinding?.elementId;
86
+ if (elementId) {
87
+ const element = elementsMap.get(elementId);
88
+ if (bindingBorderTest(element, coors, app)) {
89
+ return element;
77
90
  }
91
+ }
92
+ return null;
93
+ };
94
+ const getOriginalBindingsIfStillCloseToArrowEnds = (linearElement, app) => ["start", "end"].map((edge) => getOriginalBindingIfStillCloseOfLinearElementEdge(linearElement, edge, app));
95
+ const getBindingStrategyForDraggingArrowEndpoints = (selectedElement, isBindingEnabled, draggingPoints, app) => {
96
+ const startIdx = 0;
97
+ const endIdx = selectedElement.points.length - 1;
98
+ const startDragged = draggingPoints.findIndex((i) => i === startIdx) > -1;
99
+ const endDragged = draggingPoints.findIndex((i) => i === endIdx) > -1;
100
+ const start = startDragged
101
+ ? isBindingEnabled
102
+ ? getElligibleElementForBindingElement(selectedElement, "start", app)
103
+ : null // If binding is disabled and start is dragged, break all binds
104
+ : // We have to update the focus and gap of the binding, so let's rebind
105
+ getElligibleElementForBindingElement(selectedElement, "start", app);
106
+ const end = endDragged
107
+ ? isBindingEnabled
108
+ ? getElligibleElementForBindingElement(selectedElement, "end", app)
109
+ : null // If binding is disabled and end is dragged, break all binds
110
+ : // We have to update the focus and gap of the binding, so let's rebind
111
+ getElligibleElementForBindingElement(selectedElement, "end", app);
112
+ return [start, end];
113
+ };
114
+ const getBindingStrategyForDraggingArrowOrJoints = (selectedElement, app, isBindingEnabled) => {
115
+ const [startIsClose, endIsClose] = getOriginalBindingsIfStillCloseToArrowEnds(selectedElement, app);
116
+ const start = startIsClose
117
+ ? isBindingEnabled
118
+ ? getElligibleElementForBindingElement(selectedElement, "start", app)
119
+ : null
120
+ : null;
121
+ const end = endIsClose
122
+ ? isBindingEnabled
123
+ ? getElligibleElementForBindingElement(selectedElement, "end", app)
124
+ : null
125
+ : null;
126
+ return [start, end];
127
+ };
128
+ export const bindOrUnbindLinearElements = (selectedElements, app, isBindingEnabled, draggingPoints) => {
129
+ selectedElements.forEach((selectedElement) => {
130
+ const [start, end] = draggingPoints?.length
131
+ ? // The arrow edge points are dragged (i.e. start, end)
132
+ getBindingStrategyForDraggingArrowEndpoints(selectedElement, isBindingEnabled, draggingPoints ?? [], app)
133
+ : // The arrow itself (the shaft) or the inner joins are dragged
134
+ getBindingStrategyForDraggingArrowOrJoints(selectedElement, app, isBindingEnabled);
135
+ bindOrUnbindLinearElement(selectedElement, start, end, app.scene.getNonDeletedElementsMap());
78
136
  });
79
137
  };
80
- const maybeBindBindableElement = (bindableElement, elementsMap, app) => {
81
- getElligibleElementsForBindableElementAndWhere(bindableElement, app).forEach(([linearElement, where]) => bindOrUnbindLinearElement(linearElement, where === "end" ? "keep" : bindableElement, where === "start" ? "keep" : bindableElement, elementsMap));
138
+ export const getSuggestedBindingsForArrows = (selectedElements, app) => {
139
+ // HOT PATH: Bail out if selected elements list is too large
140
+ if (selectedElements.length > 50) {
141
+ return [];
142
+ }
143
+ return (selectedElements
144
+ .filter(isLinearElement)
145
+ .flatMap((element) => getOriginalBindingsIfStillCloseToArrowEnds(element, app))
146
+ .filter((element) => element !== null)
147
+ // Filter out bind candidates which are in the
148
+ // same selection / group with the arrow
149
+ //
150
+ // TODO: Is it worth turning the list into a set to avoid dupes?
151
+ .filter((element) => selectedElements.filter((selected) => selected.id === element?.id)
152
+ .length === 0));
82
153
  };
83
154
  export const maybeBindLinearElement = (linearElement, appState, pointerCoords, app) => {
84
155
  if (appState.startBoundElement != null) {
@@ -113,20 +184,10 @@ const isLinearElementSimpleAndAlreadyBoundOnOppositeEdge = (linearElement, binda
113
184
  return isLinearElementSimpleAndAlreadyBound(linearElement, otherBinding?.elementId, bindableElement);
114
185
  };
115
186
  export const isLinearElementSimpleAndAlreadyBound = (linearElement, alreadyBoundToId, bindableElement) => {
116
- return (alreadyBoundToId === bindableElement.id && linearElement.points.length < 3);
117
- };
118
- export const unbindLinearElements = (elements, elementsMap) => {
119
- elements.forEach((element) => {
120
- if (isBindingElement(element)) {
121
- if (element.startBinding !== null && element.endBinding !== null) {
122
- bindOrUnbindLinearElement(element, null, null, elementsMap);
123
- }
124
- else {
125
- bindOrUnbindLinearElement(element, element.startBinding ? "keep" : null, element.endBinding ? "keep" : null, elementsMap);
126
- }
127
- }
128
- });
187
+ return (alreadyBoundToId === bindableElement.id &&
188
+ isLinearElementSimple(linearElement));
129
189
  };
190
+ const isLinearElementSimple = (linearElement) => linearElement.points.length < 3;
130
191
  const unbindLinearElement = (linearElement, startOrEnd) => {
131
192
  const field = startOrEnd === "start" ? "startBinding" : "endBinding";
132
193
  const binding = linearElement[field];
@@ -247,21 +308,6 @@ const maybeCalculateNewGapWhenScaling = (changedElement, currentBinding, newSize
247
308
  const newGap = Math.max(1, Math.min(maxBindingGap(changedElement, newWidth, newHeight), gap * (newWidth < newHeight ? newWidth / width : newHeight / height)));
248
309
  return { elementId, gap: newGap, focus };
249
310
  };
250
- // TODO: this is a bottleneck, optimise
251
- export const getEligibleElementsForBinding = (selectedElements, app) => {
252
- const includedElementIds = new Set(selectedElements.map(({ id }) => id));
253
- return selectedElements.flatMap((selectedElement) => isBindingElement(selectedElement, false)
254
- ? getElligibleElementsForBindingElement(selectedElement, app).filter((element) => !includedElementIds.has(element.id))
255
- : isBindableElement(selectedElement, false)
256
- ? getElligibleElementsForBindableElementAndWhere(selectedElement, app).filter((binding) => !includedElementIds.has(binding[0].id))
257
- : []);
258
- };
259
- const getElligibleElementsForBindingElement = (linearElement, app) => {
260
- return [
261
- getElligibleElementForBindingElement(linearElement, "start", app),
262
- getElligibleElementForBindingElement(linearElement, "end", app),
263
- ].filter((element) => element != null);
264
- };
265
311
  const getElligibleElementForBindingElement = (linearElement, startOrEnd, app) => {
266
312
  return getHoveredElementForBinding(getLinearElementEdgeCoors(linearElement, startOrEnd, app.scene.getNonDeletedElementsMap()), app);
267
313
  };
@@ -269,33 +315,6 @@ const getLinearElementEdgeCoors = (linearElement, startOrEnd, elementsMap) => {
269
315
  const index = startOrEnd === "start" ? 0 : -1;
270
316
  return tupleToCoors(LinearElementEditor.getPointAtIndexGlobalCoordinates(linearElement, index, elementsMap));
271
317
  };
272
- const getElligibleElementsForBindableElementAndWhere = (bindableElement, app) => {
273
- const scene = Scene.getScene(bindableElement);
274
- return scene
275
- .getNonDeletedElements()
276
- .map((element) => {
277
- if (!isBindingElement(element, false)) {
278
- return null;
279
- }
280
- const canBindStart = isLinearElementEligibleForNewBindingByBindable(element, "start", bindableElement, scene.getNonDeletedElementsMap(), app);
281
- const canBindEnd = isLinearElementEligibleForNewBindingByBindable(element, "end", bindableElement, scene.getNonDeletedElementsMap(), app);
282
- if (!canBindStart && !canBindEnd) {
283
- return null;
284
- }
285
- return [
286
- element,
287
- canBindStart && canBindEnd ? "both" : canBindStart ? "start" : "end",
288
- bindableElement,
289
- ];
290
- })
291
- .filter((maybeElement) => maybeElement != null);
292
- };
293
- const isLinearElementEligibleForNewBindingByBindable = (linearElement, startOrEnd, bindableElement, elementsMap, app) => {
294
- const existingBinding = linearElement[startOrEnd === "start" ? "startBinding" : "endBinding"];
295
- return (existingBinding == null &&
296
- !isLinearElementSimpleAndAlreadyBoundOnOppositeEdge(linearElement, bindableElement, startOrEnd) &&
297
- bindingBorderTest(bindableElement, getLinearElementEdgeCoors(linearElement, startOrEnd, elementsMap), app));
298
- };
299
318
  // We need to:
300
319
  // 1: Update elements not selected to point to duplicated elements
301
320
  // 2: Update duplicated elements to point to other duplicated elements
@@ -389,7 +408,7 @@ const newBoundElements = (boundElements, idsToRemove, elementsToAdd = []) => {
389
408
  nextBoundElements.push(...elementsToAdd.map((x) => ({ id: x.id, type: x.type })));
390
409
  return nextBoundElements;
391
410
  };
392
- export const bindingBorderTest = (element, { x, y }, app) => {
411
+ const bindingBorderTest = (element, { x, y }, app) => {
393
412
  const threshold = maxBindingGap(element, element.width, element.height);
394
413
  const shape = app.getElementShape(element);
395
414
  return isPointOnShape([x, y], shape, threshold);
@@ -401,7 +420,7 @@ export const maxBindingGap = (element, elementWidth, elementHeight) => {
401
420
  // We make the bindable boundary bigger for bigger elements
402
421
  return Math.max(16, Math.min(0.25 * smallerDimension, 32));
403
422
  };
404
- export const distanceToBindableElement = (element, point, elementsMap) => {
423
+ const distanceToBindableElement = (element, point, elementsMap) => {
405
424
  switch (element.type) {
406
425
  case "rectangle":
407
426
  case "image":
@@ -426,7 +445,7 @@ const distanceToDiamond = (element, point, elementsMap) => {
426
445
  const side = GALine.equation(hheight, hwidth, -hheight * hwidth);
427
446
  return GAPoint.distanceToLine(pointRel, side);
428
447
  };
429
- export const distanceToEllipse = (element, point, elementsMap) => {
448
+ const distanceToEllipse = (element, point, elementsMap) => {
430
449
  const [pointRel, tangent] = ellipseParamsForTest(element, point, elementsMap);
431
450
  return -GALine.sign(tangent) * GAPoint.distanceToLine(pointRel, tangent);
432
451
  };
@@ -504,7 +523,7 @@ const coordsCenter = (x1, y1, x2, y2) => {
504
523
  // all focus points lie, so it's a number between -1 and 1.
505
524
  // The line going through `a` and `b` is a tangent to the "focus image"
506
525
  // of the element.
507
- export const determineFocusDistance = (element,
526
+ const determineFocusDistance = (element,
508
527
  // Point on the line, in absolute coordinates
509
528
  a,
510
529
  // Another point on the line, in absolute coordinates (closer to element)
@@ -541,7 +560,7 @@ b, elementsMap) => {
541
560
  }
542
561
  return ret || 0;
543
562
  };
544
- export const determineFocusPoint = (element,
563
+ const determineFocusPoint = (element,
545
564
  // The oriented, relative distance from the center of `element` of the
546
565
  // returned focusPoint
547
566
  focus, adjecentPoint, elementsMap) => {
@@ -573,7 +592,7 @@ focus, adjecentPoint, elementsMap) => {
573
592
  };
574
593
  // Returns 2 or 0 intersection points between line going through `a` and `b`
575
594
  // and the `element`, in ascending order of distance from `a`.
576
- export const intersectElementWithLine = (element,
595
+ const intersectElementWithLine = (element,
577
596
  // Point on the line, in absolute coordinates
578
597
  a,
579
598
  // Another point on the line, in absolute coordinates
@@ -688,7 +707,7 @@ const getEllipseIntersections = (element, gap, line) => {
688
707
  GA.point((xn - a * b * n * discrRoot) / squares, (yn + a * b * m * discrRoot) / squares),
689
708
  ];
690
709
  };
691
- export const getCircleIntersections = (center, radius, line) => {
710
+ const getCircleIntersections = (center, radius, line) => {
692
711
  if (radius === 0) {
693
712
  return GAPoint.distanceToLine(line, center) === 0 ? [center] : [];
694
713
  }
@@ -712,7 +731,7 @@ export const getCircleIntersections = (center, radius, line) => {
712
731
  };
713
732
  // The focus point is the tangent point of the "focus image" of the
714
733
  // `element`, where the tangent goes through `point`.
715
- export const findFocusPointForEllipse = (ellipse,
734
+ const findFocusPointForEllipse = (ellipse,
716
735
  // Between -1 and 1 (not 0) the relative size of the "focus image" of
717
736
  // the element on which the focus point lies
718
737
  relativeDistance,
@@ -739,7 +758,7 @@ point) => {
739
758
  const x = -(a ** 2 * m) / (n ** 2 * b ** 2 + m ** 2 * a ** 2);
740
759
  return GA.point(x, (-m * x - 1) / n);
741
760
  };
742
- export const findFocusPointForRectangulars = (element,
761
+ const findFocusPointForRectangulars = (element,
743
762
  // Between -1 and 1 for how far away should the focus point be relative
744
763
  // to the size of the element. Sign determines orientation.
745
764
  relativeDistance,
@@ -1,6 +1,6 @@
1
- import { ExcalidrawElement, ExcalidrawLinearElement, Arrowhead, ExcalidrawFreeDrawElement, NonDeleted, ElementsMap } from "./types";
2
- import { Drawable, Op } from "roughjs/bin/core";
3
- import { AppState, Point } from "../types";
1
+ import type { ExcalidrawElement, ExcalidrawLinearElement, Arrowhead, ExcalidrawFreeDrawElement, NonDeleted, ElementsMap } from "./types";
2
+ import type { Drawable, Op } from "roughjs/bin/core";
3
+ import type { AppState, Point } from "../types";
4
4
  export type RectangleBox = {
5
5
  x: number;
6
6
  y: number;
@@ -1,6 +1,6 @@
1
- import { ElementsMap, ExcalidrawElement } from "./types";
2
- import { FrameNameBounds } from "../types";
3
- import { GeometricShape } from "../../utils/geometry/shape";
1
+ import type { ElementsMap, ExcalidrawElement } from "./types";
2
+ import type { FrameNameBounds } from "../types";
3
+ import type { GeometricShape } from "../../utils/geometry/shape";
4
4
  export declare const shouldTestInside: (element: ExcalidrawElement) => boolean;
5
5
  export type HitTestArgs = {
6
6
  x: number;