@dwelle/excalidraw 0.5.0-b2180aef → 0.5.0-bb58eff

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 (367) hide show
  1. package/CHANGELOG.md +21 -2
  2. package/dist/browser/dev/excalidraw-assets-dev/{c4Diagram-9cddb37f-PEY4VZB7.js → c4Diagram-9cddb37f-5K5MMBTZ.js} +4 -4
  3. package/dist/browser/dev/excalidraw-assets-dev/{chunk-BHNA7NJW.js → chunk-2WPXONHI.js} +14 -6
  4. package/dist/browser/dev/excalidraw-assets-dev/chunk-2WPXONHI.js.map +7 -0
  5. package/dist/browser/dev/excalidraw-assets-dev/{chunk-NBYAYPHZ.js → chunk-ABU3Y4P6.js} +5 -5
  6. package/dist/browser/dev/excalidraw-assets-dev/{chunk-WBHNX65T.js → chunk-AQ5OI7FF.js} +3 -3
  7. package/dist/browser/dev/excalidraw-assets-dev/{chunk-Y5HKH6XA.js → chunk-AU5UG6FO.js} +6 -6
  8. package/dist/browser/dev/excalidraw-assets-dev/{chunk-SETFIRY3.js → chunk-FG5PX37Z.js} +44892 -43600
  9. package/dist/browser/dev/excalidraw-assets-dev/chunk-FG5PX37Z.js.map +7 -0
  10. package/dist/browser/dev/excalidraw-assets-dev/{chunk-LZZSOW5G.js → chunk-FSI24XHB.js} +7 -7
  11. package/dist/browser/dev/excalidraw-assets-dev/{chunk-E557S7MQ.js → chunk-HPE2QM6Z.js} +3 -3
  12. package/dist/browser/dev/excalidraw-assets-dev/{chunk-OWSGU75H.js → chunk-JRHEG4KR.js} +3 -3
  13. package/dist/browser/dev/excalidraw-assets-dev/{chunk-VPBFET2I.js → chunk-LARCHXKL.js} +3 -3
  14. package/dist/browser/dev/excalidraw-assets-dev/chunk-OBKV4VWD.js +17 -0
  15. package/dist/browser/dev/excalidraw-assets-dev/chunk-OBKV4VWD.js.map +7 -0
  16. package/dist/browser/dev/excalidraw-assets-dev/{chunk-3EGXR66X.js → chunk-PTRCE3YZ.js} +4 -4
  17. package/dist/browser/dev/excalidraw-assets-dev/{chunk-ZAXKJMAT.js → chunk-RMILGNZX.js} +4 -4
  18. package/dist/browser/dev/excalidraw-assets-dev/{chunk-TCBWJJWV.js → chunk-UN4RKPVH.js} +3 -3
  19. package/dist/browser/dev/excalidraw-assets-dev/{chunk-FODTRPG3.js → chunk-VJWYXZRD.js} +3 -3
  20. package/dist/browser/dev/excalidraw-assets-dev/{chunk-D66SDVP5.js → chunk-VVJS3CBB.js} +3 -3
  21. package/dist/browser/dev/excalidraw-assets-dev/{chunk-N5BBQLFA.js → chunk-YLFK45LY.js} +21 -21
  22. package/dist/browser/dev/excalidraw-assets-dev/{classDiagram-bc733c3b-JSZNPXOZ.js → classDiagram-bc733c3b-NWRL2CDH.js} +7 -7
  23. package/dist/browser/dev/excalidraw-assets-dev/{classDiagram-v2-8931bdaf-XZABE7NO.js → classDiagram-v2-8931bdaf-Y5FPX4CT.js} +10 -10
  24. package/dist/browser/dev/excalidraw-assets-dev/{directory-open-01563666-JBJQLHCB.js → directory-open-01563666-VWSBJ543.js} +2 -2
  25. package/dist/browser/dev/excalidraw-assets-dev/{directory-open-4ed118d0-AVAL3OHL.js → directory-open-4ed118d0-FYNYOZXP.js} +2 -2
  26. package/dist/browser/dev/excalidraw-assets-dev/dist-HOOQ44NM.js +10 -0
  27. package/dist/browser/dev/excalidraw-assets-dev/{en-NZOK7NH7.js → en-OFPNSLTO.js} +4 -2
  28. package/dist/browser/dev/excalidraw-assets-dev/{erDiagram-f6946109-4QSBUSYO.js → erDiagram-f6946109-URHWBVQF.js} +5 -5
  29. package/dist/browser/dev/excalidraw-assets-dev/{file-open-002ab408-OO3RYMPC.js → file-open-002ab408-K7UWK3UX.js} +2 -2
  30. package/dist/browser/dev/excalidraw-assets-dev/{file-open-7c801643-I4T65EE5.js → file-open-7c801643-PUS6AQBV.js} +2 -2
  31. package/dist/browser/dev/excalidraw-assets-dev/{file-save-3189631c-6CIF7VXA.js → file-save-3189631c-AVBJT4K7.js} +2 -2
  32. package/dist/browser/dev/excalidraw-assets-dev/{file-save-745eba88-Y6PZEOQJ.js → file-save-745eba88-FCWOWXVA.js} +2 -2
  33. package/dist/browser/dev/excalidraw-assets-dev/{flowDiagram-93327f21-2Q3YOEXF.js → flowDiagram-93327f21-ARY24FIN.js} +11 -11
  34. package/dist/browser/dev/excalidraw-assets-dev/{flowDiagram-v2-476db779-J5GISDEJ.js → flowDiagram-v2-476db779-Y3LYCDLM.js} +11 -11
  35. package/dist/browser/dev/excalidraw-assets-dev/{flowchart-elk-definition-5082a990-IENP3HGW.js → flowchart-elk-definition-5082a990-DTGYPOS7.js} +8 -8
  36. package/dist/browser/dev/excalidraw-assets-dev/{ganttDiagram-7ce12d6b-REFK6FBK.js → ganttDiagram-7ce12d6b-GWKDCJYX.js} +3 -3
  37. package/dist/browser/dev/excalidraw-assets-dev/{gitGraphDiagram-1e960c50-IQVIPT45.js → gitGraphDiagram-1e960c50-A4SIEE63.js} +3 -3
  38. package/dist/browser/dev/excalidraw-assets-dev/{image-LGX5I4ZO.js → image-J27XZPQC.js} +6 -6
  39. package/dist/browser/dev/excalidraw-assets-dev/{image-5ICVK422.css → image-ZQHNSB7P.css} +1719 -1587
  40. package/dist/browser/dev/excalidraw-assets-dev/image-ZQHNSB7P.css.map +7 -0
  41. package/dist/browser/dev/excalidraw-assets-dev/{image-blob-reduce.esm-YIBCQAZT.js → image-blob-reduce.esm-BDWVJKFQ.js} +2 -2
  42. package/dist/browser/dev/excalidraw-assets-dev/{infoDiagram-264bed3e-F6HNESGL.js → infoDiagram-264bed3e-AUF35UHX.js} +3 -3
  43. package/dist/browser/dev/excalidraw-assets-dev/{journeyDiagram-31be0096-U2VLZYDS.js → journeyDiagram-31be0096-ADAT3O42.js} +4 -4
  44. package/dist/browser/dev/excalidraw-assets-dev/{mindmap-definition-4fc2557c-FPCY5KJG.js → mindmap-definition-4fc2557c-YC2LM75P.js} +4 -4
  45. package/dist/browser/dev/excalidraw-assets-dev/{pica-MVKKFBEE.js → pica-GXUQBC7B.js} +2 -2
  46. package/dist/browser/dev/excalidraw-assets-dev/{pieDiagram-157505fe-WZHX73VN.js → pieDiagram-157505fe-4XR6DLIZ.js} +3 -3
  47. package/dist/browser/dev/excalidraw-assets-dev/{quadrantDiagram-fd70f2d0-LDIC264P.js → quadrantDiagram-fd70f2d0-LIR55Z6M.js} +3 -3
  48. package/dist/browser/dev/excalidraw-assets-dev/{requirementDiagram-19c99588-L7QT6GLS.js → requirementDiagram-19c99588-NKRCRRBM.js} +5 -5
  49. package/dist/browser/dev/excalidraw-assets-dev/{roundRect-DADH6WR7.js → roundRect-ZNZYUVWJ.js} +2 -2
  50. package/dist/browser/dev/excalidraw-assets-dev/{sequenceDiagram-5dfd0049-GHIDHZQT.js → sequenceDiagram-5dfd0049-VUKNRO5G.js} +4 -4
  51. package/dist/browser/dev/excalidraw-assets-dev/{stateDiagram-133e3642-65LI7CZ7.js → stateDiagram-133e3642-3NYPG4IW.js} +6 -6
  52. package/dist/browser/dev/excalidraw-assets-dev/{stateDiagram-v2-6371a76b-XXMHR5TG.js → stateDiagram-v2-6371a76b-YINZI7AG.js} +10 -10
  53. package/dist/browser/dev/excalidraw-assets-dev/{timeline-definition-5ed366f4-OIEEMQSB.js → timeline-definition-5ed366f4-KWC42LPI.js} +3 -3
  54. package/dist/browser/dev/index.css +269 -137
  55. package/dist/browser/dev/index.css.map +3 -3
  56. package/dist/browser/dev/index.js +11 -5
  57. package/dist/browser/prod/excalidraw-assets/{c4Diagram-9cddb37f-TZR3YECX.js → c4Diagram-9cddb37f-UIUBGLLC.js} +1 -1
  58. package/dist/browser/prod/excalidraw-assets/{chunk-NAINBD24.js → chunk-4C6GEPVI.js} +1 -1
  59. package/dist/browser/prod/excalidraw-assets/{chunk-RXNHMEGA.js → chunk-5EY4KGYU.js} +1 -1
  60. package/dist/browser/prod/excalidraw-assets/chunk-7CLKPETF.js +1 -0
  61. package/dist/browser/prod/excalidraw-assets/chunk-D2I3QE7U.js +269 -0
  62. package/dist/browser/prod/excalidraw-assets/{chunk-WXSVWMVD.js → chunk-EQDCUI7P.js} +1 -1
  63. package/dist/browser/prod/excalidraw-assets/{chunk-X5EU7KOJ.js → chunk-FGOIQKRL.js} +1 -1
  64. package/dist/browser/prod/excalidraw-assets/{chunk-5WS52ZFV.js → chunk-FVDUD6XA.js} +1 -1
  65. package/dist/browser/prod/excalidraw-assets/{chunk-F6IMNTBC.js → chunk-I32TF3FD.js} +1 -1
  66. package/dist/browser/prod/excalidraw-assets/{chunk-NWYUEDDS.js → chunk-LOWTGNCV.js} +1 -1
  67. package/dist/browser/prod/excalidraw-assets/{chunk-J6AGEV2X.js → chunk-MJ2YKZ3B.js} +1 -1
  68. package/dist/browser/prod/excalidraw-assets/{chunk-IUV7EN5I.js → chunk-RVQN2TTU.js} +3 -3
  69. package/dist/browser/prod/excalidraw-assets/{chunk-IEF2XJIX.js → chunk-VI6ARPX6.js} +1 -1
  70. package/dist/browser/prod/excalidraw-assets/{chunk-LZ2WFMDL.js → chunk-VZ5ZGWAN.js} +1 -1
  71. package/dist/browser/prod/excalidraw-assets/{chunk-AKC6KRIS.js → chunk-X3V4W6Y3.js} +1 -1
  72. package/dist/browser/prod/excalidraw-assets/{chunk-GOBEXXS4.js → chunk-XXT5RS66.js} +1 -1
  73. package/dist/browser/prod/excalidraw-assets/{chunk-4S63NBQL.js → chunk-YGSQT3TE.js} +4 -4
  74. package/dist/browser/prod/excalidraw-assets/{classDiagram-bc733c3b-SATLP6S3.js → classDiagram-bc733c3b-6BX33ZTH.js} +1 -1
  75. package/dist/browser/prod/excalidraw-assets/{classDiagram-v2-8931bdaf-O7IXKAFS.js → classDiagram-v2-8931bdaf-ACBVEHQO.js} +1 -1
  76. package/dist/browser/prod/excalidraw-assets/{directory-open-01563666-2VFHDWFK.js → directory-open-01563666-C2PFQBKL.js} +1 -1
  77. package/dist/browser/prod/excalidraw-assets/{directory-open-4ed118d0-4ETCHWB2.js → directory-open-4ed118d0-E55HNHTS.js} +1 -1
  78. package/dist/browser/prod/excalidraw-assets/dist-XTBKPFET.js +1 -0
  79. package/dist/browser/prod/excalidraw-assets/en-46OXMRU6.js +1 -0
  80. package/dist/browser/prod/excalidraw-assets/{erDiagram-f6946109-RROH5PKB.js → erDiagram-f6946109-TYWREFGK.js} +1 -1
  81. package/dist/browser/prod/excalidraw-assets/{file-open-002ab408-2I5HJRIT.js → file-open-002ab408-FQU3HANB.js} +1 -1
  82. package/dist/browser/prod/excalidraw-assets/{file-open-7c801643-4MOMJOAD.js → file-open-7c801643-BCD55L36.js} +1 -1
  83. package/dist/browser/prod/excalidraw-assets/{file-save-3189631c-3KVHGHIE.js → file-save-3189631c-TAXV2OAM.js} +1 -1
  84. package/dist/browser/prod/excalidraw-assets/{file-save-745eba88-TJBQ2X5I.js → file-save-745eba88-DPWZ3VE6.js} +1 -1
  85. package/dist/browser/prod/excalidraw-assets/{flowDiagram-93327f21-DMLC54G3.js → flowDiagram-93327f21-4VGGLTSV.js} +1 -1
  86. package/dist/browser/prod/excalidraw-assets/flowDiagram-v2-476db779-KLWICWG3.js +1 -0
  87. package/dist/browser/prod/excalidraw-assets/{flowchart-elk-definition-5082a990-Y2P4GO4N.js → flowchart-elk-definition-5082a990-DWI3JPDY.js} +1 -1
  88. package/dist/browser/prod/excalidraw-assets/{ganttDiagram-7ce12d6b-BPV5NUOC.js → ganttDiagram-7ce12d6b-FGLMWLXT.js} +1 -1
  89. package/dist/browser/prod/excalidraw-assets/{gitGraphDiagram-1e960c50-AYQB5F3W.js → gitGraphDiagram-1e960c50-6PYRBTDK.js} +1 -1
  90. package/dist/browser/prod/excalidraw-assets/image-M662KTMJ.css +1 -0
  91. package/dist/browser/prod/excalidraw-assets/image-XP52XYUU.js +1 -0
  92. package/dist/browser/prod/excalidraw-assets/{image-blob-reduce.esm-C5HOGDIN.js → image-blob-reduce.esm-7C326NDW.js} +1 -1
  93. package/dist/browser/prod/excalidraw-assets/{infoDiagram-264bed3e-GNTQ26SY.js → infoDiagram-264bed3e-B3RQYU4J.js} +1 -1
  94. package/dist/browser/prod/excalidraw-assets/{journeyDiagram-31be0096-LKINE4MW.js → journeyDiagram-31be0096-SPHJ2Z6S.js} +1 -1
  95. package/dist/browser/prod/excalidraw-assets/{mindmap-definition-4fc2557c-2ZOKJH4X.js → mindmap-definition-4fc2557c-EKE5IPT5.js} +1 -1
  96. package/dist/browser/prod/excalidraw-assets/{pica-C7Q5T7SU.js → pica-WBNTBMON.js} +1 -1
  97. package/dist/browser/prod/excalidraw-assets/{pieDiagram-157505fe-V5EI75X3.js → pieDiagram-157505fe-R3GPKUOS.js} +1 -1
  98. package/dist/browser/prod/excalidraw-assets/{quadrantDiagram-fd70f2d0-FX47PVPZ.js → quadrantDiagram-fd70f2d0-E6DDN2FC.js} +1 -1
  99. package/dist/browser/prod/excalidraw-assets/{requirementDiagram-19c99588-6ZBUJ6AB.js → requirementDiagram-19c99588-EDK37RW4.js} +1 -1
  100. package/dist/browser/prod/excalidraw-assets/{roundRect-H7RKZWHK.js → roundRect-P4IDSYXR.js} +1 -1
  101. package/dist/browser/prod/excalidraw-assets/{sequenceDiagram-5dfd0049-RGN3USYI.js → sequenceDiagram-5dfd0049-SDPAZI6N.js} +1 -1
  102. package/dist/browser/prod/excalidraw-assets/{stateDiagram-133e3642-BZZPZIJC.js → stateDiagram-133e3642-2GOIU2WH.js} +1 -1
  103. package/dist/browser/prod/excalidraw-assets/{stateDiagram-v2-6371a76b-SMMXQVDX.js → stateDiagram-v2-6371a76b-HIFSCSY4.js} +1 -1
  104. package/dist/browser/prod/excalidraw-assets/{timeline-definition-5ed366f4-P2EZRRNS.js → timeline-definition-5ed366f4-KTXR6TKT.js} +1 -1
  105. package/dist/browser/prod/index.css +1 -1
  106. package/dist/browser/prod/index.js +1 -1
  107. package/dist/dev/{en-CVWI7UBD.json → en-54AU74IP.json} +11 -5
  108. package/dist/dev/index.css +269 -137
  109. package/dist/dev/index.css.map +3 -3
  110. package/dist/dev/index.js +23162 -21972
  111. package/dist/dev/index.js.map +4 -4
  112. package/dist/excalidraw/actions/actionAddToLibrary.d.ts +21 -12
  113. package/dist/excalidraw/actions/actionBoundText.d.ts +14 -8
  114. package/dist/excalidraw/actions/actionBoundText.js +9 -7
  115. package/dist/excalidraw/actions/actionCanvas.d.ts +82 -46
  116. package/dist/excalidraw/actions/actionClipboard.d.ts +48 -27
  117. package/dist/excalidraw/actions/actionClipboard.js +23 -8
  118. package/dist/excalidraw/actions/actionDeleteSelected.d.ts +21 -12
  119. package/dist/excalidraw/actions/actionDeleteSelected.js +3 -2
  120. package/dist/excalidraw/actions/actionDuplicateSelection.d.ts +1 -1
  121. package/dist/excalidraw/actions/actionDuplicateSelection.js +7 -2
  122. package/dist/excalidraw/actions/actionElementLock.d.ts +14 -8
  123. package/dist/excalidraw/actions/actionExport.d.ts +63 -36
  124. package/dist/excalidraw/actions/actionExport.js +4 -4
  125. package/dist/excalidraw/actions/actionFinalize.d.ts +13 -7
  126. package/dist/excalidraw/actions/actionFinalize.js +7 -6
  127. package/dist/excalidraw/actions/actionFlip.js +5 -5
  128. package/dist/excalidraw/actions/actionFrame.d.ts +21 -12
  129. package/dist/excalidraw/actions/actionGroup.d.ts +14 -8
  130. package/dist/excalidraw/actions/actionGroup.js +6 -3
  131. package/dist/excalidraw/actions/actionHistory.js +3 -0
  132. package/dist/excalidraw/actions/actionLinearEditor.d.ts +7 -4
  133. package/dist/excalidraw/actions/actionLinearEditor.js +1 -1
  134. package/dist/excalidraw/{element/Hyperlink.d.ts → actions/actionLink.d.ts} +31 -51
  135. package/dist/excalidraw/actions/actionLink.js +40 -0
  136. package/dist/excalidraw/actions/actionMenu.d.ts +20 -11
  137. package/dist/excalidraw/actions/actionNavigate.d.ts +14 -8
  138. package/dist/excalidraw/actions/actionNavigate.js +15 -6
  139. package/dist/excalidraw/actions/actionProperties.d.ts +91 -52
  140. package/dist/excalidraw/actions/actionProperties.js +4 -4
  141. package/dist/excalidraw/actions/actionSelectAll.d.ts +7 -4
  142. package/dist/excalidraw/actions/actionSelectAll.js +1 -1
  143. package/dist/excalidraw/actions/actionStyles.d.ts +7 -4
  144. package/dist/excalidraw/actions/actionStyles.js +1 -1
  145. package/dist/excalidraw/actions/actionToggleGridMode.d.ts +7 -4
  146. package/dist/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +7 -4
  147. package/dist/excalidraw/actions/actionToggleStats.d.ts +7 -4
  148. package/dist/excalidraw/actions/actionToggleViewMode.d.ts +7 -4
  149. package/dist/excalidraw/actions/actionToggleZenMode.d.ts +7 -4
  150. package/dist/excalidraw/actions/actionZindex.d.ts +11 -11
  151. package/dist/excalidraw/actions/index.d.ts +1 -1
  152. package/dist/excalidraw/actions/index.js +1 -1
  153. package/dist/excalidraw/actions/manager.js +2 -1
  154. package/dist/excalidraw/appState.d.ts +1 -1
  155. package/dist/excalidraw/appState.js +3 -5
  156. package/dist/excalidraw/charts.js +4 -4
  157. package/dist/excalidraw/clients.d.ts +10 -1
  158. package/dist/excalidraw/clients.js +153 -6
  159. package/dist/excalidraw/clipboard.js +5 -5
  160. package/dist/excalidraw/colors.d.ts +8 -7
  161. package/dist/excalidraw/colors.js +8 -15
  162. package/dist/excalidraw/components/Actions.js +14 -2
  163. package/dist/excalidraw/components/App.d.ts +6 -3
  164. package/dist/excalidraw/components/App.js +208 -164
  165. package/dist/excalidraw/components/Avatar.d.ts +2 -3
  166. package/dist/excalidraw/components/Avatar.js +2 -5
  167. package/dist/excalidraw/components/Button.d.ts +1 -1
  168. package/dist/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
  169. package/dist/excalidraw/components/ColorPicker/keyboardNavHandlers.js +1 -1
  170. package/dist/excalidraw/components/FilledButton.d.ts +2 -2
  171. package/dist/excalidraw/components/FilledButton.js +27 -3
  172. package/dist/excalidraw/components/FollowMode/FollowMode.js +1 -1
  173. package/dist/excalidraw/components/ImageExportDialog.d.ts +2 -1
  174. package/dist/excalidraw/components/ImageExportDialog.js +16 -12
  175. package/dist/excalidraw/components/JSONExportDialog.js +1 -1
  176. package/dist/excalidraw/components/LayerUI.js +1 -1
  177. package/dist/excalidraw/components/PasteChartDialog.js +11 -5
  178. package/dist/excalidraw/components/ProjectName.d.ts +0 -1
  179. package/dist/excalidraw/components/ProjectName.js +1 -1
  180. package/dist/excalidraw/components/PublishLibrary.js +3 -3
  181. package/dist/excalidraw/components/ShareableLinkDialog.js +10 -10
  182. package/dist/excalidraw/components/Stack.d.ts +2 -2
  183. package/dist/excalidraw/components/TTDDialog/common.js +10 -1
  184. package/dist/excalidraw/components/TextField.d.ts +5 -2
  185. package/dist/excalidraw/components/TextField.js +6 -3
  186. package/dist/excalidraw/components/Toast.d.ts +3 -2
  187. package/dist/excalidraw/components/Toast.js +2 -2
  188. package/dist/excalidraw/components/ToolButton.js +2 -1
  189. package/dist/excalidraw/components/UserList.d.ts +3 -7
  190. package/dist/excalidraw/components/UserList.js +63 -34
  191. package/dist/excalidraw/components/canvases/InteractiveCanvas.js +20 -23
  192. package/dist/excalidraw/components/canvases/StaticCanvas.js +1 -1
  193. package/dist/excalidraw/components/dropdownMenu/DropdownMenuContent.js +22 -2
  194. package/dist/excalidraw/components/hyperlink/Hyperlink.d.ts +19 -0
  195. package/dist/excalidraw/{element → components/hyperlink}/Hyperlink.js +36 -109
  196. package/dist/excalidraw/components/hyperlink/helpers.d.ts +7 -0
  197. package/dist/excalidraw/components/hyperlink/helpers.js +49 -0
  198. package/dist/excalidraw/components/icons.d.ts +3 -0
  199. package/dist/excalidraw/components/icons.js +4 -1
  200. package/dist/excalidraw/components/live-collaboration/LiveCollaborationTrigger.js +3 -2
  201. package/dist/excalidraw/constants.d.ts +11 -7
  202. package/dist/excalidraw/constants.js +17 -10
  203. package/dist/excalidraw/data/blob.js +13 -14
  204. package/dist/excalidraw/data/filesystem.d.ts +1 -1
  205. package/dist/excalidraw/data/index.d.ts +16 -7
  206. package/dist/excalidraw/data/index.js +54 -35
  207. package/dist/excalidraw/data/json.d.ts +1 -1
  208. package/dist/excalidraw/data/json.js +5 -3
  209. package/dist/excalidraw/data/library.d.ts +60 -8
  210. package/dist/excalidraw/data/library.js +302 -33
  211. package/dist/excalidraw/data/reconcile.d.ts +6 -0
  212. package/dist/excalidraw/data/reconcile.js +49 -0
  213. package/dist/excalidraw/data/resave.d.ts +1 -1
  214. package/dist/excalidraw/data/resave.js +12 -8
  215. package/dist/excalidraw/data/restore.d.ts +3 -3
  216. package/dist/excalidraw/data/restore.js +8 -11
  217. package/dist/excalidraw/data/transform.d.ts +1 -1
  218. package/dist/excalidraw/data/transform.js +14 -9
  219. package/dist/excalidraw/element/ElementCanvasButtons.d.ts +3 -2
  220. package/dist/excalidraw/element/ElementCanvasButtons.js +4 -4
  221. package/dist/excalidraw/element/binding.d.ts +9 -9
  222. package/dist/excalidraw/element/binding.js +57 -56
  223. package/dist/excalidraw/element/bounds.d.ts +6 -6
  224. package/dist/excalidraw/element/bounds.js +22 -28
  225. package/dist/excalidraw/element/collision.d.ts +8 -8
  226. package/dist/excalidraw/element/collision.js +43 -40
  227. package/dist/excalidraw/element/containerCache.d.ts +11 -0
  228. package/dist/excalidraw/element/containerCache.js +14 -0
  229. package/dist/excalidraw/element/dragElements.js +1 -1
  230. package/dist/excalidraw/element/embeddable.d.ts +7 -4
  231. package/dist/excalidraw/element/embeddable.js +3 -4
  232. package/dist/excalidraw/element/image.js +1 -2
  233. package/dist/excalidraw/element/index.d.ts +8 -1
  234. package/dist/excalidraw/element/index.js +23 -1
  235. package/dist/excalidraw/element/linearElementEditor.d.ts +36 -32
  236. package/dist/excalidraw/element/linearElementEditor.js +66 -67
  237. package/dist/excalidraw/element/newElement.d.ts +4 -5
  238. package/dist/excalidraw/element/newElement.js +10 -10
  239. package/dist/excalidraw/element/resizeElements.d.ts +1 -1
  240. package/dist/excalidraw/element/resizeElements.js +20 -25
  241. package/dist/excalidraw/element/resizeTest.d.ts +3 -3
  242. package/dist/excalidraw/element/resizeTest.js +4 -4
  243. package/dist/excalidraw/element/sizeHelpers.d.ts +2 -2
  244. package/dist/excalidraw/element/sizeHelpers.js +2 -2
  245. package/dist/excalidraw/element/textElement.d.ts +25 -8
  246. package/dist/excalidraw/element/textElement.js +60 -69
  247. package/dist/excalidraw/element/textWysiwyg.d.ts +1 -6
  248. package/dist/excalidraw/element/textWysiwyg.js +11 -34
  249. package/dist/excalidraw/element/transformHandles.d.ts +4 -4
  250. package/dist/excalidraw/element/transformHandles.js +6 -6
  251. package/dist/excalidraw/element/types.d.ts +15 -4
  252. package/dist/excalidraw/errors.d.ts +3 -0
  253. package/dist/excalidraw/errors.js +3 -0
  254. package/dist/excalidraw/fractionalIndex.d.ts +40 -0
  255. package/dist/excalidraw/fractionalIndex.js +241 -0
  256. package/dist/excalidraw/frame.d.ts +12 -12
  257. package/dist/excalidraw/frame.js +48 -52
  258. package/dist/excalidraw/history.d.ts +1 -1
  259. package/dist/excalidraw/index-node.js +2 -1
  260. package/dist/excalidraw/index.d.ts +8 -4
  261. package/dist/excalidraw/index.js +10 -6
  262. package/dist/excalidraw/laser-trails.js +1 -1
  263. package/dist/excalidraw/locales/en.json +11 -5
  264. package/dist/excalidraw/queue.d.ts +9 -0
  265. package/dist/excalidraw/queue.js +27 -0
  266. package/dist/excalidraw/renderer/helpers.d.ts +13 -0
  267. package/dist/excalidraw/renderer/helpers.js +39 -0
  268. package/dist/excalidraw/renderer/interactiveScene.d.ts +20 -0
  269. package/dist/excalidraw/renderer/{renderScene.js → interactiveScene.js} +196 -575
  270. package/dist/excalidraw/renderer/renderElement.d.ts +3 -4
  271. package/dist/excalidraw/renderer/renderElement.js +20 -361
  272. package/dist/excalidraw/renderer/staticScene.d.ts +11 -0
  273. package/dist/excalidraw/renderer/staticScene.js +205 -0
  274. package/dist/excalidraw/renderer/staticSvgScene.d.ts +5 -0
  275. package/dist/excalidraw/renderer/staticSvgScene.js +385 -0
  276. package/dist/excalidraw/scene/Fonts.js +1 -1
  277. package/dist/excalidraw/scene/Renderer.js +5 -3
  278. package/dist/excalidraw/scene/Scene.d.ts +9 -13
  279. package/dist/excalidraw/scene/Scene.js +34 -29
  280. package/dist/excalidraw/scene/Shape.d.ts +1 -1
  281. package/dist/excalidraw/scene/Shape.js +1 -0
  282. package/dist/excalidraw/scene/ShapeCache.d.ts +3 -3
  283. package/dist/excalidraw/scene/ShapeCache.js +3 -3
  284. package/dist/excalidraw/scene/export.d.ts +21 -14
  285. package/dist/excalidraw/scene/export.js +30 -49
  286. package/dist/excalidraw/scene/index.d.ts +0 -1
  287. package/dist/excalidraw/scene/index.js +0 -1
  288. package/dist/excalidraw/scene/scrollbars.d.ts +3 -2
  289. package/dist/excalidraw/scene/scrollbars.js +1 -1
  290. package/dist/excalidraw/scene/selection.d.ts +3 -3
  291. package/dist/excalidraw/scene/selection.js +9 -9
  292. package/dist/excalidraw/scene/types.d.ts +12 -24
  293. package/dist/excalidraw/snapping.d.ts +7 -7
  294. package/dist/excalidraw/snapping.js +21 -21
  295. package/dist/excalidraw/types.d.ts +20 -14
  296. package/dist/excalidraw/utility-types.d.ts +2 -0
  297. package/dist/excalidraw/utils.d.ts +4 -1
  298. package/dist/excalidraw/utils.js +20 -6
  299. package/dist/excalidraw/zindex.d.ts +2 -2
  300. package/dist/excalidraw/zindex.js +9 -13
  301. package/dist/prod/{en-CVWI7UBD.json → en-54AU74IP.json} +11 -5
  302. package/dist/prod/index.css +1 -1
  303. package/dist/prod/index.js +45 -45
  304. package/dist/utils/export.d.ts +3 -6
  305. package/dist/utils/export.js +9 -12
  306. package/dist/utils/index.d.ts +3 -0
  307. package/dist/utils/index.js +3 -0
  308. package/dist/utils/withinBounds.js +2 -1
  309. package/package.json +4 -3
  310. package/dist/browser/dev/excalidraw-assets-dev/chunk-ALCD6MVO.js +0 -17
  311. package/dist/browser/dev/excalidraw-assets-dev/chunk-ALCD6MVO.js.map +0 -7
  312. package/dist/browser/dev/excalidraw-assets-dev/chunk-BHNA7NJW.js.map +0 -7
  313. package/dist/browser/dev/excalidraw-assets-dev/chunk-SETFIRY3.js.map +0 -7
  314. package/dist/browser/dev/excalidraw-assets-dev/dist-G3BXOFUL.js +0 -10
  315. package/dist/browser/dev/excalidraw-assets-dev/image-5ICVK422.css.map +0 -7
  316. package/dist/browser/prod/excalidraw-assets/chunk-CXVKHCCJ.js +0 -1
  317. package/dist/browser/prod/excalidraw-assets/chunk-TIF52737.js +0 -269
  318. package/dist/browser/prod/excalidraw-assets/dist-H2KBTIFX.js +0 -1
  319. package/dist/browser/prod/excalidraw-assets/en-BEWXQ75W.js +0 -1
  320. package/dist/browser/prod/excalidraw-assets/flowDiagram-v2-476db779-YHMMMOCL.js +0 -1
  321. package/dist/browser/prod/excalidraw-assets/image-RZAUMCLO.js +0 -1
  322. package/dist/browser/prod/excalidraw-assets/image-S6WF7PJU.css +0 -1
  323. package/dist/excalidraw/renderer/renderScene.d.ts +0 -24
  324. /package/dist/browser/dev/excalidraw-assets-dev/{c4Diagram-9cddb37f-PEY4VZB7.js.map → c4Diagram-9cddb37f-5K5MMBTZ.js.map} +0 -0
  325. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-NBYAYPHZ.js.map → chunk-ABU3Y4P6.js.map} +0 -0
  326. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-WBHNX65T.js.map → chunk-AQ5OI7FF.js.map} +0 -0
  327. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-Y5HKH6XA.js.map → chunk-AU5UG6FO.js.map} +0 -0
  328. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-LZZSOW5G.js.map → chunk-FSI24XHB.js.map} +0 -0
  329. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-E557S7MQ.js.map → chunk-HPE2QM6Z.js.map} +0 -0
  330. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-OWSGU75H.js.map → chunk-JRHEG4KR.js.map} +0 -0
  331. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-VPBFET2I.js.map → chunk-LARCHXKL.js.map} +0 -0
  332. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-3EGXR66X.js.map → chunk-PTRCE3YZ.js.map} +0 -0
  333. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-ZAXKJMAT.js.map → chunk-RMILGNZX.js.map} +0 -0
  334. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-TCBWJJWV.js.map → chunk-UN4RKPVH.js.map} +0 -0
  335. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-FODTRPG3.js.map → chunk-VJWYXZRD.js.map} +0 -0
  336. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-D66SDVP5.js.map → chunk-VVJS3CBB.js.map} +0 -0
  337. /package/dist/browser/dev/excalidraw-assets-dev/{chunk-N5BBQLFA.js.map → chunk-YLFK45LY.js.map} +0 -0
  338. /package/dist/browser/dev/excalidraw-assets-dev/{classDiagram-bc733c3b-JSZNPXOZ.js.map → classDiagram-bc733c3b-NWRL2CDH.js.map} +0 -0
  339. /package/dist/browser/dev/excalidraw-assets-dev/{classDiagram-v2-8931bdaf-XZABE7NO.js.map → classDiagram-v2-8931bdaf-Y5FPX4CT.js.map} +0 -0
  340. /package/dist/browser/dev/excalidraw-assets-dev/{directory-open-01563666-JBJQLHCB.js.map → directory-open-01563666-VWSBJ543.js.map} +0 -0
  341. /package/dist/browser/dev/excalidraw-assets-dev/{directory-open-4ed118d0-AVAL3OHL.js.map → directory-open-4ed118d0-FYNYOZXP.js.map} +0 -0
  342. /package/dist/browser/dev/excalidraw-assets-dev/{dist-G3BXOFUL.js.map → dist-HOOQ44NM.js.map} +0 -0
  343. /package/dist/browser/dev/excalidraw-assets-dev/{en-NZOK7NH7.js.map → en-OFPNSLTO.js.map} +0 -0
  344. /package/dist/browser/dev/excalidraw-assets-dev/{erDiagram-f6946109-4QSBUSYO.js.map → erDiagram-f6946109-URHWBVQF.js.map} +0 -0
  345. /package/dist/browser/dev/excalidraw-assets-dev/{file-open-002ab408-OO3RYMPC.js.map → file-open-002ab408-K7UWK3UX.js.map} +0 -0
  346. /package/dist/browser/dev/excalidraw-assets-dev/{file-open-7c801643-I4T65EE5.js.map → file-open-7c801643-PUS6AQBV.js.map} +0 -0
  347. /package/dist/browser/dev/excalidraw-assets-dev/{file-save-3189631c-6CIF7VXA.js.map → file-save-3189631c-AVBJT4K7.js.map} +0 -0
  348. /package/dist/browser/dev/excalidraw-assets-dev/{file-save-745eba88-Y6PZEOQJ.js.map → file-save-745eba88-FCWOWXVA.js.map} +0 -0
  349. /package/dist/browser/dev/excalidraw-assets-dev/{flowDiagram-93327f21-2Q3YOEXF.js.map → flowDiagram-93327f21-ARY24FIN.js.map} +0 -0
  350. /package/dist/browser/dev/excalidraw-assets-dev/{flowDiagram-v2-476db779-J5GISDEJ.js.map → flowDiagram-v2-476db779-Y3LYCDLM.js.map} +0 -0
  351. /package/dist/browser/dev/excalidraw-assets-dev/{flowchart-elk-definition-5082a990-IENP3HGW.js.map → flowchart-elk-definition-5082a990-DTGYPOS7.js.map} +0 -0
  352. /package/dist/browser/dev/excalidraw-assets-dev/{ganttDiagram-7ce12d6b-REFK6FBK.js.map → ganttDiagram-7ce12d6b-GWKDCJYX.js.map} +0 -0
  353. /package/dist/browser/dev/excalidraw-assets-dev/{gitGraphDiagram-1e960c50-IQVIPT45.js.map → gitGraphDiagram-1e960c50-A4SIEE63.js.map} +0 -0
  354. /package/dist/browser/dev/excalidraw-assets-dev/{image-LGX5I4ZO.js.map → image-J27XZPQC.js.map} +0 -0
  355. /package/dist/browser/dev/excalidraw-assets-dev/{image-blob-reduce.esm-YIBCQAZT.js.map → image-blob-reduce.esm-BDWVJKFQ.js.map} +0 -0
  356. /package/dist/browser/dev/excalidraw-assets-dev/{infoDiagram-264bed3e-F6HNESGL.js.map → infoDiagram-264bed3e-AUF35UHX.js.map} +0 -0
  357. /package/dist/browser/dev/excalidraw-assets-dev/{journeyDiagram-31be0096-U2VLZYDS.js.map → journeyDiagram-31be0096-ADAT3O42.js.map} +0 -0
  358. /package/dist/browser/dev/excalidraw-assets-dev/{mindmap-definition-4fc2557c-FPCY5KJG.js.map → mindmap-definition-4fc2557c-YC2LM75P.js.map} +0 -0
  359. /package/dist/browser/dev/excalidraw-assets-dev/{pica-MVKKFBEE.js.map → pica-GXUQBC7B.js.map} +0 -0
  360. /package/dist/browser/dev/excalidraw-assets-dev/{pieDiagram-157505fe-WZHX73VN.js.map → pieDiagram-157505fe-4XR6DLIZ.js.map} +0 -0
  361. /package/dist/browser/dev/excalidraw-assets-dev/{quadrantDiagram-fd70f2d0-LDIC264P.js.map → quadrantDiagram-fd70f2d0-LIR55Z6M.js.map} +0 -0
  362. /package/dist/browser/dev/excalidraw-assets-dev/{requirementDiagram-19c99588-L7QT6GLS.js.map → requirementDiagram-19c99588-NKRCRRBM.js.map} +0 -0
  363. /package/dist/browser/dev/excalidraw-assets-dev/{roundRect-DADH6WR7.js.map → roundRect-ZNZYUVWJ.js.map} +0 -0
  364. /package/dist/browser/dev/excalidraw-assets-dev/{sequenceDiagram-5dfd0049-GHIDHZQT.js.map → sequenceDiagram-5dfd0049-VUKNRO5G.js.map} +0 -0
  365. /package/dist/browser/dev/excalidraw-assets-dev/{stateDiagram-133e3642-65LI7CZ7.js.map → stateDiagram-133e3642-3NYPG4IW.js.map} +0 -0
  366. /package/dist/browser/dev/excalidraw-assets-dev/{stateDiagram-v2-6371a76b-XXMHR5TG.js.map → stateDiagram-v2-6371a76b-YINZI7AG.js.map} +0 -0
  367. /package/dist/browser/dev/excalidraw-assets-dev/{timeline-definition-5ed366f4-OIEEMQSB.js.map → timeline-definition-5ed366f4-KWC42LPI.js.map} +0 -0
