@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
@@ -9,7 +9,7 @@ import Stack from "./Stack";
9
9
  import { ToolButton } from "./ToolButton";
10
10
  import { hasStrokeColor } from "../scene/comparisons";
11
11
  import { trackEvent } from "../analytics";
12
- import { hasBoundTextElement, isTextElement } from "../element/typeChecks";
12
+ import { hasBoundTextElement, isLinearElement, isTextElement, } from "../element/typeChecks";
13
13
  import clsx from "clsx";
14
14
  import { actionToggleZenMode } from "../actions";
15
15
  import { Tooltip } from "./Tooltip";
@@ -53,6 +53,9 @@ export const SelectedShapeActions = ({ appState, elementsMap, renderAction, }) =
53
53
  !isTransparent(appState.currentItemBackgroundColor)) ||
54
54
  targetElements.some((element) => hasBackground(element.type) && !isTransparent(element.backgroundColor));
55
55
  const showLinkIcon = targetElements.length === 1 || isSingleElementBoundContainer;
56
+ const showLineEditorAction = !appState.editingLinearElement &&
57
+ targetElements.length === 1 &&
58
+ isLinearElement(targetElements[0]);
56
59
  return (_jsxs("div", { className: "panelColumn", children: [_jsx("div", { children: canChangeStrokeColor(appState, targetElements) &&
57
60
  renderAction("changeStrokeColor") }), canChangeBackgroundColor(appState, targetElements) && (_jsx("div", { children: renderAction("changeBackgroundColor") })), showFillIcons && renderAction("changeFillStyle"), (hasStrokeWidth(appState.activeTool.type) ||
58
61
  targetElements.some((element) => hasStrokeWidth(element.type))) &&
@@ -65,14 +68,14 @@ export const SelectedShapeActions = ({ appState, elementsMap, renderAction, }) =
65
68
  suppportsHorizontalAlign(targetElements, elementsMap)) &&
66
69
  renderAction("changeTextAlign")] })), shouldAllowVerticalAlign(targetElements, elementsMap) &&
67
70
  renderAction("changeVerticalAlign"), (canHaveArrowheads(appState.activeTool.type) ||
68
- targetElements.some((element) => canHaveArrowheads(element.type))) && (_jsx(_Fragment, { children: renderAction("changeArrowhead") })), renderAction("changeOpacity"), _jsxs("fieldset", { children: [_jsx("legend", { children: t("labels.layers") }), _jsxs("div", { className: "buttonList", children: [renderAction("sendToBack"), renderAction("sendBackward"), renderAction("bringToFront"), renderAction("bringForward")] })] }), targetElements.length > 1 && !isSingleElementBoundContainer && (_jsxs("fieldset", { children: [_jsx("legend", { children: t("labels.align") }), _jsxs("div", { className: "buttonList", children: [isRTL ? (_jsxs(_Fragment, { children: [renderAction("alignRight"), renderAction("alignHorizontallyCentered"), renderAction("alignLeft")] })) : (_jsxs(_Fragment, { children: [renderAction("alignLeft"), renderAction("alignHorizontallyCentered"), renderAction("alignRight")] })), targetElements.length > 2 &&
71
+ targetElements.some((element) => canHaveArrowheads(element.type))) && (_jsx(_Fragment, { children: renderAction("changeArrowhead") })), renderAction("changeOpacity"), _jsxs("fieldset", { children: [_jsx("legend", { children: t("labels.layers") }), _jsxs("div", { className: "buttonList", children: [renderAction("sendToBack"), renderAction("sendBackward"), renderAction("bringForward"), renderAction("bringToFront")] })] }), targetElements.length > 1 && !isSingleElementBoundContainer && (_jsxs("fieldset", { children: [_jsx("legend", { children: t("labels.align") }), _jsxs("div", { className: "buttonList", children: [isRTL ? (_jsxs(_Fragment, { children: [renderAction("alignRight"), renderAction("alignHorizontallyCentered"), renderAction("alignLeft")] })) : (_jsxs(_Fragment, { children: [renderAction("alignLeft"), renderAction("alignHorizontallyCentered"), renderAction("alignRight")] })), targetElements.length > 2 &&
69
72
  renderAction("distributeHorizontally"), _jsx("div", { style: { flexBasis: "100%", height: 0 } }), _jsxs("div", { style: {
70
73
  display: "flex",
71
74
  flexWrap: "wrap",
72
75
  gap: ".5rem",
73
76
  marginTop: "-0.5rem",
74
77
  }, children: [renderAction("alignTop"), renderAction("alignVerticallyCentered"), renderAction("alignBottom"), targetElements.length > 2 &&
75
- renderAction("distributeVertically")] })] })] })), !isEditing && targetElements.length > 0 && (_jsxs("fieldset", { children: [_jsx("legend", { children: t("labels.actions") }), _jsxs("div", { className: "buttonList", children: [!device.editor.isMobile && renderAction("duplicateSelection"), !device.editor.isMobile && renderAction("deleteSelectedElements"), renderAction("group"), renderAction("ungroup"), showLinkIcon && renderAction("hyperlink")] })] }))] }));
78
+ renderAction("distributeVertically")] })] })] })), !isEditing && targetElements.length > 0 && (_jsxs("fieldset", { children: [_jsx("legend", { children: t("labels.actions") }), _jsxs("div", { className: "buttonList", children: [!device.editor.isMobile && renderAction("duplicateSelection"), !device.editor.isMobile && renderAction("deleteSelectedElements"), renderAction("group"), renderAction("ungroup"), showLinkIcon && renderAction("hyperlink"), showLineEditorAction && renderAction("toggleLinearEditor")] })] }))] }));
76
79
  };
77
80
  export const ShapesSwitcher = ({ activeTool, appState, app, UIOptions, }) => {
78
81
  const [isExtraToolsMenuOpen, setIsExtraToolsMenuOpen] = useState(false);
@@ -122,8 +125,8 @@ export const ShapesSwitcher = ({ activeTool, appState, app, UIOptions, }) => {
122
125
  fontSize: 8,
123
126
  fontFamily: "Cascadia, monospace",
124
127
  position: "absolute",
125
- background: "pink",
126
- color: "black",
128
+ background: "var(--color-promo)",
129
+ color: "var(--color-surface-lowest)",
127
130
  bottom: 3,
128
131
  right: 4,
129
132
  }, children: "AI" }))] }), _jsxs(DropdownMenu.Content, { onClickOutside: () => setIsExtraToolsMenuOpen(false), onSelect: () => setIsExtraToolsMenuOpen(false), className: "App-toolbar__extra-tools-dropdown", children: [_jsx(DropdownMenu.Item, { onSelect: () => app.setActiveTool({ type: "frame" }), icon: frameToolIcon, shortcut: KEYS.F.toLocaleUpperCase(), "data-testid": "toolbar-frame", selected: frameToolSelected, children: t("toolBar.frame") }), _jsx(DropdownMenu.Item, { onSelect: () => app.setActiveTool({ type: "embeddable" }), icon: EmbedIcon, "data-testid": "toolbar-embeddable", selected: embeddableToolSelected, children: t("toolBar.embeddable") }), _jsx(DropdownMenu.Item, { onSelect: () => app.setActiveTool({ type: "laser" }), icon: laserPointerToolIcon, "data-testid": "toolbar-laser", selected: laserToolSelected, shortcut: KEYS.K.toLocaleUpperCase(), children: t("toolBar.laser") }), _jsx("div", { style: { margin: "6px 0", fontSize: 14, fontWeight: 600 }, children: "Generate" }), app.props.aiEnabled !== false && _jsx(TTDDialogTriggerTunnel.Out, {}), _jsx(DropdownMenu.Item, { onSelect: () => app.setOpenDialog({ name: "ttd", tab: "mermaid" }), icon: mermaidLogoIcon, "data-testid": "toolbar-embeddable", children: t("toolBar.mermaidToExcalidraw") }), app.props.aiEnabled !== false && (_jsxs(_Fragment, { children: [_jsxs(DropdownMenu.Item, { onSelect: () => app.onMagicframeToolSelect(), icon: MagicIcon, "data-testid": "toolbar-magicframe", children: [t("toolBar.magicframe"), _jsx(DropdownMenu.Item.Badge, { children: "AI" })] }), _jsx(DropdownMenu.Item, { onSelect: () => {
@@ -1,15 +1,15 @@
1
1
  import React from "react";
2
- import { RoughCanvas } from "roughjs/bin/canvas";
2
+ import type { RoughCanvas } from "roughjs/bin/canvas";
3
3
  import { ActionManager } from "../actions/manager";
4
- import { EXPORT_IMAGE_TYPES } from "../constants";
5
- import { ExportedElements } from "../data";
4
+ import type { EXPORT_IMAGE_TYPES } from "../constants";
5
+ import type { ExportedElements } from "../data";
6
6
  import { LinearElementEditor } from "../element/linearElementEditor";
7
- import { ExcalidrawElement, NonDeleted, NonDeletedExcalidrawElement, ExcalidrawFrameLikeElement, ExcalidrawIframeElement, ExcalidrawEmbeddableElement, Ordered } from "../element/types";
7
+ import type { ExcalidrawElement, NonDeleted, NonDeletedExcalidrawElement, ExcalidrawFrameLikeElement, ExcalidrawIframeElement, ExcalidrawEmbeddableElement, Ordered } from "../element/types";
8
8
  import { History } from "../history";
9
9
  import Scene from "../scene/Scene";
10
- import { GeometricShape } from "../../utils/geometry/shape";
11
- import { AppClassProperties, AppProps, AppState, ExcalidrawImperativeAPI, BinaryFiles, LibraryItems, SceneData, Device, FrameNameBoundsCache, SidebarName, SidebarTabName, ToolType, OnUserFollowedPayload } from "../types";
12
- import { FileSystemHandle } from "../data/filesystem";
10
+ import type { GeometricShape } from "../../utils/geometry/shape";
11
+ import type { AppClassProperties, AppProps, AppState, ExcalidrawImperativeAPI, BinaryFiles, LibraryItems, SceneData, Device, FrameNameBoundsCache, SidebarName, SidebarTabName, ToolType, OnUserFollowedPayload } from "../types";
12
+ import type { FileSystemHandle } from "../data/filesystem";
13
13
  import { Renderer } from "../scene/Renderer";
14
14
  import { Emitter } from "../emitter";
15
15
  import { Store } from "../store";
@@ -345,7 +345,7 @@ declare class App extends React.Component<AppProps, AppState> {
345
345
  /** @default StoreAction.CAPTURE */
346
346
  storeAction?: SceneData["storeAction"];
347
347
  }) => void;
348
- private onSceneUpdated;
348
+ private triggerRender;
349
349
  /**
350
350
  * @returns whether the menu was toggled on or off
351
351
  */
@@ -474,7 +474,6 @@ declare class App extends React.Component<AppProps, AppState> {
474
474
  private updateBindingEnabledOnPointerMove;
475
475
  private maybeSuggestBindingAtCursor;
476
476
  private maybeSuggestBindingsForLinearElementAtCoords;
477
- private maybeSuggestBindingForAll;
478
477
  private clearSelection;
479
478
  private handleInteractiveCanvasRef;
480
479
  private handleAppOnDrop;
@@ -10,13 +10,13 @@ import { ActionManager } from "../actions/manager";
10
10
  import { actions } from "../actions/register";
11
11
  import { trackEvent } from "../analytics";
12
12
  import { getDefaultAppState, isEraserActive, isHandToolActive, } from "../appState";
13
- import { copyTextToSystemClipboard, parseClipboard, } from "../clipboard";
13
+ import { copyTextToSystemClipboard, parseClipboard } from "../clipboard";
14
14
  import { APP_NAME, CURSOR_TYPE, DEFAULT_MAX_IMAGE_WIDTH_OR_HEIGHT, DEFAULT_VERTICAL_ALIGN, DRAGGING_THRESHOLD, ELEMENT_SHIFT_TRANSLATE_AMOUNT, ELEMENT_TRANSLATE_AMOUNT, ENV, EVENT, FRAME_STYLE, GRID_SIZE, IMAGE_MIME_TYPES, IMAGE_RENDER_TIMEOUT, isBrave, LINE_CONFIRM_THRESHOLD, MAX_ALLOWED_FILE_BYTES, MIME_TYPES, MQ_MAX_HEIGHT_LANDSCAPE, MQ_MAX_WIDTH_LANDSCAPE, MQ_MAX_WIDTH_PORTRAIT, MQ_RIGHT_SIDEBAR_MIN_WIDTH, POINTER_BUTTON, ROUNDNESS, SCROLL_TIMEOUT, TAP_TWICE_TIMEOUT, TEXT_TO_CENTER_SNAP_THRESHOLD, THEME, THEME_FILTER, TOUCH_CTX_MENU_TIMEOUT, VERTICAL_ALIGN, YOUTUBE_STATES, ZOOM_STEP, POINTER_EVENTS, TOOL_TYPE, EDITOR_LS_KEYS, isIOS, supportsResizeObserver, DEFAULT_COLLISION_THRESHOLD, } from "../constants";
15
15
  import { exportAsImage, loadFromBlob } from "../data";
16
16
  import Library, { distributeLibraryItemsOnSquareGrid } from "../data/library";
17
17
  import { restore, restoreElements } from "../data/restore";
18
- import { dragNewElement, dragSelectedElements, duplicateElement, getCommonBounds, getCursorForResizingElement, getDragOffsetXY, getElementWithTransformHandleType, getNormalizedDimensions, getResizeArrowDirection, getResizeOffsetXY, getLockedLinearCursorAlignSize, getTransformHandleTypeFromCoords, isInvisiblySmallElement, isNonDeletedElement, isTextElement, newElement, newLinearElement, newTextElement, newImageElement, transformElements, updateTextElement, redrawTextBoundingBox, getElementAbsoluteCoords, } from "../element";
19
- import { bindOrUnbindLinearElement, bindOrUnbindSelectedElements, fixBindingsAfterDeletion, fixBindingsAfterDuplication, getEligibleElementsForBinding, getHoveredElementForBinding, isBindingEnabled, isLinearElementSimpleAndAlreadyBound, maybeBindLinearElement, shouldEnableBindingForPointerEvent, unbindLinearElements, updateBoundElements, } from "../element/binding";
18
+ import { dragNewElement, dragSelectedElements, duplicateElement, getCommonBounds, getCursorForResizingElement, getDragOffsetXY, getElementWithTransformHandleType, getNormalizedDimensions, getResizeArrowDirection, getResizeOffsetXY, getLockedLinearCursorAlignSize, getTransformHandleTypeFromCoords, isInvisiblySmallElement, isNonDeletedElement, isTextElement, newElement, newLinearElement, newTextElement, newImageElement, transformElements, refreshTextDimensions, redrawTextBoundingBox, getElementAbsoluteCoords, } from "../element";
19
+ import { bindOrUnbindLinearElement, bindOrUnbindLinearElements, fixBindingsAfterDeletion, fixBindingsAfterDuplication, getHoveredElementForBinding, isBindingEnabled, isLinearElementSimpleAndAlreadyBound, maybeBindLinearElement, shouldEnableBindingForPointerEvent, updateBoundElements, getSuggestedBindingsForArrows, } from "../element/binding";
20
20
  import { LinearElementEditor } from "../element/linearElementEditor";
21
21
  import { mutateElement, newElementWith } from "../element/mutateElement";
22
22
  import { deepCopyElement, duplicateElements, newFrameElement, newFreeDrawElement, newEmbeddableElement, newMagicFrameElement, newIframeElement, } from "../element/newElement";
@@ -37,7 +37,7 @@ import { getClosedCurveShape, getCurveShape, getEllipseShape, getFreedrawShape,
37
37
  import { isPointInShape } from "../../utils/collision";
38
38
  import { debounce, distance, getFontString, getNearestScrollableContainer, isInputLike, isToolIcon, isWritableElement, sceneCoordsToViewportCoords, tupleToCoors, viewportCoordsToSceneCoords, wrapEvent, updateObject, updateActiveTool, getShortcutKey, isTransparent, easeToValuesRAF, muteFSAbortError, isTestEnv, easeOut, updateStable, addEventListener, normalizeEOL, getDateTime, isShallowEqual, arrayToMap, } from "../utils";
39
39
  import { createSrcDoc, embeddableURLValidator, maybeParseEmbedSrc, getEmbedLink, } from "../element/embeddable";
40
- import { ContextMenu, CONTEXT_MENU_SEPARATOR, } from "./ContextMenu";
40
+ import { ContextMenu, CONTEXT_MENU_SEPARATOR } from "./ContextMenu";
41
41
  import LayerUI from "./LayerUI";
42
42
  import { Toast } from "./Toast";
43
43
  import { actionToggleViewMode } from "../actions/actionToggleViewMode";
@@ -63,7 +63,7 @@ import { getSnapLinesAtPointer, snapDraggedElements, isActiveToolNonLinearSnappa
63
63
  import { actionWrapTextInContainer } from "../actions/actionBoundText";
64
64
  import BraveMeasureTextError from "./BraveMeasureTextError";
65
65
  import { activeEyeDropperAtom } from "./EyeDropper";
66
- import { convertToExcalidrawElements, } from "../data/transform";
66
+ import { convertToExcalidrawElements } from "../data/transform";
67
67
  import { isSidebarDockedAtom } from "./Sidebar/Sidebar";
68
68
  import { StaticCanvas, InteractiveCanvas } from "./canvases";
69
69
  import { Renderer } from "../scene/Renderer";
@@ -91,6 +91,7 @@ import { isOverScrollBars } from "../scene/scrollbars";
91
91
  import { syncInvalidIndices, syncMovedIndices } from "../fractionalIndex";
92
92
  import { isPointHittingLink, isPointHittingLinkIcon, } from "./hyperlink/helpers";
93
93
  import { getShortcutFromShortcutName } from "../actions/shortcuts";
94
+ import { actionTextAutoResize } from "../actions/actionTextAutoResize";
94
95
  const AppContext = React.createContext(null);
95
96
  const AppPropsContext = React.createContext(null);
96
97
  const deviceContextInitialValue = {
@@ -288,10 +289,7 @@ class App extends React.Component {
288
289
  container: this.excalidrawContainerRef.current,
289
290
  id: this.id,
290
291
  };
291
- this.fonts = new Fonts({
292
- scene: this.scene,
293
- onSceneUpdated: this.onSceneUpdated,
294
- });
292
+ this.fonts = new Fonts({ scene: this.scene });
295
293
  this.history = new History();
296
294
  this.actionManager.registerAll(actions);
297
295
  this.actionManager.registerAction(createUndoAction(this.history, this.store));
@@ -446,7 +444,7 @@ class App extends React.Component {
446
444
  return false;
447
445
  });
448
446
  if (updated) {
449
- this.scene.informMutation();
447
+ this.scene.triggerUpdate();
450
448
  }
451
449
  // GC
452
450
  this.iFrameRefs.forEach((ref, id) => {
@@ -805,9 +803,9 @@ class App extends React.Component {
805
803
  render() {
806
804
  const selectedElements = this.scene.getSelectedElements(this.state);
807
805
  const { renderTopRightUI, renderCustomStats } = this.props;
808
- const versionNonce = this.scene.getVersionNonce();
806
+ const sceneNonce = this.scene.getSceneNonce();
809
807
  const { elementsMap, visibleElements } = this.renderer.getRenderableElements({
810
- versionNonce,
808
+ sceneNonce,
811
809
  zoom: this.state.zoom,
812
810
  offsetLeft: this.state.offsetLeft,
813
811
  offsetTop: this.state.offsetTop,
@@ -879,14 +877,14 @@ class App extends React.Component {
879
877
  this.focusContainer();
880
878
  callback?.();
881
879
  });
882
- } })), _jsx(StaticCanvas, { canvas: this.canvas, rc: this.rc, elementsMap: elementsMap, allElementsMap: allElementsMap, visibleElements: visibleElements, versionNonce: versionNonce, selectionNonce: this.state.selectionElement?.versionNonce, scale: window.devicePixelRatio, appState: this.state, renderConfig: {
880
+ } })), _jsx(StaticCanvas, { canvas: this.canvas, rc: this.rc, elementsMap: elementsMap, allElementsMap: allElementsMap, visibleElements: visibleElements, sceneNonce: sceneNonce, selectionNonce: this.state.selectionElement?.versionNonce, scale: window.devicePixelRatio, appState: this.state, renderConfig: {
883
881
  imageCache: this.imageCache,
884
882
  isExporting: false,
885
883
  renderGrid: true,
886
884
  canvasBackgroundColor: this.state.viewBackgroundColor,
887
885
  embedsValidationStatus: this.embedsValidationStatus,
888
886
  elementsPendingErasure: this.elementsPendingErasure,
889
- } }), _jsx(InteractiveCanvas, { containerRef: this.excalidrawContainerRef, canvas: this.interactiveCanvas, elementsMap: elementsMap, visibleElements: visibleElements, selectedElements: selectedElements, versionNonce: versionNonce, selectionNonce: this.state.selectionElement?.versionNonce, scale: window.devicePixelRatio, appState: this.state, device: this.device, renderInteractiveSceneCallback: this.renderInteractiveSceneCallback, handleCanvasRef: this.handleInteractiveCanvasRef, onContextMenu: this.handleCanvasContextMenu, onPointerMove: this.handleCanvasPointerMove, onPointerUp: this.handleCanvasPointerUp, onPointerCancel: this.removePointer, onTouchMove: this.handleTouchMove, onPointerDown: this.handleCanvasPointerDown, onDoubleClick: this.handleCanvasDoubleClick }), this.state.userToFollow && (_jsx(FollowMode, { width: this.state.width, height: this.state.height, userToFollow: this.state.userToFollow, onDisconnect: this.maybeUnfollowRemoteUser })), this.renderFrameNames()] }), this.renderEmbeddables()] }) }) }) }) }) }) }) }));
887
+ } }), _jsx(InteractiveCanvas, { containerRef: this.excalidrawContainerRef, canvas: this.interactiveCanvas, elementsMap: elementsMap, visibleElements: visibleElements, selectedElements: selectedElements, sceneNonce: sceneNonce, selectionNonce: this.state.selectionElement?.versionNonce, scale: window.devicePixelRatio, appState: this.state, device: this.device, renderInteractiveSceneCallback: this.renderInteractiveSceneCallback, handleCanvasRef: this.handleInteractiveCanvasRef, onContextMenu: this.handleCanvasContextMenu, onPointerMove: this.handleCanvasPointerMove, onPointerUp: this.handleCanvasPointerUp, onPointerCancel: this.removePointer, onTouchMove: this.handleTouchMove, onPointerDown: this.handleCanvasPointerDown, onDoubleClick: this.handleCanvasDoubleClick }), this.state.userToFollow && (_jsx(FollowMode, { width: this.state.width, height: this.state.height, userToFollow: this.state.userToFollow, onDisconnect: this.maybeUnfollowRemoteUser })), this.renderFrameNames()] }), this.renderEmbeddables()] }) }) }) }) }) }) }) }));
890
888
  }