@@ -37,7 +37,7 @@ export declare const actionRemoveAllElementsFromFrame: {
37
37
  errorMessage: import("react").ReactNode;
38
38
  activeEmbeddable: {
39
39
  element: import("../element/types").NonDeletedExcalidrawElement;
40
- state: "active" | "hover";
40
+ state: "hover" | "active";
41
41
  } | null;
42
42
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
43
43
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -85,7 +85,7 @@ export declare const actionRemoveAllElementsFromFrame: {
85
85
  scrollY: number;
86
86
  cursorButton: "up" | "down";
87
87
  scrolledOutside: boolean;
88
- name: string;
88
+ name: string | null;
89
89
  isResizing: boolean;
90
90
  isRotating: boolean;
91
91
  zoom: Readonly<{
@@ -105,7 +105,7 @@ export declare const actionRemoveAllElementsFromFrame: {
105
105
  tab: "text-to-diagram" | "diagram-to-code";
106
106
  } | {
107
107
  name: "ttd";
108
- tab: "mermaid" | "text-to-diagram";
108
+ tab: "text-to-diagram" | "mermaid";
109
109
  } | null;
110
110
  defaultSidebarDockedPreference: boolean;
111
111
  lastPointerDownWith: import("../element/types").PointerType;
@@ -148,6 +148,9 @@ export declare const actionRemoveAllElementsFromFrame: {
148
148
  id?: string | undefined;
149
149
  socketId?: import("../types").SocketId | undefined;
150
150
  isCurrentUser?: boolean | undefined;
151
+ isInCall?: boolean | undefined;
152
+ isSpeaking?: boolean | undefined;
153
+ isMuted?: boolean | undefined;
151
154
  }>>;
152
155
  showStats: boolean;
153
156
  currentChartType: import("../element/types").ChartType;
@@ -159,7 +162,7 @@ export declare const actionRemoveAllElementsFromFrame: {
159
162
  data: import("../charts").Spreadsheet;
160
163
  };
161
164
  pendingImageElementId: string | null;
162
- showHyperlinkPopup: false | "editor" | "info";
165
+ showHyperlinkPopup: false | "info" | "editor";
163
166
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
164
167
  snapLines: readonly import("../snapping").SnapLine[];
165
168
  originSnapOffset: {
@@ -206,7 +209,7 @@ export declare const actionupdateFrameRendering: {
206
209
  errorMessage: import("react").ReactNode;
207
210
  activeEmbeddable: {
208
211
  element: import("../element/types").NonDeletedExcalidrawElement;
209
- state: "active" | "hover";
212
+ state: "hover" | "active";
210
213
  } | null;
211
214
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
212
215
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -248,7 +251,7 @@ export declare const actionupdateFrameRendering: {
248
251
  scrollY: number;
249
252
  cursorButton: "up" | "down";
250
253
  scrolledOutside: boolean;
251
- name: string;
254
+ name: string | null;
252
255
  isResizing: boolean;
253
256
  isRotating: boolean;
254
257
  zoom: Readonly<{
@@ -268,7 +271,7 @@ export declare const actionupdateFrameRendering: {
268
271
  tab: "text-to-diagram" | "diagram-to-code";
269
272
  } | {
270
273
  name: "ttd";
271
- tab: "mermaid" | "text-to-diagram";
274
+ tab: "text-to-diagram" | "mermaid";
272
275
  } | null;
273
276
  defaultSidebarDockedPreference: boolean;
274
277
  lastPointerDownWith: import("../element/types").PointerType;
@@ -314,6 +317,9 @@ export declare const actionupdateFrameRendering: {
314
317
  id?: string | undefined;
315
318
  socketId?: import("../types").SocketId | undefined;
316
319
  isCurrentUser?: boolean | undefined;
320
+ isInCall?: boolean | undefined;
321
+ isSpeaking?: boolean | undefined;
322
+ isMuted?: boolean | undefined;
317
323
  }>>;
318
324
  showStats: boolean;
319
325
  currentChartType: import("../element/types").ChartType;
@@ -325,7 +331,7 @@ export declare const actionupdateFrameRendering: {
325
331
  data: import("../charts").Spreadsheet;
326
332
  };
327
333
  pendingImageElementId: string | null;
328
- showHyperlinkPopup: false | "editor" | "info";
334
+ showHyperlinkPopup: false | "info" | "editor";
329
335
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
330
336
  snapLines: readonly import("../snapping").SnapLine[];
331
337
  originSnapOffset: {
@@ -365,7 +371,7 @@ export declare const actionSetFrameAsActiveTool: {
365
371
  errorMessage: import("react").ReactNode;
366
372
  activeEmbeddable: {
367
373
  element: import("../element/types").NonDeletedExcalidrawElement;
368
- state: "active" | "hover";
374
+ state: "hover" | "active";
369
375
  } | null;
370
376
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
371
377
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -409,7 +415,7 @@ export declare const actionSetFrameAsActiveTool: {
409
415
  scrollY: number;
410
416
  cursorButton: "up" | "down";
411
417
  scrolledOutside: boolean;
412
- name: string;
418
+ name: string | null;
413
419
  isResizing: boolean;
414
420
  isRotating: boolean;
415
421
  zoom: Readonly<{
@@ -429,7 +435,7 @@ export declare const actionSetFrameAsActiveTool: {
429
435
  tab: "text-to-diagram" | "diagram-to-code";
430
436
  } | {
431
437
  name: "ttd";
432
- tab: "mermaid" | "text-to-diagram";
438
+ tab: "text-to-diagram" | "mermaid";
433
439
  } | null;
434
440
  defaultSidebarDockedPreference: boolean;
435
441
  lastPointerDownWith: import("../element/types").PointerType;
@@ -475,6 +481,9 @@ export declare const actionSetFrameAsActiveTool: {
475
481
  id?: string | undefined;
476
482
  socketId?: import("../types").SocketId | undefined;
477
483
  isCurrentUser?: boolean | undefined;
484
+ isInCall?: boolean | undefined;
485
+ isSpeaking?: boolean | undefined;
486
+ isMuted?: boolean | undefined;
478
487
  }>>;
479
488
  showStats: boolean;
480
489
  currentChartType: import("../element/types").ChartType;
@@ -486,7 +495,7 @@ export declare const actionSetFrameAsActiveTool: {
486
495
  data: import("../charts").Spreadsheet;
487
496
  };
488
497
  pendingImageElementId: string | null;
489
- showHyperlinkPopup: false | "editor" | "info";
498
+ showHyperlinkPopup: false | "info" | "editor";
490
499
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
491
500
  snapLines: readonly import("../snapping").SnapLine[];
492
501
  originSnapOffset: {
@@ -29,7 +29,7 @@ export declare const actionGroup: {
29
29
  errorMessage: import("react").ReactNode;
30
30
  activeEmbeddable: {
31
31
  element: import("../element/types").NonDeletedExcalidrawElement;
32
- state: "active" | "hover";
32
+ state: "hover" | "active";
33
33
  } | null;
34
34
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
35
35
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -77,7 +77,7 @@ export declare const actionGroup: {
77
77
  scrollY: number;
78
78
  cursorButton: "up" | "down";
79
79
  scrolledOutside: boolean;
80
- name: string;
80
+ name: string | null;
81
81
  isResizing: boolean;
82
82
  isRotating: boolean;
83
83
  zoom: Readonly<{
@@ -97,7 +97,7 @@ export declare const actionGroup: {
97
97
  tab: "text-to-diagram" | "diagram-to-code";
98
98
  } | {
99
99
  name: "ttd";
100
- tab: "mermaid" | "text-to-diagram";
100
+ tab: "text-to-diagram" | "mermaid";
101
101
  } | null;
102
102
  defaultSidebarDockedPreference: boolean;
103
103
  lastPointerDownWith: import("../element/types").PointerType;
@@ -136,6 +136,9 @@ export declare const actionGroup: {
136
136
  id?: string | undefined;
137
137
  socketId?: import("../types").SocketId | undefined;
138
138
  isCurrentUser?: boolean | undefined;
139
+ isInCall?: boolean | undefined;
140
+ isSpeaking?: boolean | undefined;
141
+ isMuted?: boolean | undefined;
139
142
  }>>;
140
143
  showStats: boolean;
141
144
  currentChartType: import("../element/types").ChartType;
@@ -147,7 +150,7 @@ export declare const actionGroup: {
147
150
  data: import("../charts").Spreadsheet;
148
151
  };
149
152
  pendingImageElementId: string | null;
150
- showHyperlinkPopup: false | "editor" | "info";
153
+ showHyperlinkPopup: false | "info" | "editor";
151
154
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
152
155
  snapLines: readonly import("../snapping").SnapLine[];
153
156
  originSnapOffset: {
@@ -196,7 +199,7 @@ export declare const actionUngroup: {
196
199
  errorMessage: import("react").ReactNode;
197
200
  activeEmbeddable: {
198
201
  element: import("../element/types").NonDeletedExcalidrawElement;
199
- state: "active" | "hover";
202
+ state: "hover" | "active";
200
203
  } | null;
201
204
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
202
205
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -244,7 +247,7 @@ export declare const actionUngroup: {
244
247
  scrollY: number;
245
248
  cursorButton: "up" | "down";
246
249
  scrolledOutside: boolean;
247
- name: string;
250
+ name: string | null;
248
251
  isResizing: boolean;
249
252
  isRotating: boolean;
250
253
  zoom: Readonly<{
@@ -264,7 +267,7 @@ export declare const actionUngroup: {
264
267
  tab: "text-to-diagram" | "diagram-to-code";
265
268
  } | {
266
269
  name: "ttd";
267
- tab: "mermaid" | "text-to-diagram";
270
+ tab: "text-to-diagram" | "mermaid";
268
271
  } | null;
269
272
  defaultSidebarDockedPreference: boolean;
270
273
  lastPointerDownWith: import("../element/types").PointerType;
@@ -303,6 +306,9 @@ export declare const actionUngroup: {
303
306
  id?: string | undefined;
304
307
  socketId?: import("../types").SocketId | undefined;
305
308
  isCurrentUser?: boolean | undefined;
309
+ isInCall?: boolean | undefined;
310
+ isSpeaking?: boolean | undefined;
311
+ isMuted?: boolean | undefined;
306
312
  }>>;
307
313
  showStats: boolean;
308
314
  currentChartType: import("../element/types").ChartType;
@@ -314,7 +320,7 @@ export declare const actionUngroup: {
314
320
  data: import("../charts").Spreadsheet;
315
321
  };
316
322
  pendingImageElementId: string | null;
317
- showHyperlinkPopup: false | "editor" | "info";
323
+ showHyperlinkPopup: false | "info" | "editor";
318
324
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
319
325
  snapLines: readonly import("../snapping").SnapLine[];
320
326
  originSnapOffset: {
@@ -12,6 +12,7 @@ import { randomId } from "../random";
12
12
  import { ToolButton } from "../components/ToolButton";
13
13
  import { isBoundToContainer } from "../element/typeChecks";
14
14
  import { getElementsInResizingFrame, getFrameLikeElements, groupByFrameLikes, removeElementsFromFrame, replaceAllElementsInFrame, } from "../frame";
15
+ import { syncMovedIndices } from "../fractionalIndex";
15
16
  const allElementsInSameGroup = (elements) => {
16
17
  if (elements.length >= 2) {
17
18
  const groupIds = elements[0].groupIds;
@@ -88,17 +89,18 @@ export const actionGroup = register({
88
89
  const elementsBeforeGroup = nextElements
89
90
  .slice(0, lastGroupElementIndex)
90
91
  .filter((updatedElement) => !isElementInGroup(updatedElement, newGroupId));
91
- nextElements = [
92
+ const reorderedElements = [
92
93
  ...elementsBeforeGroup,
93
94
  ...elementsInGroup,
94
95
  ...elementsAfterGroup,
95
96
  ];
97
+ syncMovedIndices(reorderedElements, arrayToMap(elementsInGroup));
96
98
  return {
97
99
  appState: {
98
100
  ...appState,
99
101
  ...selectGroup(newGroupId, { ...appState, selectedGroupIds: {} }, getNonDeletedElements(nextElements)),
100
102
  },
101
- elements: nextElements,
103
+ elements: reorderedElements,
102
104
  commitToHistory: true,
103
105
  };
104
106
  },
@@ -112,6 +114,7 @@ export const actionUngroup = register({
112
114
  trackEvent: { category: "element" },
113
115
  perform: (elements, appState, _, app) => {
114
116
  const groupIds = getSelectedGroupIds(appState);
117
+ const elementsMap = arrayToMap(elements);
115
118
  if (groupIds.length === 0) {
116
119
  return { appState, elements, commitToHistory: false };
117
120
  }
@@ -137,7 +140,7 @@ export const actionUngroup = register({
137
140
  const targetFrames = getFrameLikeElements(elements).filter((frame) => selectedElementFrameIds.has(frame.id));
138
141
  targetFrames.forEach((frame) => {
139
142
  if (frame) {
140
- nextElements = replaceAllElementsInFrame(nextElements, getElementsInResizingFrame(nextElements, frame, appState), frame, app);
143
+ nextElements = replaceAllElementsInFrame(nextElements, getElementsInResizingFrame(nextElements, frame, appState, elementsMap), frame, app);
141
144
  }
142
145
  });
143
146
  // remove binded text elements from selection
@@ -7,6 +7,7 @@ import { newElementWith } from "../element/mutateElement";
7
7
  import { fixBindingsAfterDeletion } from "../element/binding";
8
8
  import { arrayToMap } from "../utils";
9
9
  import { isWindows } from "../constants";
10
+ import { syncInvalidIndices } from "../fractionalIndex";
10
11
  const writeData = (prevElements, appState, updater) => {
11
12
  const commitToHistory = false;
12
13
  if (!appState.multiElement &&
@@ -25,6 +26,8 @@ const writeData = (prevElements, appState, updater) => {
25
26
  .map((nextElement) => newElementWith(prevElementMap.get(nextElement.id) || nextElement, nextElement))
26
27
  .concat(deletedElements.map((prevElement) => newElementWith(prevElement, { isDeleted: true })));
27
28
  fixBindingsAfterDeletion(elements, deletedElements);
29
+ // TODO: will be replaced in #7348
30
+ syncInvalidIndices(elements);
28
31
  return {
29
32
  elements,
30
33
  appState: { ...appState, ...data.appState },
@@ -20,7 +20,7 @@ export declare const actionToggleLinearEditor: {
20
20
  errorMessage: import("react").ReactNode;
21
21
  activeEmbeddable: {
22
22
  element: import("../element/types").NonDeletedExcalidrawElement;
23
- state: "active" | "hover";
23
+ state: "hover" | "active";
24
24
  } | null;
25
25
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
26
26
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -67,7 +67,7 @@ export declare const actionToggleLinearEditor: {
67
67
  scrollY: number;
68
68
  cursorButton: "up" | "down";
69
69
  scrolledOutside: boolean;
70
- name: string;
70
+ name: string | null;
71
71
  isResizing: boolean;
72
72
  isRotating: boolean;
73
73
  zoom: Readonly<{
@@ -87,7 +87,7 @@ export declare const actionToggleLinearEditor: {
87
87
  tab: "text-to-diagram" | "diagram-to-code";
88
88
  } | {
89
89
  name: "ttd";
90
- tab: "mermaid" | "text-to-diagram";
90
+ tab: "text-to-diagram" | "mermaid";
91
91
  } | null;
92
92
  defaultSidebarDockedPreference: boolean;
93
93
  lastPointerDownWith: import("../element/types").PointerType;
@@ -133,6 +133,9 @@ export declare const actionToggleLinearEditor: {
133
133
  id?: string | undefined;
134
134
  socketId?: import("../types").SocketId | undefined;
135
135
  isCurrentUser?: boolean | undefined;
136
+ isInCall?: boolean | undefined;
137
+ isSpeaking?: boolean | undefined;
138
+ isMuted?: boolean | undefined;
136
139
  }>>;
137
140
  showStats: boolean;
138
141
  currentChartType: import("../element/types").ChartType;
@@ -144,7 +147,7 @@ export declare const actionToggleLinearEditor: {
144
147
  data: import("../charts").Spreadsheet;
145
148
  };
146
149
  pendingImageElementId: string | null;
147
- showHyperlinkPopup: false | "editor" | "info";
150
+ showHyperlinkPopup: false | "info" | "editor";
148
151
  selectedLinearElement: LinearElementEditor | null;
149
152
  snapLines: readonly import("../snapping").SnapLine[];
150
153
  originSnapOffset: {
@@ -20,7 +20,7 @@ export const actionToggleLinearEditor = register({
20
20
  })[0];
21
21
  const editingLinearElement = appState.editingLinearElement?.elementId === selectedElement.id
22
22
  ? null
23
- : new LinearElementEditor(selectedElement, app.scene);
23
+ : new LinearElementEditor(selectedElement);
24
24
  return {
25
25
  appState: {
26
26
  ...appState,
@@ -1,24 +1,8 @@
1
1
  /// <reference types="react" />
2
- import { AppState, ExcalidrawProps, UIAppState } from "../types";
3
- import { ExcalidrawEmbeddableElement, NonDeletedExcalidrawElement } from "./types";
4
- import { Bounds } from "./bounds";
5
- import "./Hyperlink.scss";
6
- export declare const EXTERNAL_LINK_IMG: HTMLImageElement;
7
- export declare const Hyperlink: ({ element, setAppState, onLinkOpen, setToast, updateEmbedValidationStatus, }: {
8
- element: NonDeletedExcalidrawElement;
9
- setAppState: React.Component<any, AppState>["setState"];
10
- onLinkOpen: ExcalidrawProps["onLinkOpen"];
11
- setToast: (toast: {
12
- message: string;
13
- closable?: boolean;
14
- duration?: number;
15
- } | null) => void;
16
- updateEmbedValidationStatus: (element: ExcalidrawEmbeddableElement, status: boolean) => void;
17
- }) => JSX.Element | null;
18
2
  export declare const actionLink: {
19
3
  name: "hyperlink";
20
- perform: (elements: readonly import("./types").ExcalidrawElement[], appState: Readonly<AppState>) => false | {
21
- elements: readonly import("./types").ExcalidrawElement[];
4
+ perform: (elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>) => false | {
5
+ elements: readonly import("../element/types").ExcalidrawElement[];
22
6
  appState: {
23
7
  showHyperlinkPopup: "editor";
24
8
  openMenu: null;
@@ -31,17 +15,17 @@ export declare const actionLink: {
31
15
  isLoading: boolean;
32
16
  errorMessage: import("react").ReactNode;
33
17
  activeEmbeddable: {
34
- element: NonDeletedExcalidrawElement;
35
- state: "active" | "hover";
18
+ element: import("../element/types").NonDeletedExcalidrawElement;
19
+ state: "hover" | "active";
36
20
  } | null;
37
- draggingElement: NonDeletedExcalidrawElement | null;
38
- resizingElement: NonDeletedExcalidrawElement | null;
39
- multiElement: import("./types").NonDeleted<import("./types").ExcalidrawLinearElement> | null;
40
- selectionElement: NonDeletedExcalidrawElement | null;
21
+ draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
22
+ resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
23
+ multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null;
24
+ selectionElement: import("../element/types").NonDeletedExcalidrawElement | null;
41
25
  isBindingEnabled: boolean;
42
- startBoundElement: import("./types").NonDeleted<import("./types").ExcalidrawBindableElement> | null;
43
- suggestedBindings: import("./binding").SuggestedBinding[];
44
- frameToHighlight: import("./types").NonDeleted<import("./types").ExcalidrawFrameLikeElement> | null;
26
+ startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
27
+ suggestedBindings: import("../element/binding").SuggestedBinding[];
28
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameLikeElement> | null;
45
29
  frameRendering: {
46
30
  enabled: boolean;
47
31
  name: boolean;
@@ -49,9 +33,9 @@ export declare const actionLink: {
49
33
  clip: boolean;
50
34
  };
51
35
  editingFrame: string | null;
52
- elementsToHighlight: import("./types").NonDeleted<import("./types").ExcalidrawElement>[] | null;
53
- editingElement: NonDeletedExcalidrawElement | null;
54
- editingLinearElement: import("./linearElementEditor").LinearElementEditor | null;
36
+ elementsToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawElement>[] | null;
37
+ editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
38
+ editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
55
39
  activeTool: {
56
40
  lastActiveTool: import("../types").ActiveTool | null;
57
41
  locked: boolean;
@@ -64,23 +48,23 @@ export declare const actionLink: {
64
48
  exportScale: number;
65
49
  currentItemStrokeColor: string;
66
50
  currentItemBackgroundColor: string;
67
- currentItemFillStyle: import("./types").FillStyle;
51
+ currentItemFillStyle: import("../element/types").FillStyle;
68
52
  currentItemStrokeWidth: number;
69
- currentItemStrokeStyle: import("./types").StrokeStyle;
53
+ currentItemStrokeStyle: import("../element/types").StrokeStyle;
70
54
  currentItemRoughness: number;
71
55
  currentItemOpacity: number;
72
56
  currentItemFontFamily: number;
73
57
  currentItemFontSize: number;
74
58
  currentItemTextAlign: string;
75
- currentItemStartArrowhead: import("./types").Arrowhead | null;
76
- currentItemEndArrowhead: import("./types").Arrowhead | null;
77
- currentItemRoundness: import("./types").StrokeRoundness;
59
+ currentItemStartArrowhead: import("../element/types").Arrowhead | null;
60
+ currentItemEndArrowhead: import("../element/types").Arrowhead | null;
61
+ currentItemRoundness: import("../element/types").StrokeRoundness;
78
62
  viewBackgroundColor: string;
79
63
  scrollX: number;
80
64
  scrollY: number;
81
65
  cursorButton: "up" | "down";
82
66
  scrolledOutside: boolean;
83
- name: string;
67
+ name: string | null;
84
68
  isResizing: boolean;
85
69
  isRotating: boolean;
86
70
  zoom: Readonly<{
@@ -99,10 +83,10 @@ export declare const actionLink: {
99
83
  tab: "text-to-diagram" | "diagram-to-code";
100
84
  } | {
101
85
  name: "ttd";
102
- tab: "mermaid" | "text-to-diagram";
86
+ tab: "text-to-diagram" | "mermaid";
103
87
  } | null;
104
88
  defaultSidebarDockedPreference: boolean;
105
- lastPointerDownWith: import("./types").PointerType;
89
+ lastPointerDownWith: import("../element/types").PointerType;
106
90
  selectedElementIds: Readonly<{
107
91
  [id: string]: true;
108
92
  }>;
@@ -117,7 +101,7 @@ export declare const actionLink: {
117
101
  duration?: number | undefined;
118
102
  } | null;
119
103
  zenModeEnabled: boolean;
120
- theme: import("./types").Theme;
104
+ theme: import("../element/types").Theme;
121
105
  gridSize: number | null;
122
106
  viewModeEnabled: boolean;
123
107
  selectedGroupIds: {
@@ -145,9 +129,12 @@ export declare const actionLink: {
145
129
  id?: string | undefined;
146
130
  socketId?: import("../types").SocketId | undefined;
147
131
  isCurrentUser?: boolean | undefined;
132
+ isInCall?: boolean | undefined;
133
+ isSpeaking?: boolean | undefined;
134
+ isMuted?: boolean | undefined;
148
135
  }>>;
149
136
  showStats: boolean;
150
- currentChartType: import("./types").ChartType;
137
+ currentChartType: import("../element/types").ChartType;
151
138
  pasteDialog: {
152
139
  shown: false;
153
140
  data: null;
@@ -156,7 +143,7 @@ export declare const actionLink: {
156
143
  data: import("../charts").Spreadsheet;
157
144
  };
158
145
  pendingImageElementId: string | null;
159
- selectedLinearElement: import("./linearElementEditor").LinearElementEditor | null;
146
+ selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
160
147
  snapLines: readonly import("../snapping").SnapLine[];
161
148
  originSnapOffset: {
162
149
  x: number;
@@ -173,16 +160,9 @@ export declare const actionLink: {
173
160
  action: string;
174
161
  };
175
162
  keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
176
- contextItemLabel: (elements: readonly import("./types").ExcalidrawElement[], appState: Readonly<AppState>) => "labels.link.editEmbed" | "labels.link.edit" | "labels.link.createEmbed" | "labels.link.create";
177
- predicate: (elements: readonly import("./types").ExcalidrawElement[], appState: AppState) => boolean;
178
- PanelComponent: ({ elements, appState, updateData }: import("../actions/types").PanelComponentProps) => JSX.Element;
163
+ contextItemLabel: (elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>) => "labels.link.editEmbed" | "labels.link.edit" | "labels.link.createEmbed" | "labels.link.create";
164
+ predicate: (elements: readonly import("../element/types").ExcalidrawElement[], appState: import("../types").AppState) => boolean;
165
+ PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
179
166
  } & {
180
167
  keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
181
168
  };
182
- export declare const getContextMenuLabel: (elements: readonly NonDeletedExcalidrawElement[], appState: AppState) => "labels.link.editEmbed" | "labels.link.edit" | "labels.link.createEmbed" | "labels.link.create";
183
- export declare const getLinkHandleFromCoords: ([x1, y1, x2, y2]: Bounds, angle: number, appState: Pick<UIAppState, "zoom">) => Bounds;
184
- export declare const isPointHittingLinkIcon: (element: NonDeletedExcalidrawElement, appState: AppState, [x, y]: readonly [number, number]) => boolean;
185
- export declare const isPointHittingLink: (element: NonDeletedExcalidrawElement, appState: AppState, [x, y]: readonly [number, number], isMobile: boolean) => boolean;
186
- export declare const showHyperlinkTooltip: (element: NonDeletedExcalidrawElement, appState: AppState) => void;
187
- export declare const hideHyperlinkToolip: () => void;
188
- export declare const shouldHideLinkPopup: (element: NonDeletedExcalidrawElement, appState: AppState, [clientX, clientY]: readonly [number, number]) => Boolean;
@@ -0,0 +1,40 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { getContextMenuLabel } from "../components/hyperlink/Hyperlink";
3
+ import { LinkIcon } from "../components/icons";
4
+ import { ToolButton } from "../components/ToolButton";
5
+ import { isEmbeddableElement } from "../element/typeChecks";
6
+ import { t } from "../i18n";
7
+ import { KEYS } from "../keys";
8
+ import { getSelectedElements } from "../scene";
9
+ import { getShortcutKey } from "../utils";
10
+ import { register } from "./register";
11
+ export const actionLink = register({
12
+ name: "hyperlink",
13
+ perform: (elements, appState) => {
14
+ if (appState.showHyperlinkPopup === "editor") {
15
+ return false;
16
+ }
17
+ return {
18
+ elements,
19
+ appState: {
20
+ ...appState,
21
+ showHyperlinkPopup: "editor",
22
+ openMenu: null,
23
+ },
24
+ commitToHistory: true,
25
+ };
26
+ },
27
+ trackEvent: { category: "hyperlink", action: "click" },
28
+ keyTest: (event) => event[KEYS.CTRL_OR_CMD] && event.key === KEYS.K,
29
+ contextItemLabel: (elements, appState) => getContextMenuLabel(elements, appState),
30
+ predicate: (elements, appState) => {
31
+ const selectedElements = getSelectedElements(elements, appState);
32
+ return selectedElements.length === 1;
33
+ },
34
+ PanelComponent: ({ elements, appState, updateData }) => {
35
+ const selectedElements = getSelectedElements(elements, appState);
36
+ return (_jsx(ToolButton, { type: "button", icon: LinkIcon, "aria-label": t(getContextMenuLabel(elements, appState)), title: `${isEmbeddableElement(elements[0])
37
+ ? t("labels.link.labelEmbed")
38
+ : t("labels.link.label")} - ${getShortcutKey("CtrlOrCmd+K")}`, onClick: () => updateData(null), selected: selectedElements.length === 1 && !!selectedElements[0].link }));
39
+ },
40
+ });