891
889
  focusContainer = () => {
892
890
  this.excalidrawContainerRef.current?.focus();
@@ -944,7 +942,7 @@ class App extends React.Component {
944
942
  mutateElement(frameElement, { customData: { generationData: data } }, false);
945
943
  }
946
944
  this.magicGenerations.set(frameElement.id, data);
947
- this.onSceneUpdated();
945
+ this.triggerRender();
948
946
  };
949
947
  getTextFromElements(elements) {
950
948
  const text = elements
@@ -1464,7 +1462,7 @@ class App extends React.Component {
1464
1462
  this.store.onStoreIncrementEmitter.on((increment) => {
1465
1463
  this.history.record(increment.elementsChange, increment.appStateChange);
1466
1464
  });
1467
- this.scene.addCallback(this.onSceneUpdated);
1465
+ this.scene.onUpdate(this.triggerRender);
1468
1466
  this.addEventListeners();
1469
1467
  if (this.props.autoFocus && this.excalidrawContainerRef.current) {
1470
1468
  this.focusContainer();
@@ -1502,6 +1500,7 @@ class App extends React.Component {
1502
1500
  componentWillUnmount() {
1503
1501
  this.renderer.destroy();
1504
1502
  this.scene = new Scene();
1503
+ this.fonts = new Fonts({ scene: this.scene });
1505
1504
  this.renderer = new Renderer(this.scene);
1506
1505
  this.files = {};
1507
1506
  this.imageCache.clear();
@@ -2350,7 +2349,7 @@ class App extends React.Component {
2350
2349
  ShapeCache.delete(element);
2351
2350
  }
2352
2351
  });
2353
- this.scene.informMutation();
2352
+ this.scene.triggerUpdate();
2354
2353
  this.addNewImagesToImageCache();
2355
2354
  });
2356
2355
  updateScene = withBatchedUpdates((sceneData) => {
@@ -2384,7 +2383,7 @@ class App extends React.Component {
2384
2383
  this.setState({ collaborators: sceneData.collaborators });
2385
2384
  }
2386
2385
  });
2387
- onSceneUpdated = () => {
2386
+ triggerRender = () => {
2388
2387
  this.setState({});
2389
2388
  };
2390
2389
  /**
@@ -2552,7 +2551,9 @@ class App extends React.Component {
2552
2551
  simultaneouslyUpdated: selectedElements,
2553
2552
  });
2554
2553
  });
2555
- this.maybeSuggestBindingForAll(selectedElements);
2554
+ this.setState({
2555
+ suggestedBindings: getSuggestedBindingsForArrows(selectedElements, this),
2556
+ });
2556
2557
  event.preventDefault();
2557
2558
  }
2558
2559
  else if (event.key === KEYS.ENTER) {
@@ -2690,11 +2691,7 @@ class App extends React.Component {
2690
2691
  this.setState({ isBindingEnabled: true });
2691
2692
  }
2692
2693
  if (isArrowKey(event.key)) {
2693
- const selectedElements = this.scene.getSelectedElements(this.state);
2694
- const elementsMap = this.scene.getNonDeletedElementsMap();
2695
- isBindingEnabled(this.state)
2696
- ? bindOrUnbindSelectedElements(selectedElements, this)
2697
- : unbindLinearElements(selectedElements, elementsMap);
2694
+ bindOrUnbindLinearElements(this.scene.getSelectedElements(this.state).filter(isLinearElement), this, isBindingEnabled(this.state), this.state.selectedLinearElement?.selectedPointsIndices ?? []);
2698
2695
  this.setState({ suggestedBindings: [] });
2699
2696
  }
2700
2697
  });
@@ -2845,15 +2842,16 @@ class App extends React.Component {
2845
2842
  });
2846
2843
  handleTextWysiwyg(element, { isExistingElement = false, }) {
2847
2844
  const elementsMap = this.scene.getElementsMapIncludingDeleted();
2848
- const updateElement = (text, originalText, isDeleted) => {
2845
+ const updateElement = (nextOriginalText, isDeleted) => {
2849
2846
  this.scene.replaceAllElements([
2850
2847
  // Not sure why we include deleted elements as well hence using deleted elements map
2851
2848
  ...this.scene.getElementsIncludingDeleted().map((_element) => {
2852
2849
  if (_element.id === element.id && isTextElement(_element)) {
2853
- return updateTextElement(_element, getContainerElement(_element, elementsMap), elementsMap, {
2854
- text,
2855
- isDeleted,
2856
- originalText,
2850
+ return newElementWith(_element, {
2851
+ originalText: nextOriginalText,
2852
+ isDeleted: isDeleted ?? _element.isDeleted,
2853
+ // returns (wrapped) text and new dimensions
2854
+ ...refreshTextDimensions(_element, getContainerElement(_element, elementsMap), elementsMap, nextOriginalText),
2857
2855
  });
2858
2856
  }
2859
2857
  return _element;
@@ -2873,15 +2871,15 @@ class App extends React.Component {
2873
2871
  viewportY - this.state.offsetTop,
2874
2872
  ];
2875
2873
  },
2876
- onChange: withBatchedUpdates((text) => {
2877
- updateElement(text, text, false);
2874
+ onChange: withBatchedUpdates((nextOriginalText) => {
2875
+ updateElement(nextOriginalText, false);
2878
2876
  if (isNonDeletedElement(element)) {
2879
2877
  updateBoundElements(element, elementsMap);
2880
2878
  }
2881
2879
  }),
2882
- onSubmit: withBatchedUpdates(({ text, viaKeyboard, originalText }) => {
2883
- const isDeleted = !text.trim();
2884
- updateElement(text, originalText, isDeleted);
2880
+ onSubmit: withBatchedUpdates(({ viaKeyboard, nextOriginalText }) => {
2881
+ const isDeleted = !nextOriginalText.trim();
2882
+ updateElement(nextOriginalText, isDeleted);
2885
2883
  // select the created text element only if submitting via keyboard
2886
2884
  // (when submitting via click it should act as signal to deselect)
2887
2885
  if (!isDeleted && viaKeyboard) {
@@ -2920,7 +2918,7 @@ class App extends React.Component {
2920
2918
  this.deselectElements();
2921
2919
  // do an initial update to re-initialize element position since we were
2922
2920
  // modifying element's x/y for sake of editor (case: syncing to remote)
2923
- updateElement(element.text, element.originalText, false);
2921
+ updateElement(element.originalText, false);
2924
2922
  }
2925
2923
  deselectElements() {
2926
2924
  this.setState({
@@ -3715,7 +3713,7 @@ class App extends React.Component {
3715
3713
  }
3716
3714
  }
3717
3715
  this.elementsPendingErasure = new Set(this.elementsPendingErasure);
3718
- this.onSceneUpdated();
3716
+ this.triggerRender();
3719
3717
  }
3720
3718
  };
3721
3719
  // set touch moving for mobile context menu
@@ -4993,7 +4991,9 @@ class App extends React.Component {
4993
4991
  // able to select and interact with the text input
4994
4992
  !this.state.editingFrame &&
4995
4993
  dragSelectedElements(pointerDownState, selectedElements, dragOffset, this.state, this.scene, snapOffset, event[KEYS.CTRL_OR_CMD] ? null : this.state.gridSize);
4996
- this.maybeSuggestBindingForAll(selectedElements);
4994
+ this.setState({
4995
+ suggestedBindings: getSuggestedBindingsForArrows(selectedElements, this),
4996
+ });
4997
4997
  // We duplicate the selected element if alt is pressed on pointer move
4998
4998
  if (event.altKey && !pointerDownState.hit.hasBeenDuplicated) {
4999
4999
  // Move the currently selected elements to the top of the z index stack, and
@@ -5401,7 +5401,7 @@ class App extends React.Component {
5401
5401
  groupIds: [],
5402
5402
  });
5403
5403
  removeElementsFromFrame([linearElement], this.scene.getNonDeletedElementsMap());
5404
- this.scene.informMutation();
5404
+ this.scene.triggerUpdate();
5405
5405
  }
5406
5406
  }
5407
5407
  }
@@ -5678,9 +5678,12 @@ class App extends React.Component {
5678
5678
  this.store.shouldCaptureIncrement();
5679
5679
  }
5680
5680
  if (pointerDownState.drag.hasOccurred || isResizing || isRotating) {
5681
- isBindingEnabled(this.state)
5682
- ? bindOrUnbindSelectedElements(this.scene.getSelectedElements(this.state), this)
5683
- : unbindLinearElements(this.scene.getSelectedElements(this.state), elementsMap);
5681
+ // We only allow binding via linear elements, specifically via dragging
5682
+ // the endpoints ("start" or "end").
5683
+ const linearElements = this.scene
5684
+ .getSelectedElements(this.state)
5685
+ .filter(isLinearElement);
5686
+ bindOrUnbindLinearElements(linearElements, this, isBindingEnabled(this.state), this.state.selectedLinearElement?.selectedPointsIndices ?? []);
5684
5687
  }
5685
5688
  if (activeTool.type === "laser") {
5686
5689
  this.laserTrails.endPath();
@@ -5715,7 +5718,7 @@ class App extends React.Component {
5715
5718
  }
5716
5719
  restoreReadyToEraseElements = () => {
5717
5720
  this.elementsPendingErasure = new Set();
5718
- this.onSceneUpdated();
5721
+ this.triggerRender();
5719
5722
  };
5720
5723
  eraseElements = () => {
5721
5724
  let didChange = false;
@@ -6007,7 +6010,7 @@ class App extends React.Component {
6007
6010
  if (uncachedImageElements.length) {
6008
6011
  const { updatedFiles } = await this.updateImageCache(uncachedImageElements, files);
6009
6012
  if (updatedFiles.size) {
6010
- this.scene.informMutation();
6013
+ this.scene.triggerUpdate();
6011
6014
  }
6012
6015
  }
6013
6016
  };
@@ -6047,13 +6050,6 @@ class App extends React.Component {
6047
6050
  }, []);
6048
6051
  this.setState({ suggestedBindings });
6049
6052
  };
6050
- maybeSuggestBindingForAll(selectedElements) {
6051
- if (selectedElements.length > 50) {
6052
- return;
6053
- }
6054
- const suggestedBindings = getEligibleElementsForBinding(selectedElements, this);
6055
- this.setState({ suggestedBindings });
6056
- }
6057
6053
  clearSelection(hitElement) {
6058
6054
  this.setState((prevState) => ({
6059
6055
  selectedElementIds: makeNextSelectedElementIds({}, prevState),
@@ -6323,7 +6319,6 @@ class App extends React.Component {
6323
6319
  dragNewElement(draggingElement, this.state.activeTool.type, pointerDownState.originInGrid.x, pointerDownState.originInGrid.y, gridX, gridY, distance(pointerDownState.originInGrid.x, gridX), distance(pointerDownState.originInGrid.y, gridY), isImageElement(draggingElement)
6324
6320
  ? !shouldMaintainAspectRatio(event)
6325
6321
  : shouldMaintainAspectRatio(event), shouldResizeFromCenter(event), aspectRatio, this.state.originSnapOffset);
6326
- this.maybeSuggestBindingForAll([draggingElement]);
6327
6322
  // highlight elements that are to be added to frames on frames creation
6328
6323
  if (this.state.activeTool.type === TOOL_TYPE.frame ||
6329
6324
  this.state.activeTool.type === TOOL_TYPE.magicframe) {
@@ -6380,13 +6375,14 @@ class App extends React.Component {
6380
6375
  if (transformElements(pointerDownState.originalElements, transformHandleType, selectedElements, this.scene.getElementsMapIncludingDeleted(), shouldRotateWithDiscreteAngle(event), shouldResizeFromCenter(event), selectedElements.some((element) => isImageElement(element))
6381
6376
  ? !shouldMaintainAspectRatio(event)
6382
6377
  : shouldMaintainAspectRatio(event), resizeX, resizeY, pointerDownState.resize.center.x, pointerDownState.resize.center.y)) {
6383
- this.maybeSuggestBindingForAll(selectedElements);
6378
+ const suggestedBindings = getSuggestedBindingsForArrows(selectedElements, this);
6384
6379
  const elementsToHighlight = new Set();
6385
6380
  selectedFrames.forEach((frame) => {
6386
6381
  getElementsInResizingFrame(this.scene.getNonDeletedElements(), frame, this.state, this.scene.getNonDeletedElementsMap()).forEach((element) => elementsToHighlight.add(element));
6387
6382
  });
6388
6383
  this.setState({
6389
6384
  elementsToHighlight: [...elementsToHighlight],
6385
+ suggestedBindings,
6390
6386
  });
6391
6387
  return true;
6392
6388
  }
@@ -6431,6 +6427,7 @@ class App extends React.Component {
6431
6427
  return [actionCopy, ...options];
6432
6428
  }
6433
6429
  return [
6430
+ CONTEXT_MENU_SEPARATOR,
6434
6431
  actionCut,
6435
6432
  actionCopy,
6436
6433
  actionPaste,
@@ -6443,6 +6440,7 @@ class App extends React.Component {
6443
6440
  actionPasteStyles,
6444
6441
  CONTEXT_MENU_SEPARATOR,
6445
6442
  actionGroup,
6443
+ actionTextAutoResize,
6446
6444
  actionUnbindText,
6447
6445
  actionBindText,
6448
6446
  actionWrapTextInContainer,
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { ColorPickerType } from "./colorPickerUtils";
2
+ import type { ColorPickerType } from "./colorPickerUtils";
3
3
  interface ColorInputProps {
4
4
  color: string;
5
5
  onChange: (color: string) => void;
@@ -2,7 +2,7 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
2
2
  import { useCallback, useEffect, useRef, useState } from "react";
3
3
  import { getColor } from "./ColorPicker";
4
4
  import { useAtom } from "jotai";
5
- import { activeColorPickerSectionAtom, } from "./colorPickerUtils";
5
+ import { activeColorPickerSectionAtom } from "./colorPickerUtils";
6
6
  import { eyeDropperIcon } from "../icons";
7
7
  import { jotaiScope } from "../../jotai";
8
8
  import { KEYS } from "../../keys";
@@ -1,8 +1,8 @@
1
1
  /// <reference types="react" />
2
- import { ExcalidrawElement } from "../../element/types";
3
- import { AppState } from "../../types";
4
- import { ColorPickerType } from "./colorPickerUtils";
5
- import { ColorTuple, ColorPaletteCustom } from "../../colors";
2
+ import type { ExcalidrawElement } from "../../element/types";
3
+ import type { AppState } from "../../types";
4
+ import type { ColorPickerType } from "./colorPickerUtils";
5
+ import type { ColorTuple, ColorPaletteCustom } from "../../colors";
6
6
  import "./ColorPicker.scss";
7
7
  export declare const getColor: (color: string) => string | null;
8
8
  interface ColorPickerProps {
@@ -4,7 +4,7 @@ import { TopPicks } from "./TopPicks";
4
4
  import { Picker } from "./Picker";
5
5
  import * as Popover from "@radix-ui/react-popover";
6
6
  import { useAtom } from "jotai";
7
- import { activeColorPickerSectionAtom, } from "./colorPickerUtils";
7
+ import { activeColorPickerSectionAtom } from "./colorPickerUtils";
8
8
  import { useDevice, useExcalidrawContainer } from "../App";
9
9
  import { COLOR_PALETTE } from "../../colors";
10
10
  import PickerHeading from "./PickerHeading";
@@ -1,7 +1,7 @@
1
1
  import React from "react";
2
- import { ExcalidrawElement } from "../../element/types";
3
- import { ColorPickerType } from "./colorPickerUtils";
4
- import { ColorPaletteCustom } from "../../colors";
2
+ import type { ExcalidrawElement } from "../../element/types";
3
+ import type { ColorPickerType } from "./colorPickerUtils";
4
+ import type { ColorPaletteCustom } from "../../colors";
5
5
  interface PickerProps {
6
6
  color: string;
7
7
  onChange: (color: string) => void;
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { ColorPaletteCustom } from "../../colors";
2
+ import type { ColorPaletteCustom } from "../../colors";
3
3
  interface PickerColorListProps {
4
4
  palette: ColorPaletteCustom;
5
5
  color: string;
@@ -1,4 +1,4 @@
1
- import { ReactNode } from "react";
1
+ import type { ReactNode } from "react";
2
2
  declare const PickerHeading: ({ children }: {
3
3
  children: ReactNode;
4
4
  }) => JSX.Element;
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { ColorPaletteCustom } from "../../colors";
2
+ import type { ColorPaletteCustom } from "../../colors";
3
3
  interface ShadeListProps {
4
4
  hex: string;
5
5
  onChange: (color: string) => void;
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { ColorPickerType } from "./colorPickerUtils";
2
+ import type { ColorPickerType } from "./colorPickerUtils";
3
3
  interface TopPicksProps {
4
4
  onChange: (color: string) => void;
5
5
  type: ColorPickerType;
@@ -1,5 +1,5 @@
1
- import { ExcalidrawElement } from "../../element/types";
2
- import { ColorPickerColor, ColorPaletteCustom } from "../../colors";
1
+ import type { ExcalidrawElement } from "../../element/types";
2
+ import type { ColorPickerColor, ColorPaletteCustom } from "../../colors";
3
3
  export declare const getColorNameAndShadeFromColor: ({ palette, color, }: {
4
4
  palette: ColorPaletteCustom;
5
5
  color: string;
@@ -1,5 +1,5 @@
1
1
  import { atom } from "jotai";
2
- import { MAX_CUSTOM_COLORS_USED_IN_CANVAS, } from "../../colors";
2
+ import { MAX_CUSTOM_COLORS_USED_IN_CANVAS } from "../../colors";
3
3
  export const getColorNameAndShadeFromColor = ({ palette, color, }) => {
4
4
  for (const [colorName, colorVal] of Object.entries(palette)) {
5
5
  if (Array.isArray(colorVal)) {
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
- import { ColorPaletteCustom } from "../../colors";
3
- import { ActiveColorPickerSectionAtomType } from "./colorPickerUtils";
2
+ import type { ColorPaletteCustom } from "../../colors";
3
+ import type { ActiveColorPickerSectionAtomType } from "./colorPickerUtils";
4
4
  interface ColorPickerKeyNavHandlerProps {
5
5
  event: React.KeyboardEvent;
6
6
  activeColorPickerSection: ActiveColorPickerSectionAtomType;
@@ -1,5 +1,5 @@
1
1
  import { KEYS } from "../../keys";
2
- import { COLORS_PER_ROW, COLOR_PALETTE, } from "../../colors";
2
+ import { COLORS_PER_ROW, COLOR_PALETTE } from "../../colors";
3
3
  import { colorPickerHotkeyBindings, getColorNameAndShadeFromColor, } from "./colorPickerUtils";
4
4
  const arrowHandler = (eventKey, currentIndex, length) => {
5
5
  const rows = Math.ceil(length / COLORS_PER_ROW);
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { CommandPaletteItem } from "./types";
2
+ import type { CommandPaletteItem } from "./types";
3
3
  import * as defaultItems from "./defaultCommandPaletteItems";
4
4
  import "./CommandPalette.scss";
5
5
  export declare const DEFAULT_CATEGORIES: {
@@ -7,7 +7,7 @@ import { TextField } from "../TextField";
7
7
  import clsx from "clsx";
8
8
  import { getSelectedElements } from "../../scene";
9
9
  import { t } from "../../i18n";
10
- import { getShortcutFromShortcutName, } from "../../actions/shortcuts";
10
+ import { getShortcutFromShortcutName } from "../../actions/shortcuts";
11
11
  import { DEFAULT_SIDEBAR, EVENT } from "../../constants";
12
12
  import { LockedIcon, UnlockedIcon, clockIcon, searchIcon, boltIcon, bucketFillIcon, ExportImageIcon, mermaidLogoIcon, brainIconThin, LibraryIcon, } from "../icons";
13
13
  import fuzzy from "fuzzy";
@@ -164,10 +164,10 @@ function CommandPaletteInner({ customCommandPaletteItems, }) {
164
164
  actionManager.actions.deleteSelectedElements,
165
165
  actionManager.actions.copyStyles,
166
166
  actionManager.actions.pasteStyles,
167
+ actionManager.actions.bringToFront,
168
+ actionManager.actions.bringForward,
167
169
  actionManager.actions.sendBackward,
168
170
  actionManager.actions.sendToBack,
169
- actionManager.actions.bringForward,
170
- actionManager.actions.bringToFront,
171
171
  actionManager.actions.alignTop,
172
172
  actionManager.actions.alignBottom,
173
173
  actionManager.actions.alignLeft,
@@ -416,7 +416,7 @@ function CommandPaletteInner({ customCommandPaletteItems, }) {
416
416
  ...command,
417
417
  icon: command.icon || boltIcon,
418
418
  order: command.order ?? getCategoryOrder(command.category),
419
- haystack: `${deburr(command.label)} ${command.keywords?.join(" ") || ""}`,
419
+ haystack: `${deburr(command.label.toLocaleLowerCase())} ${command.keywords?.join(" ") || ""}`,
420
420
  };
421
421
  });
422
422
  setAllCommands(allCommands);
@@ -584,7 +584,7 @@ function CommandPaletteInner({ customCommandPaletteItems, }) {
584
584
  setCurrentCommand(showLastUsed ? lastUsed : matchingCommands[0] || null);
585
585
  return;
586
586
  }
587
- const _query = deburr(commandSearch.replace(/[<>-_| ]/g, ""));
587
+ const _query = deburr(commandSearch.toLocaleLowerCase().replace(/[<>_| -]/g, ""));
588
588
  matchingCommands = fuzzy
589
589
  .filter(_query, matchingCommands, {
590
590
  extract: (command) => command.haystack,
@@ -1,2 +1,2 @@
1
- import { CommandPaletteItem } from "./types";
1
+ import type { CommandPaletteItem } from "./types";
2
2
  export declare const toggleTheme: CommandPaletteItem;
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
- import { ActionManager } from "../../actions/manager";
3
- import { Action } from "../../actions/types";
4
- import { UIAppState } from "../../types";
2
+ import type { ActionManager } from "../../actions/manager";
3
+ import type { Action } from "../../actions/types";
4
+ import type { UIAppState } from "../../types";
5
5
  export type CommandPaletteItem = {
6
6
  label: string;
7
7
  /** additional keywords to match against
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { DialogProps } from "./Dialog";
2
+ import type { DialogProps } from "./Dialog";
3
3
  import "./ConfirmDialog.scss";
4
4
  interface Props extends Omit<DialogProps, "onCloseRequest"> {
5
5
  onConfirm: () => void;