@dwelle/excalidraw 0.5.0-b8a955d → 0.5.0-ba41ca2

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 (563) hide show
  1. package/CHANGELOG.md +201 -0
  2. package/README.md +111 -14
  3. package/dist/dev/{chunk-KB3DXHSJ.js → chunk-63SUNQT5.js} +11160 -6728
  4. package/dist/dev/chunk-63SUNQT5.js.map +7 -0
  5. package/dist/dev/chunk-72CYJXY3.js +69 -0
  6. package/dist/dev/chunk-72CYJXY3.js.map +7 -0
  7. package/dist/dev/{chunk-VHBP2L6P.js → chunk-GLSDDV5C.js} +2 -2
  8. package/dist/dev/{chunk-XIXZ3HJO.js → chunk-ZKWD6VD3.js} +58 -10
  9. package/dist/dev/chunk-ZKWD6VD3.js.map +7 -0
  10. package/dist/dev/components/TTDDialog/CodeMirrorEditor-YNPNZUA4.js +259 -0
  11. package/dist/dev/components/TTDDialog/CodeMirrorEditor-YNPNZUA4.js.map +7 -0
  12. package/dist/dev/data/{image-YTAF2QAV.js → image-LSHTDYDI.js} +3 -3
  13. package/dist/dev/index.css +955 -752
  14. package/dist/dev/index.css.map +3 -3
  15. package/dist/dev/index.js +13606 -7440
  16. package/dist/dev/index.js.map +4 -4
  17. package/dist/dev/locales/{ar-SA-JK5MQ7TT.js → ar-SA-EW44IW4V.js} +127 -28
  18. package/dist/dev/locales/ar-SA-EW44IW4V.js.map +7 -0
  19. package/dist/dev/locales/{az-AZ-2PAD62G4.js → az-AZ-AI7WAYA2.js} +103 -4
  20. package/dist/dev/locales/az-AZ-AI7WAYA2.js.map +7 -0
  21. package/dist/dev/locales/{bg-BG-HUKVYCRK.js → bg-BG-43ZNGDXF.js} +104 -5
  22. package/dist/dev/locales/bg-BG-43ZNGDXF.js.map +7 -0
  23. package/dist/dev/locales/{bn-BD-V2CQI46P.js → bn-BD-PU4CN7NP.js} +103 -4
  24. package/dist/dev/locales/bn-BD-PU4CN7NP.js.map +7 -0
  25. package/dist/dev/locales/{bn-IN-MBEO4C3J.js → bn-IN-54CF43JL.js} +103 -4
  26. package/dist/dev/locales/bn-IN-54CF43JL.js.map +7 -0
  27. package/dist/dev/locales/{ca-ES-KWEKW4C3.js → ca-ES-RHJO3QDO.js} +105 -6
  28. package/dist/dev/locales/ca-ES-RHJO3QDO.js.map +7 -0
  29. package/dist/dev/locales/{cs-CZ-W5AHZB5H.js → cs-CZ-ZRSAO3BA.js} +104 -5
  30. package/dist/dev/locales/cs-CZ-ZRSAO3BA.js.map +7 -0
  31. package/dist/dev/locales/{da-DK-ITTM6YM4.js → da-DK-OAB6DEJX.js} +103 -4
  32. package/dist/dev/locales/da-DK-OAB6DEJX.js.map +7 -0
  33. package/dist/dev/locales/{de-CH-OAWPDQFJ.js → de-CH-QF7JLXTF.js} +181 -82
  34. package/dist/dev/locales/de-CH-QF7JLXTF.js.map +7 -0
  35. package/dist/dev/locales/{de-DE-ZRDYEPMS.js → de-DE-5ZO4KOPT.js} +175 -76
  36. package/dist/dev/locales/de-DE-5ZO4KOPT.js.map +7 -0
  37. package/dist/dev/locales/{el-GR-QXASZLPE.js → el-GR-F74ZSUEO.js} +105 -6
  38. package/dist/dev/locales/el-GR-F74ZSUEO.js.map +7 -0
  39. package/dist/dev/locales/{en-RTISGYJB.js → en-JNOPSYVP.js} +6 -2
  40. package/dist/dev/locales/{es-ES-VLQBB7FJ.js → es-ES-3B3IENPS.js} +162 -63
  41. package/dist/dev/locales/es-ES-3B3IENPS.js.map +7 -0
  42. package/dist/dev/locales/{eu-ES-TF2DGTZU.js → eu-ES-NH447TVU.js} +221 -122
  43. package/dist/dev/locales/eu-ES-NH447TVU.js.map +7 -0
  44. package/dist/dev/locales/{fa-IR-ITKFQ7QV.js → fa-IR-GHKV6Q2J.js} +110 -11
  45. package/dist/dev/locales/fa-IR-GHKV6Q2J.js.map +7 -0
  46. package/dist/dev/locales/{fi-FI-UWZRVXFI.js → fi-FI-ZXSYWCC4.js} +104 -5
  47. package/dist/dev/locales/fi-FI-ZXSYWCC4.js.map +7 -0
  48. package/dist/dev/locales/{fr-FR-A72LKGCO.js → fr-FR-RJSOSEYS.js} +105 -6
  49. package/dist/dev/locales/fr-FR-RJSOSEYS.js.map +7 -0
  50. package/dist/dev/locales/{gl-ES-2QCVIBFP.js → gl-ES-NAUVMVFY.js} +104 -5
  51. package/dist/dev/locales/gl-ES-NAUVMVFY.js.map +7 -0
  52. package/dist/dev/locales/{he-IL-WJNUHU26.js → he-IL-JBKWWR75.js} +162 -63
  53. package/dist/dev/locales/he-IL-JBKWWR75.js.map +7 -0
  54. package/dist/dev/locales/{hi-IN-XGMO235V.js → hi-IN-SD773MVZ.js} +113 -14
  55. package/dist/dev/locales/hi-IN-SD773MVZ.js.map +7 -0
  56. package/dist/dev/locales/{hu-HU-37FDQFIS.js → hu-HU-OTA7GOAV.js} +193 -94
  57. package/dist/dev/locales/hu-HU-OTA7GOAV.js.map +7 -0
  58. package/dist/dev/locales/{id-ID-EJIDCO4E.js → id-ID-2JAZWVTQ.js} +155 -56
  59. package/dist/dev/locales/id-ID-2JAZWVTQ.js.map +7 -0
  60. package/dist/dev/locales/{it-IT-X34PIOJ2.js → it-IT-GHWUAT77.js} +105 -6
  61. package/dist/dev/locales/it-IT-GHWUAT77.js.map +7 -0
  62. package/dist/dev/locales/{ja-JP-37FC23PR.js → ja-JP-YMGRGBPS.js} +207 -108
  63. package/dist/dev/locales/ja-JP-YMGRGBPS.js.map +7 -0
  64. package/dist/dev/locales/{kaa-7ZYDFVKA.js → kaa-RRE7XUCW.js} +103 -4
  65. package/dist/dev/locales/kaa-RRE7XUCW.js.map +7 -0
  66. package/dist/dev/locales/{kab-KAB-MILWXBA6.js → kab-KAB-ZCYVOJU4.js} +104 -5
  67. package/dist/dev/locales/kab-KAB-ZCYVOJU4.js.map +7 -0
  68. package/dist/dev/locales/{kk-KZ-7BWTPIAV.js → kk-KZ-TO6XEFJC.js} +103 -4
  69. package/dist/dev/locales/kk-KZ-TO6XEFJC.js.map +7 -0
  70. package/dist/dev/locales/{km-KH-BV4P2KSZ.js → km-KH-3HTDL5HB.js} +104 -5
  71. package/dist/dev/locales/km-KH-3HTDL5HB.js.map +7 -0
  72. package/dist/dev/locales/{ko-KR-TSXE5P7B.js → ko-KR-O4L4O7L6.js} +184 -85
  73. package/dist/dev/locales/ko-KR-O4L4O7L6.js.map +7 -0
  74. package/dist/dev/locales/{ku-TR-ASSXNN3U.js → ku-TR-AFJWDY67.js} +104 -5
  75. package/dist/dev/locales/ku-TR-AFJWDY67.js.map +7 -0
  76. package/dist/dev/locales/{lt-LT-G7RZYQQU.js → lt-LT-7QOT2VDQ.js} +103 -4
  77. package/dist/dev/locales/lt-LT-7QOT2VDQ.js.map +7 -0
  78. package/dist/dev/locales/{lv-LV-DXNPBJZU.js → lv-LV-WV6C4NYF.js} +104 -5
  79. package/dist/dev/locales/lv-LV-WV6C4NYF.js.map +7 -0
  80. package/dist/dev/locales/{mr-IN-7F2ZCTCF.js → mr-IN-3TLYWOEI.js} +106 -7
  81. package/dist/dev/locales/mr-IN-3TLYWOEI.js.map +7 -0
  82. package/dist/dev/locales/{my-MM-NBI3KQGW.js → my-MM-NNL2QJT3.js} +103 -4
  83. package/dist/dev/locales/my-MM-NNL2QJT3.js.map +7 -0
  84. package/dist/dev/locales/{nb-NO-4DCTQT6L.js → nb-NO-PG3XLMEV.js} +105 -6
  85. package/dist/dev/locales/nb-NO-PG3XLMEV.js.map +7 -0
  86. package/dist/dev/locales/{nl-NL-XGZJ7V2V.js → nl-NL-MMOYEKKQ.js} +109 -10
  87. package/dist/dev/locales/nl-NL-MMOYEKKQ.js.map +7 -0
  88. package/dist/dev/locales/{nn-NO-FR534JV5.js → nn-NO-AAC2I2YX.js} +103 -4
  89. package/dist/dev/locales/nn-NO-AAC2I2YX.js.map +7 -0
  90. package/dist/dev/locales/{oc-FR-YQCIKZIK.js → oc-FR-SR6MFB4N.js} +105 -6
  91. package/dist/dev/locales/oc-FR-SR6MFB4N.js.map +7 -0
  92. package/dist/dev/locales/{pa-IN-UM43JGD2.js → pa-IN-ADGMQLQI.js} +104 -5
  93. package/dist/dev/locales/pa-IN-ADGMQLQI.js.map +7 -0
  94. package/dist/dev/locales/{percentages-OGWD7R2K.js → percentages-DKKGPYTW.js} +2 -2
  95. package/dist/dev/locales/{pl-PL-2UGKA6HK.js → pl-PL-FNIPTMVP.js} +105 -6
  96. package/dist/dev/locales/pl-PL-FNIPTMVP.js.map +7 -0
  97. package/dist/dev/locales/{pt-BR-H23QFYE3.js → pt-BR-67FMCDNE.js} +154 -55
  98. package/dist/dev/locales/pt-BR-67FMCDNE.js.map +7 -0
  99. package/dist/dev/locales/{pt-PT-RHKJH5I5.js → pt-PT-4G3GI4SF.js} +153 -54
  100. package/dist/dev/locales/pt-PT-4G3GI4SF.js.map +7 -0
  101. package/dist/dev/locales/{ro-RO-IIFONL3T.js → ro-RO-CUZFN555.js} +108 -9
  102. package/dist/dev/locales/ro-RO-CUZFN555.js.map +7 -0
  103. package/dist/dev/locales/{ru-RU-QEP6D7GK.js → ru-RU-4GHINTII.js} +107 -8
  104. package/dist/dev/locales/ru-RU-4GHINTII.js.map +7 -0
  105. package/dist/dev/locales/{si-LK-LZYJQLHF.js → si-LK-SSNT7T4A.js} +105 -6
  106. package/dist/dev/locales/si-LK-SSNT7T4A.js.map +7 -0
  107. package/dist/dev/locales/{sk-SK-RWC6UWGY.js → sk-SK-J7TKZQEH.js} +105 -6
  108. package/dist/dev/locales/sk-SK-J7TKZQEH.js.map +7 -0
  109. package/dist/dev/locales/{sl-SI-QJT2CAUO.js → sl-SI-SIBF67NE.js} +105 -6
  110. package/dist/dev/locales/sl-SI-SIBF67NE.js.map +7 -0
  111. package/dist/dev/locales/{sv-SE-3MAT3NDX.js → sv-SE-YTR46NVM.js} +149 -50
  112. package/dist/dev/locales/sv-SE-YTR46NVM.js.map +7 -0
  113. package/dist/dev/locales/{ta-IN-J7XOYF2T.js → ta-IN-7AW6CTGA.js} +103 -4
  114. package/dist/dev/locales/ta-IN-7AW6CTGA.js.map +7 -0
  115. package/dist/dev/locales/{th-TH-2OI52EOQ.js → th-TH-DTLYJYKV.js} +134 -35
  116. package/dist/dev/locales/th-TH-DTLYJYKV.js.map +7 -0
  117. package/dist/dev/locales/{tr-TR-G7TAUHUI.js → tr-TR-UDQGNXAG.js} +145 -46
  118. package/dist/dev/locales/tr-TR-UDQGNXAG.js.map +7 -0
  119. package/dist/dev/locales/{uk-UA-IVSVBJIG.js → uk-UA-25HL2NCU.js} +126 -27
  120. package/dist/dev/locales/uk-UA-25HL2NCU.js.map +7 -0
  121. package/dist/dev/locales/{uz-UZ-KCVDUVDE.js → uz-UZ-OPSBAY4H.js} +103 -4
  122. package/dist/dev/locales/uz-UZ-OPSBAY4H.js.map +7 -0
  123. package/dist/dev/locales/{vi-VN-KBZAVWP5.js → vi-VN-DK367UGA.js} +103 -4
  124. package/dist/dev/locales/vi-VN-DK367UGA.js.map +7 -0
  125. package/dist/dev/locales/{zh-CN-IS26RG2D.js → zh-CN-QCVKNWUH.js} +106 -7
  126. package/dist/dev/locales/zh-CN-QCVKNWUH.js.map +7 -0
  127. package/dist/dev/locales/{zh-HK-KBWQ6SJC.js → zh-HK-WFGYHWPG.js} +103 -4
  128. package/dist/dev/locales/zh-HK-WFGYHWPG.js.map +7 -0
  129. package/dist/dev/locales/{zh-TW-JKJWJQ4J.js → zh-TW-WHQS4ZSD.js} +151 -52
  130. package/dist/dev/locales/zh-TW-WHQS4ZSD.js.map +7 -0
  131. package/dist/dev/subset-shared.chunk.js +1 -1
  132. package/dist/dev/subset-worker.chunk.js +1 -1
  133. package/dist/prod/chunk-5XKZK2GL.js +1 -0
  134. package/dist/prod/chunk-6XMTGF46.js +34 -0
  135. package/dist/prod/chunk-7L3NUBYQ.js +12 -0
  136. package/dist/prod/{chunk-GTEFJJHD.js → chunk-FUN3GFKR.js} +1 -1
  137. package/dist/prod/components/TTDDialog/CodeMirrorEditor-T6RKT6RA.js +1 -0
  138. package/dist/prod/data/image-UAXVGXRE.js +1 -0
  139. package/dist/prod/index.css +1 -1
  140. package/dist/prod/index.js +65 -89
  141. package/dist/prod/locales/ar-SA-5WIASEJP.js +10 -0
  142. package/dist/prod/locales/az-AZ-V5EUQD6C.js +1 -0
  143. package/dist/prod/locales/bg-BG-EXASCMTR.js +5 -0
  144. package/dist/prod/locales/bn-BD-U4SYNFCO.js +3 -0
  145. package/dist/prod/locales/bn-IN-HKDJIITE.js +3 -0
  146. package/dist/prod/locales/ca-ES-2KGUU5XB.js +8 -0
  147. package/dist/prod/locales/cs-CZ-VUCGPRML.js +7 -0
  148. package/dist/prod/locales/da-DK-NNDP2IVP.js +2 -0
  149. package/dist/prod/locales/de-CH-I7RAVIZN.js +11 -0
  150. package/dist/prod/locales/de-DE-WBQ3DQLR.js +11 -0
  151. package/dist/prod/locales/el-GR-TYQHVGXW.js +7 -0
  152. package/dist/prod/locales/en-E6R7JWZO.js +1 -0
  153. package/dist/prod/locales/es-ES-JEUOREKJ.js +12 -0
  154. package/dist/prod/locales/eu-ES-SO5DEEAN.js +8 -0
  155. package/dist/prod/locales/fa-IR-FIYUE2GQ.js +9 -0
  156. package/dist/prod/locales/fi-FI-REAEF6HQ.js +6 -0
  157. package/dist/prod/locales/fr-FR-SUCL7J6B.js +12 -0
  158. package/dist/prod/locales/gl-ES-KHCSOGVH.js +6 -0
  159. package/dist/prod/locales/he-IL-JYXVXV2Q.js +9 -0
  160. package/dist/prod/locales/hi-IN-BU52H3BO.js +3 -0
  161. package/dist/prod/locales/hu-HU-OWADXDQ3.js +3 -0
  162. package/dist/prod/locales/id-ID-EOMR5R3I.js +8 -0
  163. package/dist/prod/locales/it-IT-FC2VTM3L.js +12 -0
  164. package/dist/prod/locales/ja-JP-JBNTKYP4.js +12 -0
  165. package/dist/prod/locales/kaa-TC3VIB7V.js +1 -0
  166. package/dist/prod/locales/kab-KAB-UOUDSQKM.js +4 -0
  167. package/dist/prod/locales/kk-KZ-P5H2X7YS.js +1 -0
  168. package/dist/prod/locales/km-KH-IHMV2US7.js +7 -0
  169. package/dist/prod/locales/ko-KR-ZTMANIDF.js +5 -0
  170. package/dist/prod/locales/ku-TR-GPJTRB5G.js +6 -0
  171. package/dist/prod/locales/lt-LT-V3XDOK3P.js +3 -0
  172. package/dist/prod/locales/lv-LV-DVQ3FADO.js +4 -0
  173. package/dist/prod/locales/mr-IN-VZ6HH5FE.js +9 -0
  174. package/dist/prod/locales/my-MM-XYKWHRK6.js +1 -0
  175. package/dist/prod/locales/nb-NO-UNO2GGZJ.js +8 -0
  176. package/dist/prod/locales/nl-NL-76EFHT4P.js +13 -0
  177. package/dist/prod/locales/nn-NO-CFKD7ABE.js +4 -0
  178. package/dist/prod/locales/oc-FR-YBJTCJ3J.js +4 -0
  179. package/dist/prod/locales/pa-IN-SNOXSMRV.js +4 -0
  180. package/dist/prod/locales/percentages-Q7USCRWZ.js +1 -0
  181. package/dist/prod/locales/pl-PL-BSY6YFZ3.js +12 -0
  182. package/dist/prod/locales/pt-BR-CZDV62R3.js +10 -0
  183. package/dist/prod/locales/pt-PT-JO57XJJW.js +12 -0
  184. package/dist/prod/locales/ro-RO-UZ5ICYYN.js +12 -0
  185. package/dist/prod/locales/ru-RU-AN7JPREC.js +10 -0
  186. package/dist/prod/locales/si-LK-7CBLD6QQ.js +1 -0
  187. package/dist/prod/locales/sk-SK-SWR6DKBI.js +7 -0
  188. package/dist/prod/locales/sl-SI-JRML4FIH.js +6 -0
  189. package/dist/prod/locales/sv-SE-4ZPKFFXF.js +12 -0
  190. package/dist/prod/locales/ta-IN-V6NHHU6Z.js +6 -0
  191. package/dist/prod/locales/th-TH-P7CTMGDK.js +1 -0
  192. package/dist/prod/locales/tr-TR-GUFYG22B.js +4 -0
  193. package/dist/prod/locales/uk-UA-K6SV5NFQ.js +6 -0
  194. package/dist/prod/locales/uz-UZ-TVKTZO2G.js +1 -0
  195. package/dist/prod/locales/vi-VN-7FKFXJNO.js +7 -0
  196. package/dist/prod/locales/zh-CN-AOKVLNNK.js +11 -0
  197. package/dist/prod/locales/zh-HK-CDKPF5DC.js +1 -0
  198. package/dist/prod/locales/zh-TW-ZVGYESGW.js +13 -0
  199. package/dist/prod/subset-shared.chunk.js +1 -1
  200. package/dist/prod/subset-worker.chunk.js +1 -1
  201. package/dist/types/common/debug.d.ts +21 -0
  202. package/dist/types/common/src/appEventBus.d.ts +27 -0
  203. package/dist/types/common/src/colors.d.ts +16 -2
  204. package/dist/types/common/src/constants.d.ts +16 -7
  205. package/dist/types/common/src/index.d.ts +3 -0
  206. package/dist/types/common/src/keys.d.ts +2 -0
  207. package/dist/types/common/src/points.d.ts +1 -1
  208. package/dist/types/common/src/utils.d.ts +5 -50
  209. package/dist/types/common/src/versionedSnapshotStore.d.ts +17 -0
  210. package/dist/types/element/src/Scene.d.ts +8 -4
  211. package/dist/types/element/src/align.d.ts +2 -2
  212. package/dist/types/element/src/arrowEndpointText.d.ts +49 -0
  213. package/dist/types/element/src/arrowheads.d.ts +3 -0
  214. package/dist/types/element/src/arrows/focus.d.ts +30 -0
  215. package/dist/types/element/src/arrows/helpers.d.ts +5 -0
  216. package/dist/types/element/src/binding.d.ts +29 -15
  217. package/dist/types/element/src/bounds.d.ts +23 -8
  218. package/dist/types/element/src/bucketFill.d.ts +110 -0
  219. package/dist/types/element/src/collision.d.ts +4 -3
  220. package/dist/types/element/src/comparisons.d.ts +5 -4
  221. package/dist/types/element/src/convertToShape.d.ts +23 -0
  222. package/dist/types/element/src/distribute.d.ts +3 -2
  223. package/dist/types/element/src/dragElements.d.ts +27 -0
  224. package/dist/types/element/src/duplicate.d.ts +4 -3
  225. package/dist/types/element/src/elbowArrow.d.ts +2 -0
  226. package/dist/types/element/src/embeddable.d.ts +2 -2
  227. package/dist/types/element/src/flowchart.d.ts +7 -7
  228. package/dist/types/element/src/fractionalIndex.d.ts +2 -2
  229. package/dist/types/element/src/frame.d.ts +9 -8
  230. package/dist/types/element/src/groups.d.ts +9 -9
  231. package/dist/types/element/src/index.d.ts +7 -1
  232. package/dist/types/element/src/linearElementEditor.d.ts +22 -10
  233. package/dist/types/element/src/mutateElement.d.ts +2 -0
  234. package/dist/types/element/src/newElement.d.ts +14 -0
  235. package/dist/types/element/src/renderElement.d.ts +0 -3
  236. package/dist/types/element/src/resizeElements.d.ts +2 -2
  237. package/dist/types/element/src/selection.d.ts +12 -8
  238. package/dist/types/element/src/shape.d.ts +13 -1
  239. package/dist/types/element/src/sortElements.d.ts +10 -0
  240. package/dist/types/element/src/textElement.d.ts +13 -10
  241. package/dist/types/element/src/textWrapping.d.ts +26 -0
  242. package/dist/types/element/src/transform.d.ts +2 -2
  243. package/dist/types/element/src/typeChecks.d.ts +26 -25
  244. package/dist/types/element/src/types.d.ts +13 -3
  245. package/dist/types/element/src/utils.d.ts +6 -4
  246. package/dist/types/element/src/zindex.d.ts +2 -2
  247. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +83 -56
  248. package/dist/types/excalidraw/actions/actionAlign.d.ts +6 -6
  249. package/dist/types/excalidraw/actions/actionBoundText.d.ts +57 -39
  250. package/dist/types/excalidraw/actions/actionCanvas.d.ts +355 -811
  251. package/dist/types/excalidraw/actions/actionClipboard.d.ts +56 -38
  252. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +28 -19
  253. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +89 -59
  254. package/dist/types/excalidraw/actions/actionDeselect.d.ts +165 -0
  255. package/dist/types/excalidraw/actions/actionDistribute.d.ts +2 -3
  256. package/dist/types/excalidraw/actions/actionElementLink.d.ts +24 -19
  257. package/dist/types/excalidraw/actions/actionElementLock.d.ts +57 -39
  258. package/dist/types/excalidraw/actions/actionExport.d.ts +152 -409
  259. package/dist/types/excalidraw/actions/actionFrame.d.ts +95 -240
  260. package/dist/types/excalidraw/actions/actionGroup.d.ts +72 -54
  261. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +34 -21
  262. package/dist/types/excalidraw/actions/actionLink.d.ts +29 -20
  263. package/dist/types/excalidraw/actions/actionMenu.d.ts +24 -19
  264. package/dist/types/excalidraw/actions/actionProperties.d.ts +84 -54
  265. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +33 -24
  266. package/dist/types/excalidraw/actions/actionStyles.d.ts +28 -18
  267. package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +3 -3
  268. package/dist/types/excalidraw/actions/{actionEmbeddable.d.ts → actionToggleArrowBinding.d.ts} +43 -33
  269. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +32 -24
  270. package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +181 -0
  271. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +29 -20
  272. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +28 -24
  273. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +1 -1
  274. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +29 -20
  275. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +30 -21
  276. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +29 -20
  277. package/dist/types/excalidraw/actions/index.d.ts +4 -2
  278. package/dist/types/excalidraw/actions/manager.d.ts +1 -0
  279. package/dist/types/excalidraw/actions/shortcuts.d.ts +1 -1
  280. package/dist/types/excalidraw/actions/types.d.ts +8 -4
  281. package/dist/types/excalidraw/{animated-trail.d.ts → animatedTrail.d.ts} +4 -3
  282. package/dist/types/excalidraw/appState.d.ts +33 -24
  283. package/dist/types/excalidraw/charts/charts.bar.d.ts +2 -0
  284. package/dist/types/excalidraw/charts/charts.constants.d.ts +48 -0
  285. package/dist/types/excalidraw/charts/charts.helpers.d.ts +32 -0
  286. package/dist/types/excalidraw/charts/charts.line.d.ts +2 -0
  287. package/dist/types/excalidraw/charts/charts.parse.d.ts +10 -0
  288. package/dist/types/excalidraw/charts/charts.radar.d.ts +2 -0
  289. package/dist/types/excalidraw/charts/charts.types.d.ts +18 -0
  290. package/dist/types/excalidraw/charts/index.d.ts +7 -0
  291. package/dist/types/excalidraw/clipboard.d.ts +6 -7
  292. package/dist/types/excalidraw/components/Actions.d.ts +17 -12
  293. package/dist/types/excalidraw/components/ActiveConfirmDialog.d.ts +1 -1
  294. package/dist/types/excalidraw/components/App.arrowText.d.ts +72 -0
  295. package/dist/types/excalidraw/components/App.bucketFill.d.ts +48 -0
  296. package/dist/types/excalidraw/components/App.cursor.d.ts +30 -0
  297. package/dist/types/excalidraw/components/App.d.ts +418 -85
  298. package/dist/types/excalidraw/components/App.drawshape.d.ts +55 -0
  299. package/dist/types/excalidraw/components/App.flowchart.d.ts +21 -0
  300. package/dist/types/excalidraw/components/App.viewport.d.ts +73 -0
  301. package/dist/types/excalidraw/components/AppStateObserver.d.ts +37 -0
  302. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +9 -3
  303. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +3 -1
  304. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +3 -1
  305. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +9 -2
  306. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +4 -2
  307. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +8 -1
  308. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
  309. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +2 -1
  310. package/dist/types/excalidraw/components/ColorPicker/topPicksDnD.d.ts +31 -0
  311. package/dist/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +1 -2
  312. package/dist/types/excalidraw/components/CommandPalette/types.d.ts +1 -1
  313. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +2 -2
  314. package/dist/types/excalidraw/components/CursorHint.d.ts +46 -0
  315. package/dist/types/excalidraw/components/EyeDropper.d.ts +1 -1
  316. package/dist/types/excalidraw/components/{ToolButton.d.ts → IconButton.d.ts} +16 -19
  317. package/dist/types/excalidraw/components/IconPicker.d.ts +14 -9
  318. package/dist/types/excalidraw/components/Island.d.ts +7 -0
  319. package/dist/types/excalidraw/components/LaserPointerButton.d.ts +2 -4
  320. package/dist/types/excalidraw/components/LayerUI.d.ts +5 -3
  321. package/dist/types/excalidraw/components/LibraryMenu.d.ts +1 -1
  322. package/dist/types/excalidraw/components/LockButton.d.ts +3 -4
  323. package/dist/types/excalidraw/components/MagicButton.d.ts +0 -2
  324. package/dist/types/excalidraw/components/MobileMenu.d.ts +4 -4
  325. package/dist/types/excalidraw/components/MobileToolbar.d.ts +9 -0
  326. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +1 -1
  327. package/dist/types/excalidraw/components/PasteChartDialog.d.ts +4 -5
  328. package/dist/types/excalidraw/components/PenModeButton.d.ts +2 -5
  329. package/dist/types/excalidraw/components/Popover.d.ts +1 -3
  330. package/dist/types/excalidraw/components/PropertiesPopover.d.ts +1 -1
  331. package/dist/types/excalidraw/components/{ButtonIcon.d.ts → RadioButton.d.ts} +2 -5
  332. package/dist/types/excalidraw/components/Range.d.ts +10 -4
  333. package/dist/types/excalidraw/components/SVGLayer.d.ts +1 -1
  334. package/dist/types/excalidraw/components/SearchMenu.d.ts +1 -1
  335. package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +1 -1
  336. package/dist/types/excalidraw/components/Stats/Angle.d.ts +2 -2
  337. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +2 -2
  338. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +2 -2
  339. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +2 -2
  340. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +2 -2
  341. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +2 -2
  342. package/dist/types/excalidraw/components/Stats/Position.d.ts +3 -3
  343. package/dist/types/excalidraw/components/Stats/utils.d.ts +1 -1
  344. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatInterface.d.ts +2 -6
  345. package/dist/types/excalidraw/components/TTDDialog/Chat/TTDChatPanel.d.ts +2 -1
  346. package/dist/types/excalidraw/components/TTDDialog/CodeMirrorEditor.d.ts +11 -0
  347. package/dist/types/excalidraw/components/TTDDialog/TTDContext.d.ts +4 -4
  348. package/dist/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +11 -7
  349. package/dist/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +3 -3
  350. package/dist/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +4 -1
  351. package/dist/types/excalidraw/components/TTDDialog/TTDWelcomeMessage.d.ts +1 -0
  352. package/dist/types/excalidraw/components/TTDDialog/TextToDiagram.d.ts +2 -1
  353. package/dist/types/excalidraw/components/TTDDialog/mermaid-lang-lite.d.ts +2 -0
  354. package/dist/types/excalidraw/components/TTDDialog/types.d.ts +4 -0
  355. package/dist/types/excalidraw/components/TTDDialog/useTTDChatStorage.d.ts +3 -3
  356. package/dist/types/excalidraw/components/TTDDialog/utils/TTDStreamFetch.d.ts +2 -1
  357. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidAutoFix.d.ts +1 -0
  358. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidError.d.ts +10 -0
  359. package/dist/types/excalidraw/components/Toast.d.ts +8 -4
  360. package/dist/types/excalidraw/components/ToolPopover.d.ts +3 -6
  361. package/dist/types/excalidraw/components/Toolbar.d.ts +11 -0
  362. package/dist/types/excalidraw/components/Tools.d.ts +146 -0
  363. package/dist/types/excalidraw/components/UserList.d.ts +3 -2
  364. package/dist/types/excalidraw/components/ViewportStatusFrame/ViewportStatusFrame.d.ts +11 -0
  365. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +4 -1
  366. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +1 -0
  367. package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +1 -1
  368. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +30 -16
  369. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +3 -2
  370. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +11 -12
  371. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCheckbox.d.ts +5 -0
  372. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +2 -1
  373. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +2 -1
  374. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSub.d.ts +23 -0
  375. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubContent.d.ts +8 -0
  376. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubTrigger.d.ts +12 -0
  377. package/dist/types/excalidraw/components/dropdownMenu/common.d.ts +1 -1
  378. package/dist/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +2 -0
  379. package/dist/types/excalidraw/components/footer/Footer.d.ts +3 -1
  380. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +2 -2
  381. package/dist/types/excalidraw/components/icons.d.ts +29 -10
  382. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +24 -3
  383. package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +23 -14
  384. package/dist/types/excalidraw/components/positionElementBesideCursor.d.ts +26 -0
  385. package/dist/types/excalidraw/components/shapeActionPredicates.d.ts +39 -0
  386. package/dist/types/excalidraw/data/blob.d.ts +179 -160
  387. package/dist/types/excalidraw/data/filesystem.d.ts +3 -5
  388. package/dist/types/excalidraw/data/index.d.ts +6 -7
  389. package/dist/types/excalidraw/data/json.d.ts +98 -80
  390. package/dist/types/excalidraw/data/library.d.ts +1 -1
  391. package/dist/types/excalidraw/data/resave.d.ts +7 -2
  392. package/dist/types/excalidraw/data/restore.d.ts +1 -1
  393. package/dist/types/excalidraw/drawShapeTrail.d.ts +16 -0
  394. package/dist/types/excalidraw/eraser/index.d.ts +2 -3
  395. package/dist/types/excalidraw/hooks/useAppStateValue.d.ts +29 -0
  396. package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +1 -1
  397. package/dist/types/excalidraw/index.d.ts +35 -9
  398. package/dist/types/excalidraw/{laser-trails.d.ts → laserTrails.d.ts} +5 -7
  399. package/dist/types/excalidraw/lasso/index.d.ts +2 -3
  400. package/dist/types/excalidraw/lasso/utils.d.ts +2 -0
  401. package/dist/types/excalidraw/renderer/animation.d.ts +5 -1
  402. package/dist/types/excalidraw/renderer/interactiveScene.d.ts +1 -3
  403. package/dist/types/excalidraw/scene/Renderer.d.ts +426 -19
  404. package/dist/types/excalidraw/scene/export.d.ts +3 -3
  405. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  406. package/dist/types/excalidraw/scene/types.d.ts +4 -4
  407. package/dist/types/excalidraw/snapping.d.ts +7 -7
  408. package/dist/types/excalidraw/textAutoResizeHandle.d.ts +15 -0
  409. package/dist/types/excalidraw/types.d.ts +512 -77
  410. package/dist/types/excalidraw/viewport.d.ts +275 -0
  411. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +6 -3
  412. package/dist/types/fractional-indexing/src/index.d.ts +29 -0
  413. package/dist/types/laser-pointer/src/index.d.ts +2 -0
  414. package/dist/types/laser-pointer/src/math.d.ts +16 -0
  415. package/dist/types/laser-pointer/src/simplify.d.ts +2 -0
  416. package/dist/types/laser-pointer/src/state.d.ts +36 -0
  417. package/dist/types/math/src/constants.d.ts +0 -1
  418. package/dist/types/math/src/curve.d.ts +4 -1
  419. package/dist/types/math/src/index.d.ts +1 -0
  420. package/dist/types/math/src/pca.d.ts +79 -0
  421. package/dist/types/math/src/point.d.ts +8 -2
  422. package/dist/types/math/src/polygon.d.ts +25 -1
  423. package/dist/types/math/src/types.d.ts +25 -1
  424. package/package.json +9 -6
  425. package/dist/dev/chunk-DJHLEOOZ.js +0 -69
  426. package/dist/dev/chunk-DJHLEOOZ.js.map +0 -7
  427. package/dist/dev/chunk-KB3DXHSJ.js.map +0 -7
  428. package/dist/dev/chunk-XIXZ3HJO.js.map +0 -7
  429. package/dist/dev/locales/ar-SA-JK5MQ7TT.js.map +0 -7
  430. package/dist/dev/locales/az-AZ-2PAD62G4.js.map +0 -7
  431. package/dist/dev/locales/bg-BG-HUKVYCRK.js.map +0 -7
  432. package/dist/dev/locales/bn-BD-V2CQI46P.js.map +0 -7
  433. package/dist/dev/locales/bn-IN-MBEO4C3J.js.map +0 -7
  434. package/dist/dev/locales/ca-ES-KWEKW4C3.js.map +0 -7
  435. package/dist/dev/locales/cs-CZ-W5AHZB5H.js.map +0 -7
  436. package/dist/dev/locales/da-DK-ITTM6YM4.js.map +0 -7
  437. package/dist/dev/locales/de-CH-OAWPDQFJ.js.map +0 -7
  438. package/dist/dev/locales/de-DE-ZRDYEPMS.js.map +0 -7
  439. package/dist/dev/locales/el-GR-QXASZLPE.js.map +0 -7
  440. package/dist/dev/locales/es-ES-VLQBB7FJ.js.map +0 -7
  441. package/dist/dev/locales/eu-ES-TF2DGTZU.js.map +0 -7
  442. package/dist/dev/locales/fa-IR-ITKFQ7QV.js.map +0 -7
  443. package/dist/dev/locales/fi-FI-UWZRVXFI.js.map +0 -7
  444. package/dist/dev/locales/fr-FR-A72LKGCO.js.map +0 -7
  445. package/dist/dev/locales/gl-ES-2QCVIBFP.js.map +0 -7
  446. package/dist/dev/locales/he-IL-WJNUHU26.js.map +0 -7
  447. package/dist/dev/locales/hi-IN-XGMO235V.js.map +0 -7
  448. package/dist/dev/locales/hu-HU-37FDQFIS.js.map +0 -7
  449. package/dist/dev/locales/id-ID-EJIDCO4E.js.map +0 -7
  450. package/dist/dev/locales/it-IT-X34PIOJ2.js.map +0 -7
  451. package/dist/dev/locales/ja-JP-37FC23PR.js.map +0 -7
  452. package/dist/dev/locales/kaa-7ZYDFVKA.js.map +0 -7
  453. package/dist/dev/locales/kab-KAB-MILWXBA6.js.map +0 -7
  454. package/dist/dev/locales/kk-KZ-7BWTPIAV.js.map +0 -7
  455. package/dist/dev/locales/km-KH-BV4P2KSZ.js.map +0 -7
  456. package/dist/dev/locales/ko-KR-TSXE5P7B.js.map +0 -7
  457. package/dist/dev/locales/ku-TR-ASSXNN3U.js.map +0 -7
  458. package/dist/dev/locales/lt-LT-G7RZYQQU.js.map +0 -7
  459. package/dist/dev/locales/lv-LV-DXNPBJZU.js.map +0 -7
  460. package/dist/dev/locales/mr-IN-7F2ZCTCF.js.map +0 -7
  461. package/dist/dev/locales/my-MM-NBI3KQGW.js.map +0 -7
  462. package/dist/dev/locales/nb-NO-4DCTQT6L.js.map +0 -7
  463. package/dist/dev/locales/nl-NL-XGZJ7V2V.js.map +0 -7
  464. package/dist/dev/locales/nn-NO-FR534JV5.js.map +0 -7
  465. package/dist/dev/locales/oc-FR-YQCIKZIK.js.map +0 -7
  466. package/dist/dev/locales/pa-IN-UM43JGD2.js.map +0 -7
  467. package/dist/dev/locales/pl-PL-2UGKA6HK.js.map +0 -7
  468. package/dist/dev/locales/pt-BR-H23QFYE3.js.map +0 -7
  469. package/dist/dev/locales/pt-PT-RHKJH5I5.js.map +0 -7
  470. package/dist/dev/locales/ro-RO-IIFONL3T.js.map +0 -7
  471. package/dist/dev/locales/ru-RU-QEP6D7GK.js.map +0 -7
  472. package/dist/dev/locales/si-LK-LZYJQLHF.js.map +0 -7
  473. package/dist/dev/locales/sk-SK-RWC6UWGY.js.map +0 -7
  474. package/dist/dev/locales/sl-SI-QJT2CAUO.js.map +0 -7
  475. package/dist/dev/locales/sv-SE-3MAT3NDX.js.map +0 -7
  476. package/dist/dev/locales/ta-IN-J7XOYF2T.js.map +0 -7
  477. package/dist/dev/locales/th-TH-2OI52EOQ.js.map +0 -7
  478. package/dist/dev/locales/tr-TR-G7TAUHUI.js.map +0 -7
  479. package/dist/dev/locales/uk-UA-IVSVBJIG.js.map +0 -7
  480. package/dist/dev/locales/uz-UZ-KCVDUVDE.js.map +0 -7
  481. package/dist/dev/locales/vi-VN-KBZAVWP5.js.map +0 -7
  482. package/dist/dev/locales/zh-CN-IS26RG2D.js.map +0 -7
  483. package/dist/dev/locales/zh-HK-KBWQ6SJC.js.map +0 -7
  484. package/dist/dev/locales/zh-TW-JKJWJQ4J.js.map +0 -7
  485. package/dist/prod/chunk-2INXXNZN.js +0 -12
  486. package/dist/prod/chunk-7ECCIQPE.js +0 -33
  487. package/dist/prod/chunk-AJI3LATG.js +0 -1
  488. package/dist/prod/data/image-E5KTZOPE.js +0 -1
  489. package/dist/prod/locales/ar-SA-IYHKZRSE.js +0 -8
  490. package/dist/prod/locales/az-AZ-WL5GYRHK.js +0 -1
  491. package/dist/prod/locales/bg-BG-FXZYTRPD.js +0 -5
  492. package/dist/prod/locales/bn-BD-KO6YL5G2.js +0 -3
  493. package/dist/prod/locales/bn-IN-PC6JHKYB.js +0 -3
  494. package/dist/prod/locales/ca-ES-AREX5NEO.js +0 -8
  495. package/dist/prod/locales/cs-CZ-HXAZMFYH.js +0 -7
  496. package/dist/prod/locales/da-DK-5X7ZLFU3.js +0 -2
  497. package/dist/prod/locales/de-CH-76ZNVSOF.js +0 -7
  498. package/dist/prod/locales/de-DE-G3JVZ4MQ.js +0 -7
  499. package/dist/prod/locales/el-GR-4AZTZGY6.js +0 -7
  500. package/dist/prod/locales/en-YGAMZJ7C.js +0 -1
  501. package/dist/prod/locales/es-ES-ART7BI3G.js +0 -7
  502. package/dist/prod/locales/eu-ES-BIF4XBMT.js +0 -7
  503. package/dist/prod/locales/fa-IR-D4HHKAAI.js +0 -9
  504. package/dist/prod/locales/fi-FI-O35ZY7UI.js +0 -6
  505. package/dist/prod/locales/fr-FR-XEFNCM4I.js +0 -12
  506. package/dist/prod/locales/gl-ES-U4NYM3X5.js +0 -6
  507. package/dist/prod/locales/he-IL-656ABAVQ.js +0 -8
  508. package/dist/prod/locales/hi-IN-Z55GAFFR.js +0 -3
  509. package/dist/prod/locales/hu-HU-UJ62DVIW.js +0 -3
  510. package/dist/prod/locales/id-ID-FLZFU3OO.js +0 -8
  511. package/dist/prod/locales/it-IT-GIGIGIBJ.js +0 -12
  512. package/dist/prod/locales/ja-JP-43VXGDWI.js +0 -7
  513. package/dist/prod/locales/kaa-L3IMSDYL.js +0 -1
  514. package/dist/prod/locales/kab-KAB-XKPWJLNL.js +0 -4
  515. package/dist/prod/locales/kk-KZ-SXPDDY2H.js +0 -1
  516. package/dist/prod/locales/km-KH-DOS4CPGC.js +0 -7
  517. package/dist/prod/locales/ko-KR-BGC6VCY4.js +0 -5
  518. package/dist/prod/locales/ku-TR-J7IUITIA.js +0 -6
  519. package/dist/prod/locales/lt-LT-AC3LV5KG.js +0 -3
  520. package/dist/prod/locales/lv-LV-I6AY7QG2.js +0 -4
  521. package/dist/prod/locales/mr-IN-5SP4HV5B.js +0 -9
  522. package/dist/prod/locales/my-MM-S7ECRBYZ.js +0 -1
  523. package/dist/prod/locales/nb-NO-6PNHTF4R.js +0 -8
  524. package/dist/prod/locales/nl-NL-R4C4SUIG.js +0 -13
  525. package/dist/prod/locales/nn-NO-3TFXTM7Y.js +0 -4
  526. package/dist/prod/locales/oc-FR-IK6GIE7H.js +0 -4
  527. package/dist/prod/locales/pa-IN-YAKHYJET.js +0 -4
  528. package/dist/prod/locales/percentages-OL6W367U.js +0 -1
  529. package/dist/prod/locales/pl-PL-BIY22ZWU.js +0 -12
  530. package/dist/prod/locales/pt-BR-Q23NUPD6.js +0 -6
  531. package/dist/prod/locales/pt-PT-LOPEJLPJ.js +0 -8
  532. package/dist/prod/locales/ro-RO-W3D2ZATV.js +0 -12
  533. package/dist/prod/locales/ru-RU-DCTW7QSH.js +0 -10
  534. package/dist/prod/locales/si-LK-FYRRHO3C.js +0 -1
  535. package/dist/prod/locales/sk-SK-MC7UOHQO.js +0 -7
  536. package/dist/prod/locales/sl-SI-L6B6HFY5.js +0 -6
  537. package/dist/prod/locales/sv-SE-KMY6L2BA.js +0 -8
  538. package/dist/prod/locales/ta-IN-ZQCYE2JK.js +0 -6
  539. package/dist/prod/locales/th-TH-WS7ECBAV.js +0 -1
  540. package/dist/prod/locales/tr-TR-S5FI7JRW.js +0 -4
  541. package/dist/prod/locales/uk-UA-4EZUWUSQ.js +0 -6
  542. package/dist/prod/locales/uz-UZ-OKHL6AFA.js +0 -1
  543. package/dist/prod/locales/vi-VN-K34TWHF7.js +0 -7
  544. package/dist/prod/locales/zh-CN-JE4UZWNO.js +0 -11
  545. package/dist/prod/locales/zh-HK-RM35YDXX.js +0 -1
  546. package/dist/prod/locales/zh-TW-ONGLV6Y5.js +0 -9
  547. package/dist/types/excalidraw/animation-frame-handler.d.ts +0 -16
  548. package/dist/types/excalidraw/charts.d.ts +0 -27
  549. package/dist/types/excalidraw/components/FollowMode/FollowMode.d.ts +0 -10
  550. package/dist/types/excalidraw/components/HandButton.d.ts +0 -10
  551. package/dist/types/excalidraw/components/MobileToolBar.d.ts +0 -10
  552. package/dist/types/excalidraw/components/shapes.d.ts +0 -190
  553. package/dist/types/excalidraw/cursor.d.ts +0 -5
  554. package/dist/types/excalidraw/scene/scroll.d.ts +0 -18
  555. package/dist/types/excalidraw/scene/scrollConstraints.d.ts +0 -46
  556. package/dist/types/excalidraw/scene/zoom.d.ts +0 -12
  557. package/dist/types/utils/src/bbox.d.ts +0 -9
  558. package/dist/types/utils/src/index.d.ts +0 -4
  559. package/dist/types/utils/src/withinBounds.d.ts +0 -19
  560. /package/dist/dev/{chunk-VHBP2L6P.js.map → chunk-GLSDDV5C.js.map} +0 -0
  561. /package/dist/dev/data/{image-YTAF2QAV.js.map → image-LSHTDYDI.js.map} +0 -0
  562. /package/dist/dev/locales/{en-RTISGYJB.js.map → en-JNOPSYVP.js.map} +0 -0
  563. /package/dist/dev/locales/{percentages-OGWD7R2K.js.map → percentages-DKKGPYTW.js.map} +0 -0
@@ -13,21 +13,17 @@
13
13
  .excalidraw .ToolIcon__hidden {
14
14
  display: none !important;
15
15
  }
16
- .excalidraw .ToolIcon.fillable .ToolIcon_type_radio:checked + .ToolIcon__icon,
17
- .excalidraw .ToolIcon.fillable .ToolIcon_type_checkbox:checked + .ToolIcon__icon {
16
+ .excalidraw .ToolIcon.fillable.ToolIcon_type_toggle.ToolIcon--checked .ToolIcon__icon {
18
17
  --icon-fill-color: var(--color-on-primary-container);
19
18
  }
20
- .excalidraw .ToolIcon.fillable .ToolIcon_type_radio:checked + .ToolIcon__icon svg,
21
- .excalidraw .ToolIcon.fillable .ToolIcon_type_checkbox:checked + .ToolIcon__icon svg {
19
+ .excalidraw .ToolIcon.fillable.ToolIcon_type_toggle.ToolIcon--checked .ToolIcon__icon svg {
22
20
  fill: var(--icon-fill-color);
23
21
  }
24
- .excalidraw .ToolIcon .ToolIcon_type_radio:checked + .ToolIcon__icon,
25
- .excalidraw .ToolIcon .ToolIcon_type_checkbox:checked + .ToolIcon__icon {
22
+ .excalidraw .ToolIcon.ToolIcon_type_toggle.ToolIcon--checked .ToolIcon__icon {
26
23
  background: var(--color-surface-primary-container);
27
24
  --keybinding-color: var(--color-on-primary-container);
28
25
  }
29
- .excalidraw .ToolIcon .ToolIcon_type_radio:checked + .ToolIcon__icon svg,
30
- .excalidraw .ToolIcon .ToolIcon_type_checkbox:checked + .ToolIcon__icon svg {
26
+ .excalidraw .ToolIcon.ToolIcon_type_toggle.ToolIcon--checked .ToolIcon__icon svg {
31
27
  color: var(--color-on-primary-container);
32
28
  }
33
29
  .excalidraw .ToolIcon .ToolIcon__keybinding {
@@ -51,6 +47,22 @@
51
47
  .excalidraw .ToolIcon .ToolIcon__icon[aria-disabled=true] svg {
52
48
  color: var(--color-disabled);
53
49
  }
50
+ .excalidraw .ToolIcon.ToolIcon_type_toggle:disabled {
51
+ cursor: default;
52
+ --keybinding-color: var(--color-disabled);
53
+ }
54
+ .excalidraw .ToolIcon.ToolIcon_type_toggle:disabled .ToolIcon__icon svg {
55
+ color: var(--color-disabled);
56
+ }
57
+ .excalidraw .ToolIcon.ToolIcon_type_toggle:disabled .ToolIcon__icon:hover,
58
+ .excalidraw .ToolIcon.ToolIcon_type_toggle:disabled .ToolIcon__icon:active {
59
+ background: initial;
60
+ border: none;
61
+ }
62
+ .excalidraw .ToolIcon.ToolIcon_type_toggle:disabled .ToolIcon__icon:hover svg,
63
+ .excalidraw .ToolIcon.ToolIcon_type_toggle:disabled .ToolIcon__icon:active svg {
64
+ color: var(--color-disabled);
65
+ }
54
66
  .excalidraw .ToolIcon--plain {
55
67
  background-color: transparent;
56
68
  }
@@ -58,11 +70,18 @@
58
70
  width: 2rem;
59
71
  height: 2rem;
60
72
  }
61
- .excalidraw .ToolIcon_type_radio,
62
- .excalidraw .ToolIcon_type_checkbox {
63
- position: absolute;
64
- opacity: 0;
65
- pointer-events: none;
73
+ .excalidraw .ToolIcon_type_toggle {
74
+ appearance: none;
75
+ margin: 0;
76
+ padding: 0;
77
+ border: none;
78
+ background-color: transparent;
79
+ font: inherit;
80
+ color: inherit;
81
+ text-align: inherit;
82
+ }
83
+ .excalidraw .ToolIcon_type_toggle:focus-visible {
84
+ box-shadow: 0 0 0 2px var(--focus-highlight-color);
66
85
  }
67
86
  .excalidraw .ToolIcon__icon {
68
87
  box-sizing: border-box;
@@ -111,14 +130,6 @@
111
130
  .excalidraw .Modal .ToolIcon_type_button:focus-visible {
112
131
  box-shadow: 0 0 0 2px var(--focus-highlight-color);
113
132
  }
114
- .excalidraw .ToolIcon_type_button.ToolIcon--selected,
115
- .excalidraw .Modal .ToolIcon_type_button.ToolIcon--selected {
116
- background-color: var(--button-gray-2);
117
- }
118
- .excalidraw .ToolIcon_type_button.ToolIcon--selected:active,
119
- .excalidraw .Modal .ToolIcon_type_button.ToolIcon--selected:active {
120
- background-color: var(--button-gray-3);
121
- }
122
133
  .excalidraw .ToolIcon_type_button:active,
123
134
  .excalidraw .Modal .ToolIcon_type_button:active {
124
135
  background-color: var(--button-gray-3);
@@ -250,320 +261,12 @@
250
261
  }
251
262
  }
252
263
 
253
- /* components/ButtonIcon.scss */
254
- .excalidraw,
255
- .exc-style {
256
- --theme-filter: none;
257
- --button-destructive-bg-color: #ffe3e3;
258
- --button-destructive-color: #c92a2a;
259
- --button-gray-1: #e9ecef;
260
- --button-gray-2: #ced4da;
261
- --button-gray-3: #adb5bd;
262
- --mobile-action-button-bg: rgba(255, 255, 255, 0.35);
263
- --mobile-color-border: var(--default-border-color);
264
- --button-special-active-bg-color: #ebfbee;
265
- --dialog-border-color: var(--color-gray-20);
266
- --dropdown-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="292.4" height="292.4" viewBox="0 0 292 292"><path d="M287 197L159 69c-4-3-8-5-13-5s-9 2-13 5L5 197c-3 4-5 8-5 13s2 9 5 13c4 4 8 5 13 5h256c5 0 9-1 13-5s5-8 5-13-1-9-5-13z"/></svg>');
267
- --focus-highlight-color: #a5d8ff;
268
- --icon-fill-color: var(--color-on-surface);
269
- --icon-green-fill-color: #2b8a3e;
270
- --default-bg-color: #fff;
271
- --input-bg-color: #fff;
272
- --input-border-color: #ced4da;
273
- --input-hover-bg-color: #f1f3f5;
274
- --input-label-color: #495057;
275
- --island-bg-color: #ffffff;
276
- --island-bg-color-alt: #fff;
277
- --keybinding-color: var(--color-gray-40);
278
- --link-color: #1c7ed6;
279
- --link-color-hover: #1971c2;
280
- --link-color-active: #a5d8ff;
281
- --overlay-bg-color: rgba(255, 255, 255, 0.88);
282
- --popup-bg-color: var(--island-bg-color);
283
- --popup-secondary-bg-color: #f1f3f5;
284
- --popup-text-color: #000;
285
- --popup-text-inverted-color: #fff;
286
- --select-highlight-color: #339af0;
287
- --shadow-island:
288
- 0px 0px 0.9310142993927002px 0px rgba(0, 0, 0, 0.17),
289
- 0px 0px 3.1270833015441895px 0px rgba(0, 0, 0, 0.08),
290
- 0px 7px 14px 0px rgba(0, 0, 0, 0.05);
291
- --button-hover-bg: var(--color-surface-high);
292
- --button-active-bg: var(--color-surface-high);
293
- --button-active-border: var(--color-brand-active);
294
- --default-border-color: var(--color-surface-high);
295
- --default-button-size: 2rem;
296
- --default-icon-size: 1rem;
297
- --lg-button-size: 2.25rem;
298
- --lg-icon-size: 1rem;
299
- --editor-container-padding: 1rem;
300
- --mobile-action-button-size: 2rem;
301
- --scrollbar-thumb: var(--button-gray-2);
302
- --scrollbar-thumb-hover: var(--button-gray-3);
303
- --color-slider-track: hsl(240, 100%, 90%);
304
- --color-slider-thumb: var(--color-gray-80);
305
- --modal-shadow:
306
- 0px 100px 80px rgba(0, 0, 0, 0.07),
307
- 0px 41.7776px 33.4221px rgba(0, 0, 0, 0.0503198),
308
- 0px 22.3363px 17.869px rgba(0, 0, 0, 0.0417275),
309
- 0px 12.5216px 10.0172px rgba(0, 0, 0, 0.035),
310
- 0px 6.6501px 5.32008px rgba(0, 0, 0, 0.0282725),
311
- 0px 2.76726px 2.21381px rgba(0, 0, 0, 0.0196802);
312
- --avatar-border-color: var(--color-gray-20);
313
- --sidebar-shadow:
314
- 0px 100px 80px rgba(0, 0, 0, 0.07),
315
- 0px 41.7776px 33.4221px rgba(0, 0, 0, 0.0503198),
316
- 0px 22.3363px 17.869px rgba(0, 0, 0, 0.0417275),
317
- 0px 12.5216px 10.0172px rgba(0, 0, 0, 0.035),
318
- 0px 6.6501px 5.32008px rgba(0, 0, 0, 0.0282725),
319
- 0px 2.76726px 2.21381px rgba(0, 0, 0, 0.0196802);
320
- --sidebar-border-color: var(--color-surface-high);
321
- --sidebar-bg-color: var(--island-bg-color);
322
- --library-dropdown-shadow:
323
- 0px 15px 6px rgba(0, 0, 0, 0.01),
324
- 0px 8px 5px rgba(0, 0, 0, 0.05),
325
- 0px 4px 4px rgba(0, 0, 0, 0.09),
326
- 0px 1px 2px rgba(0, 0, 0, 0.1),
327
- 0px 0px 0px rgba(0, 0, 0, 0.1);
328
- --chat-msg-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
329
- --space-factor: 0.25rem;
330
- --text-primary-color: var(--color-on-surface);
331
- --color-selection: #6965db;
332
- --color-icon-white: #fff;
333
- --color-primary: #6965db;
334
- --color-primary-darker: #5b57d1;
335
- --color-primary-darkest: #4a47b1;
336
- --color-primary-light: #e3e2fe;
337
- --color-primary-light-darker: #d7d5ff;
338
- --color-primary-hover: #5753d0;
339
- --color-gray-10: #f5f5f5;
340
- --color-gray-20: #ebebeb;
341
- --color-gray-30: #d6d6d6;
342
- --color-gray-40: #b8b8b8;
343
- --color-gray-50: #999999;
344
- --color-gray-60: #7a7a7a;
345
- --color-gray-70: #5c5c5c;
346
- --color-gray-80: #3d3d3d;
347
- --color-gray-85: #242424;
348
- --color-gray-90: #1e1e1e;
349
- --color-gray-100: #121212;
350
- --color-disabled: var(--color-gray-40);
351
- --color-warning: #fceeca;
352
- --color-warning-dark: #f5c354;
353
- --color-warning-darker: #f3ab2c;
354
- --color-warning-darkest: #ec8b14;
355
- --color-text-warning: var(--text-primary-color);
356
- --color-danger: #db6965;
357
- --color-danger-dark: #db6965;
358
- --color-danger-darker: #d65550;
359
- --color-danger-darkest: #d1413c;
360
- --color-danger-text: black;
361
- --color-danger-background: #fff0f0;
362
- --color-danger-icon-background: #ffdad6;
363
- --color-danger-color: #700000;
364
- --color-danger-icon-color: #700000;
365
- --color-warning-background: var(--color-warning);
366
- --color-warning-icon-background: var(--color-warning-dark);
367
- --color-warning-color: var(--text-primary-color);
368
- --color-warning-icon-color: var(--text-primary-color);
369
- --color-muted: var(--color-gray-30);
370
- --color-muted-darker: var(--color-gray-60);
371
- --color-muted-darkest: var(--color-gray-100);
372
- --color-muted-background: var(--color-gray-80);
373
- --color-muted-background-darker: var(--color-gray-100);
374
- --color-promo: var(--color-primary);
375
- --color-success: #cafccc;
376
- --color-success-darker: #bafabc;
377
- --color-success-darkest: #a5eba8;
378
- --color-success-text: #268029;
379
- --color-success-contrast: #65bb6a;
380
- --color-success-contrast-hover: #6bcf70;
381
- --color-success-contrast-active: #6edf74;
382
- --color-logo-icon: var(--color-primary);
383
- --color-logo-text: #190064;
384
- --border-radius-md: 0.375rem;
385
- --border-radius-lg: 0.5rem;
386
- --color-surface-high: #f1f0ff;
387
- --color-surface-mid: #f6f6f9;
388
- --color-surface-low: #ececf4;
389
- --color-surface-lowest: #ffffff;
390
- --color-on-surface: #1b1b1f;
391
- --color-brand-hover: #5753d0;
392
- --color-on-primary-container: #030064;
393
- --color-surface-primary-container: #e0dfff;
394
- --color-brand-active: #4440bf;
395
- --color-border-outline: #767680;
396
- --color-border-outline-variant: #c5c5d0;
397
- --color-surface-primary-container: #e0dfff;
398
- --color-badge: #0b6513;
399
- --background-color-badge: #d3ffd2;
400
- }
401
- .excalidraw--mobile.excalidraw,
402
- .exc-style {
403
- --editor-container-padding: 0.75rem;
404
- }
405
- @media screen and (min-device-width: 1921px) {
406
- .excalidraw,
407
- .exc-style {
408
- --lg-button-size: 2.5rem;
409
- --lg-icon-size: 1.25rem;
410
- --default-button-size: 2.25rem;
411
- --default-icon-size: 1.25rem;
412
- }
413
- }
414
- .excalidraw.theme--dark.theme--dark-background-none,
415
- .dark .excalidraw.theme--dark-background-none,
416
- .exc-style.theme--dark.theme--dark-background-none,
417
- .dark .exc-style.theme--dark-background-none {
418
- background: none;
419
- }
420
- .excalidraw.theme--dark,
421
- .dark .excalidraw,
422
- .exc-style.theme--dark,
423
- .dark .exc-style {
424
- --theme-filter: invert(93%) hue-rotate(180deg);
425
- --button-destructive-bg-color: #5a0000;
426
- --button-destructive-color: #ffa8a8;
427
- --button-gray-1: #363636;
428
- --button-gray-2: #272727;
429
- --button-gray-3: #222;
430
- --mobile-action-button-bg: var(--island-bg-color);
431
- --mobile-color-border: rgba(255, 255, 255, 0.85);
432
- --button-special-active-bg-color: #204624;
433
- --dialog-border-color: var(--color-gray-80);
434
- --dropdown-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="292.4" height="292.4" viewBox="0 0 292 292"><path fill="%23ced4da" d="M287 197L159 69c-4-3-8-5-13-5s-9 2-13 5L5 197c-3 4-5 8-5 13s2 9 5 13c4 4 8 5 13 5h256c5 0 9-1 13-5s5-8 5-13-1-9-5-13z"/></svg>');
435
- --focus-highlight-color: #228be6;
436
- --icon-green-fill-color: #69db7c;
437
- --default-bg-color: #121212;
438
- --input-bg-color: #121212;
439
- --input-border-color: #2e2e2e;
440
- --input-hover-bg-color: #181818;
441
- --input-label-color: #e9ecef;
442
- --island-bg-color: #232329;
443
- --island-bg-color-alt: hsl(240, 12%, 12%);
444
- --keybinding-color: var(--color-gray-60);
445
- --link-color: #4dabf7;
446
- --overlay-bg-color: rgba(52, 58, 64, 0.12);
447
- --popup-secondary-bg-color: #222;
448
- --popup-text-color: #ced4da;
449
- --popup-text-inverted-color: #2c2c2c;
450
- --select-highlight-color: #4dabf7;
451
- --shadow-island:
452
- 0px 0px 0.9310142993927002px 0px rgba(0, 0, 0, 0.17),
453
- 0px 0px 3.1270833015441895px 0px rgba(0, 0, 0, 0.08),
454
- 0px 7px 14px 0px rgba(0, 0, 0, 0.05);
455
- --modal-shadow:
456
- 0px 100px 80px rgba(0, 0, 0, 0.07),
457
- 0px 41.7776px 33.4221px rgba(0, 0, 0, 0.0503198),
458
- 0px 22.3363px 17.869px rgba(0, 0, 0, 0.0417275),
459
- 0px 12.5216px 10.0172px rgba(0, 0, 0, 0.035),
460
- 0px 6.6501px 5.32008px rgba(0, 0, 0, 0.0282725),
461
- 0px 2.76726px 2.21381px rgba(0, 0, 0, 0.0196802);
462
- --avatar-border-color: var(--color-gray-85);
463
- --scrollbar-thumb: #343a40;
464
- --scrollbar-thumb-hover: #495057;
465
- --color-slider-track: hsl(244, 23%, 39%);
466
- --color-selection: #3530c4;
467
- --color-icon-white: var(--color-gray-90);
468
- --color-primary: #a8a5ff;
469
- --color-primary-darker: #b2aeff;
470
- --color-primary-darkest: #beb9ff;
471
- --color-primary-light: #4f4d6f;
472
- --color-primary-light-darker: #43415e;
473
- --color-primary-hover: #bbb8ff;
474
- --color-disabled: var(--color-gray-70);
475
- --color-text-warning: var(--color-gray-80);
476
- --color-danger: #ffa8a5;
477
- --color-danger-dark: #672120;
478
- --color-danger-darker: #8f2625;
479
- --color-danger-darkest: #ac2b29;
480
- --color-danger-text: #fbcbcc;
481
- --color-danger-background: #fbcbcc;
482
- --color-danger-icon-background: #672120;
483
- --color-danger-color: #261919;
484
- --color-danger-icon-color: #fbcbcc;
485
- --color-warning-background: var(--color-warning);
486
- --color-warning-icon-background: var(--color-warning-dark);
487
- --color-warning-color: var(--color-gray-80);
488
- --color-warning-icon-color: var(--color-gray-80);
489
- --color-muted: var(--color-gray-80);
490
- --color-muted-darker: var(--color-gray-60);
491
- --color-muted-darkest: var(--color-gray-20);
492
- --color-muted-background: var(--color-gray-40);
493
- --color-muted-background-darker: var(--color-gray-20);
494
- --color-logo-text: #e2dfff;
495
- --color-surface-high: #2e2d39;
496
- --color-surface-low: hsl(240, 8%, 15%);
497
- --color-surface-mid: hsl(240 6% 10%);
498
- --color-surface-lowest: hsl(0, 0%, 7%);
499
- --color-on-surface: #e3e3e8;
500
- --color-brand-hover: #bbb8ff;
501
- --color-on-primary-container: #e0dfff;
502
- --color-surface-primary-container: #403e6a;
503
- --color-brand-active: #d0ccff;
504
- --color-border-outline: #8e8d9c;
505
- --color-border-outline-variant: #46464f;
506
- --color-surface-primary-container: #403e6a;
507
- }
508
- .excalidraw button.standalone {
509
- display: flex;
510
- justify-content: center;
511
- align-items: center;
512
- padding: 0.625rem;
513
- width: var(--button-width, var(--default-button-size));
514
- height: var(--button-height, var(--default-button-size));
515
- box-sizing: border-box;
516
- border-width: 1px;
517
- border-style: solid;
518
- border-color: var(--button-border, var(--default-border-color));
519
- border-radius: var(--border-radius-lg);
520
- cursor: pointer;
521
- background-color: var(--button-bg, var(--island-bg-color));
522
- color: var(--button-color, var(--color-on-surface));
523
- font-family: var(--ui-font);
524
- }
525
- .excalidraw button.standalone svg {
526
- width: var(--button-width, var(--lg-icon-size));
527
- height: var(--button-height, var(--lg-icon-size));
528
- }
529
- .excalidraw button.standalone:hover {
530
- background-color: var(--button-hover-bg, var(--island-bg-color));
531
- border-color: var(--button-hover-border, var(--button-border, var(--default-border-color)));
532
- color: var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)));
533
- }
534
- .excalidraw button.standalone:active {
535
- background-color: var(--button-active-bg, var(--island-bg-color));
536
- border-color: var(--button-active-border, var(--color-primary-darkest));
537
- }
538
- .excalidraw button.standalone.active {
539
- background-color: var(--button-selected-bg, var(--color-surface-primary-container));
540
- border-color: var(--button-selected-border, var(--color-surface-primary-container));
541
- }
542
- .excalidraw button.standalone.active:hover {
543
- background-color: var(--button-selected-hover-bg, var(--color-surface-primary-container));
544
- }
545
- .excalidraw button.standalone.active svg {
546
- color: var(--button-color, var(--color-on-primary-container));
547
- }
548
- .excalidraw--mobile.excalidraw button.standalone {
549
- width: var(--mobile-action-button-size, var(--default-button-size));
550
- height: var(--mobile-action-button-size, var(--default-button-size));
551
- }
552
- .excalidraw button.standalone {
553
- padding: 0;
554
- }
555
- .excalidraw button.standalone svg {
556
- width: var(--default-icon-size);
557
- height: var(--default-icon-size);
558
- }
559
- .excalidraw button.standalone > * {
560
- pointer-events: none;
561
- }
562
-
563
264
  /* components/EyeDropper.scss */
564
265
  .excalidraw .excalidraw-eye-dropper-container,
565
266
  .excalidraw .excalidraw-eye-dropper-backdrop {
566
267
  position: absolute;
268
+ top: 0;
269
+ left: 0;
567
270
  width: 100%;
568
271
  height: 100%;
569
272
  z-index: var(--zIndex-eyeDropperBackdrop);
@@ -577,13 +280,13 @@
577
280
  }
578
281
  .excalidraw .excalidraw-eye-dropper-preview {
579
282
  pointer-events: none;
580
- width: 3rem;
581
- height: 3rem;
582
- position: fixed;
283
+ width: 2rem;
284
+ height: 2rem;
285
+ position: absolute;
583
286
  z-index: var(--zIndex-eyeDropperPreview);
584
- border-radius: 1rem;
585
- border: 1px solid var(--default-border-color);
586
- filter: var(--theme-filter);
287
+ border-radius: 50%;
288
+ border: 1px solid var(--eye-dropper-preview-border-color, #222);
289
+ box-shadow: 2px 2px 0 0 rgba(73, 73, 73, 0.4862745098);
587
290
  }
588
291
  .excalidraw .excalidraw-eye-dropper-trigger {
589
292
  width: 1.25rem;
@@ -612,13 +315,18 @@
612
315
  border-radius: var(--border-radius-lg);
613
316
  padding: calc(var(--padding) * var(--space-factor));
614
317
  position: relative;
615
- transition: box-shadow 0.5s ease-in-out;
616
318
  }
617
319
  .excalidraw .Island.zen-mode {
618
320
  box-shadow: none;
619
321
  }
620
322
 
621
323
  /* components/ColorPicker/ColorPicker.scss */
324
+ .excalidraw {
325
+ --color-outline: var(--color-gray-20);
326
+ }
327
+ .excalidraw.theme--dark {
328
+ --color-outline: var(--color-gray-80);
329
+ }
622
330
  .excalidraw .focus-visible-none:focus-visible {
623
331
  outline: none !important;
624
332
  }
@@ -632,6 +340,36 @@
632
340
  font-size: 0.75rem;
633
341
  text-align: left;
634
342
  }
343
+ .excalidraw .color-picker__context-menu {
344
+ background: var(--popup-bg-color);
345
+ border-radius: var(--border-radius-lg);
346
+ box-shadow: var(--shadow-island);
347
+ padding: 0.25rem;
348
+ }
349
+ .excalidraw .color-picker__context-menu-item {
350
+ font-size: 0.75rem;
351
+ padding: 0.375rem 0.625rem;
352
+ border-radius: var(--border-radius-md);
353
+ color: var(--text-primary-color);
354
+ cursor: pointer;
355
+ outline: none;
356
+ user-select: none;
357
+ }
358
+ .excalidraw .color-picker__context-menu-item[data-highlighted],
359
+ .excalidraw .color-picker__context-menu-item:not([data-disabled]):hover {
360
+ background: var(--button-hover-bg);
361
+ }
362
+ .excalidraw .color-picker__context-menu-item[data-disabled] {
363
+ opacity: 0.5;
364
+ pointer-events: none;
365
+ }
366
+ .excalidraw .color-picker__tip {
367
+ padding: 0 0.5rem;
368
+ font-size: 0.6875rem;
369
+ line-height: 1.4;
370
+ text-align: left;
371
+ color: var(--color-gray-60);
372
+ }
635
373
  .excalidraw .color-picker-container {
636
374
  display: grid;
637
375
  grid-template-columns: 1fr 20px 1.625rem;
@@ -660,7 +398,6 @@
660
398
  height: var(--size);
661
399
  border: 0;
662
400
  border-radius: var(--radius);
663
- filter: var(--theme-filter);
664
401
  background-color: var(--swatch-color);
665
402
  background-position: left center;
666
403
  position: relative;
@@ -668,21 +405,19 @@
668
405
  box-sizing: border-box;
669
406
  }
670
407
  .excalidraw .color-picker__button.has-outline {
671
- box-shadow: inset 0 0 0 1px #d9d9d9;
408
+ box-shadow: 0 0 0 1px var(--color-outline);
672
409
  }
673
- .excalidraw .color-picker__button:hover:not(.active):not(.color-picker__button--large) {
674
- transform: scale(1.075);
410
+ .excalidraw .color-picker__button:hover:not(.active).color-picker__button--large {
411
+ box-shadow: inset 0 0 0 1px var(--color-primary);
675
412
  }
676
- .excalidraw .color-picker__button:hover:not(.active).color-picker__button--large::after {
677
- content: "";
678
- position: absolute;
679
- top: -1px;
680
- left: -1px;
681
- right: -1px;
682
- bottom: -1px;
683
- box-shadow: 0 0 0 1px var(--color-gray-30);
684
- border-radius: var(--radius);
685
- filter: var(--theme-filter);
413
+ .excalidraw .color-picker__button:active {
414
+ box-shadow: 0 0 0 1px var(--color-primary) !important;
415
+ }
416
+ .excalidraw .color-picker__button:active.color-picker__button--large {
417
+ box-shadow: none !important;
418
+ }
419
+ .excalidraw .color-picker__button:active.color-picker__button--large.has-outline {
420
+ box-shadow: 0 0 0 1px var(--color-outline) !important;
686
421
  }
687
422
  .excalidraw .color-picker__button .color-picker__button-outline {
688
423
  display: flex;
@@ -703,7 +438,7 @@
703
438
  width: 100%;
704
439
  height: 100%;
705
440
  }
706
- .excalidraw .color-picker__button.active .color-picker__button-outline {
441
+ .excalidraw .color-picker__button.active:not(:active) .color-picker__button-outline {
707
442
  position: absolute;
708
443
  --offset: -1px;
709
444
  top: var(--offset);
@@ -713,7 +448,6 @@
713
448
  box-shadow: 0 0 0 1px var(--color-primary-darkest);
714
449
  z-index: 1;
715
450
  border-radius: var(--radius);
716
- filter: var(--theme-filter);
717
451
  }
718
452
  .excalidraw .color-picker__button:focus-visible {
719
453
  outline: none;
@@ -732,7 +466,7 @@
732
466
  display: none;
733
467
  }
734
468
  .excalidraw .color-picker__button--large {
735
- --radius: 0.5rem;
469
+ --radius: 6px;
736
470
  width: 1.875rem;
737
471
  height: 1.875rem;
738
472
  }
@@ -762,10 +496,10 @@
762
496
  }
763
497
  .excalidraw .color-picker__button__hotkey-label {
764
498
  position: absolute;
765
- right: 5px;
766
- bottom: 3px;
767
- filter: none;
768
- font-size: 11px;
499
+ right: 4px;
500
+ bottom: 2px;
501
+ font-size: 10px;
502
+ font-family: monospace;
769
503
  font-weight: 500;
770
504
  }
771
505
  .excalidraw .color-picker {
@@ -843,52 +577,20 @@
843
577
  box-shadow: 0 0 0 2px var(--focus-highlight-color);
844
578
  }
845
579
  .excalidraw .color-picker-content--canvas {
846
- display: flex;
847
- flex-direction: column;
848
- padding: 0.25rem;
849
- }
850
- .excalidraw .color-picker-content--canvas-title {
851
- color: #868e96;
852
- font-size: 12px;
853
- padding: 0 0.25rem;
854
- }
855
- .excalidraw .color-picker-content--canvas-colors {
856
- padding: 0.5rem 0;
857
- }
858
- .excalidraw .color-picker-content--canvas-colors .color-picker-swatch {
859
- margin: 0 0.25rem;
860
- }
861
- .excalidraw .color-picker-content .color-input-container {
862
- grid-column: 1/span 5;
863
- }
864
- .excalidraw .color-picker-swatch {
865
- position: relative;
866
- height: 1.875rem;
867
- width: 1.875rem;
868
- cursor: pointer;
869
- border-radius: 4px;
870
- margin: 0;
871
- box-sizing: border-box;
872
- border: 1px solid #ddd;
873
- background-color: currentColor !important;
874
- filter: var(--theme-filter);
580
+ display: flex;
581
+ flex-direction: column;
582
+ padding: 0.25rem;
875
583
  }
876
- .excalidraw .color-picker-swatch:focus {
877
- box-shadow: 0 0 4px 1px currentColor;
878
- border-color: var(--select-highlight-color);
584
+ .excalidraw .color-picker-content--canvas-title {
585
+ color: #868e96;
586
+ font-size: 12px;
587
+ padding: 0 0.25rem;
879
588
  }
880
- .excalidraw .color-picker-transparent {
881
- border-radius: 4px;
882
- box-shadow: rgba(0, 0, 0, 0.1) 0 0 0 1px inset;
883
- position: absolute;
884
- top: 0;
885
- right: 0;
886
- bottom: 0;
887
- left: 0;
589
+ .excalidraw .color-picker-content--canvas-colors {
590
+ padding: 0.5rem 0;
888
591
  }
889
- .excalidraw .color-picker-transparent,
890
- .excalidraw .color-picker-label-swatch {
891
- background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMUlEQVQ4T2NkYGAQYcAP3uCTZhw1gGGYhAGBZIA/nYDCgBDAm9BGDWAAJyRCgLaBCAAgXwixzAS0pgAAAABJRU5ErkJggg==) left center;
592
+ .excalidraw .color-picker-content .color-input-container {
593
+ grid-column: 1/span 5;
892
594
  }
893
595
  .excalidraw .color-picker-hash {
894
596
  height: var(--default-button-size);
@@ -918,6 +620,11 @@
918
620
  box-shadow: 0 0 0 1px var(--color-primary-darkest);
919
621
  border-radius: var(--border-radius-lg);
920
622
  }
623
+ .excalidraw .color-picker__input-label-container {
624
+ display: flex;
625
+ flex-direction: column;
626
+ gap: 4px;
627
+ }
921
628
  .excalidraw .color-picker__input-label {
922
629
  display: grid;
923
630
  grid-template-columns: auto 1fr auto auto;
@@ -933,9 +640,22 @@
933
640
  box-shadow: 0 0 0 1px var(--color-primary-darkest);
934
641
  border-radius: var(--border-radius-lg);
935
642
  }
643
+ .excalidraw .color-picker__input-label.has-error {
644
+ border-color: var(--color-danger, #e03131);
645
+ }
646
+ .excalidraw .color-picker__input-label.has-error:focus-within {
647
+ box-shadow: 0 0 0 1px var(--color-danger, #e03131);
648
+ }
936
649
  .excalidraw .color-picker__input-hash {
937
650
  padding: 0 0.25rem;
938
651
  }
652
+ .excalidraw .color-picker__error-message {
653
+ color: var(--color-danger, #e03131);
654
+ font-size: 0.75rem;
655
+ padding: 0 8px 4px 8px;
656
+ text-align: left;
657
+ line-height: 1.3;
658
+ }
939
659
  .excalidraw .color-picker-input {
940
660
  box-sizing: border-box;
941
661
  width: 100%;
@@ -965,103 +685,126 @@
965
685
  .excalidraw .color-picker-input:focus-visible {
966
686
  box-shadow: none;
967
687
  }
968
- .excalidraw .color-picker-label-swatch-container {
969
- border: 1px solid var(--default-border-color);
970
- border-radius: var(--border-radius-lg);
971
- width: var(--default-button-size);
972
- height: var(--default-button-size);
973
- box-sizing: border-box;
974
- overflow: hidden;
975
- }
976
- .excalidraw .color-picker-label-swatch {
977
- display: flex;
978
- justify-content: center;
979
- align-items: center;
980
- padding: 0.625rem;
981
- width: var(--button-width, var(--default-button-size));
982
- height: var(--button-height, var(--default-button-size));
983
- box-sizing: border-box;
984
- border-width: 1px;
985
- border-style: solid;
986
- border-color: var(--button-border, var(--default-border-color));
987
- border-radius: var(--border-radius-lg);
988
- cursor: pointer;
989
- background-color: var(--button-bg, var(--island-bg-color));
990
- color: var(--button-color, var(--color-on-surface));
991
- font-family: var(--ui-font);
992
- background-color: var(--swatch-color) !important;
993
- overflow: hidden;
688
+ .excalidraw .color-picker__top-picks {
994
689
  position: relative;
995
- filter: var(--theme-filter);
996
- border: 0 !important;
997
690
  }
998
- .excalidraw .color-picker-label-swatch svg {
999
- width: var(--button-width, var(--lg-icon-size));
1000
- height: var(--button-height, var(--lg-icon-size));
691
+ .excalidraw .color-picker__top-picks .color-picker__button {
692
+ touch-action: none;
1001
693
  }
1002
- .excalidraw .color-picker-label-swatch:hover {
1003
- background-color: var(--button-hover-bg, var(--island-bg-color));
1004
- border-color: var(--button-hover-border, var(--button-border, var(--default-border-color)));
1005
- color: var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)));
694
+ .excalidraw .color-picker__top-picks.is-dnd-active .color-picker__button {
695
+ pointer-events: none;
696
+ transition:
697
+ transform 0.14s ease,
698
+ opacity 0.14s ease,
699
+ box-shadow 0.14s ease;
1006
700
  }
1007
- .excalidraw .color-picker-label-swatch:active {
1008
- background-color: var(--button-active-bg, var(--island-bg-color));
1009
- border-color: var(--button-active-border, var(--color-primary-darkest));
701
+ .excalidraw .color-picker__top-picks__dnd-outline {
702
+ position: absolute;
703
+ top: -5px;
704
+ left: -5px;
705
+ width: calc(100% + 10px);
706
+ height: calc(100% + 10px);
707
+ pointer-events: none;
708
+ overflow: visible;
1010
709
  }
1011
- .excalidraw .color-picker-label-swatch.active {
1012
- background-color: var(--button-selected-bg, var(--color-surface-primary-container));
1013
- border-color: var(--button-selected-border, var(--color-surface-primary-container));
710
+ .excalidraw .color-picker__top-picks__dnd-outline rect {
711
+ x: 0.5px;
712
+ y: 0.5px;
713
+ rx: 6px;
714
+ width: calc(100% - 1px);
715
+ height: calc(100% - 1px);
716
+ fill: none;
717
+ stroke: var(--color-primary);
718
+ stroke-width: 1;
719
+ stroke-dasharray: 4 4;
720
+ animation: excalidraw-color-dnd-march 0.8s linear infinite;
1014
721
  }
1015
- .excalidraw .color-picker-label-swatch.active:hover {
1016
- background-color: var(--button-selected-hover-bg, var(--color-surface-primary-container));
722
+ @media (prefers-reduced-motion: reduce) {
723
+ .excalidraw .color-picker__top-picks__dnd-outline rect {
724
+ animation: none;
725
+ }
1017
726
  }
1018
- .excalidraw .color-picker-label-swatch.active svg {
1019
- color: var(--button-color, var(--color-on-primary-container));
727
+ @keyframes excalidraw-color-dnd-march {
728
+ to {
729
+ stroke-dashoffset: -8;
730
+ }
1020
731
  }
1021
- .excalidraw--mobile.excalidraw .color-picker-label-swatch {
1022
- width: var(--mobile-action-button-size, var(--default-button-size));
1023
- height: var(--mobile-action-button-size, var(--default-button-size));
732
+ .excalidraw .color-picker__button.is-dnd-source {
733
+ opacity: 0.3;
1024
734
  }
1025
- .excalidraw .color-picker-label-swatch:after {
1026
- content: "";
1027
- position: absolute;
735
+ .excalidraw .color-picker__button.is-dnd-target {
736
+ transform: scale(1.2);
737
+ box-shadow: 0 0 0 1px var(--color-primary-darkest);
738
+ }
739
+ .excalidraw .color-picker__button.is-dnd-duplicate {
740
+ animation: excalidraw-color-dnd-duplicate 0.45s ease-in-out infinite alternate;
741
+ }
742
+ @keyframes excalidraw-color-dnd-duplicate {
743
+ from {
744
+ box-shadow: 0 0 0 2px var(--color-danger, #e03131);
745
+ transform: scale(1);
746
+ }
747
+ to {
748
+ box-shadow: 0 0 0 3px var(--color-danger, #e03131);
749
+ transform: scale(1.12);
750
+ }
751
+ }
752
+ .excalidraw-color-dnd-ghost {
753
+ position: fixed;
1028
754
  top: 0;
1029
755
  left: 0;
756
+ z-index: 10000;
757
+ pointer-events: none;
758
+ will-change: transform;
759
+ transition: width 0.15s ease, height 0.15s ease;
760
+ }
761
+ .excalidraw-color-dnd-ghost__swatch {
1030
762
  width: 100%;
1031
763
  height: 100%;
1032
- background: var(--swatch-color);
1033
- }
1034
- .excalidraw .color-picker-keybinding {
1035
- position: absolute;
1036
- bottom: 2px;
1037
- font-size: 0.7em;
764
+ border-radius: 4px;
765
+ box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.08);
766
+ transition:
767
+ transform 0.15s ease,
768
+ opacity 0.15s ease,
769
+ box-shadow 0.15s ease;
1038
770
  }
1039
- :root[dir=ltr] .excalidraw .color-picker-keybinding {
1040
- right: 2px;
771
+ .excalidraw-color-dnd-ghost__swatch.is-transparent {
772
+ background-color: #fff;
773
+ background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMUlEQVQ4T2NkYGAQYcAP3uCTZhw1gGGYhAGBZIA/nYDCgBDAm9BGDWAAJyRCgLaBCAAgXwixzAS0pgAAAABJRU5ErkJggg==);
774
+ background-position: left center;
1041
775
  }
1042
- :root[dir=rtl] .excalidraw .color-picker-keybinding {
1043
- left: 2px;
776
+ .excalidraw-color-dnd-ghost--lifted .excalidraw-color-dnd-ghost__swatch {
777
+ transform: scale(1.2);
778
+ box-shadow: 0 6px 16px rgba(0, 0, 0, 0.25), 0 0 0 1px rgba(0, 0, 0, 0.08);
1044
779
  }
1045
- .excalidraw--mobile.excalidraw .color-picker-keybinding {
1046
- display: none;
780
+ .excalidraw-color-dnd-ghost--over .excalidraw-color-dnd-ghost__swatch {
781
+ transform: scale(1.05);
782
+ box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(0, 0, 0, 0.08);
1047
783
  }
1048
- .excalidraw .color-picker-type-canvasBackground .color-picker-keybinding {
1049
- color: #aaa;
784
+ .excalidraw-color-dnd-ghost--blocked .excalidraw-color-dnd-ghost__swatch {
785
+ opacity: 0.4;
786
+ transform: scale(0.85);
1050
787
  }
1051
- .excalidraw .color-picker-type-elementBackground .color-picker-keybinding {
1052
- color: #fff;
788
+ .excalidraw-color-dnd-ghost--dropping {
789
+ transition:
790
+ transform 0.18s cubic-bezier(0.2, 0.8, 0.3, 1),
791
+ width 0.18s ease,
792
+ height 0.18s ease;
1053
793
  }
1054
- .excalidraw .color-picker-swatch[aria-label=transparent] .color-picker-keybinding {
1055
- color: #aaa;
794
+ .excalidraw-color-dnd-ghost--dropping .excalidraw-color-dnd-ghost__swatch {
795
+ transform: scale(1);
796
+ box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.08);
1056
797
  }
1057
- .excalidraw .color-picker-type-elementStroke .color-picker-keybinding {
1058
- color: #d4d4d4;
798
+ .excalidraw-color-dnd-ghost--fade .excalidraw-color-dnd-ghost__swatch {
799
+ opacity: 0;
1059
800
  }
1060
- .excalidraw.theme--dark .color-picker-type-elementBackground .color-picker-keybinding {
1061
- color: #000;
801
+ body.excalidraw-color-dnd-active {
802
+ user-select: none !important;
803
+ -webkit-user-select: none !important;
1062
804
  }
1063
- .excalidraw.theme--dark .color-picker-swatch[aria-label=transparent] .color-picker-keybinding {
1064
- color: #000;
805
+ body.excalidraw-color-dnd-active,
806
+ body.excalidraw-color-dnd-active * {
807
+ cursor: grabbing !important;
1065
808
  }
1066
809
 
1067
810
  /* components/QuickSearch.scss */
@@ -1146,13 +889,18 @@
1146
889
  padding: 0.5rem;
1147
890
  background: var(--popup-bg-color);
1148
891
  border: 0 solid rgba(255, 255, 255, 0.25);
1149
- box-shadow: var(--shadow-island);
892
+ box-shadow: var(--shadow-island-stronger);
1150
893
  border-radius: 4px;
1151
- position: absolute;
1152
894
  }
1153
895
  :root[dir=rtl] .excalidraw .picker {
1154
896
  padding: 0.4rem;
1155
897
  }
898
+ .excalidraw .picker-sections,
899
+ .excalidraw .picker-section {
900
+ display: flex;
901
+ flex-direction: column;
902
+ gap: 0.5rem;
903
+ }
1156
904
  .excalidraw .picker-container button,
1157
905
  .excalidraw .picker button {
1158
906
  position: relative;
@@ -1199,7 +947,12 @@
1199
947
  }
1200
948
  .excalidraw .picker-collapsible {
1201
949
  font-size: 0.75rem;
1202
- padding: 0.5rem 0;
950
+ padding: 0;
951
+ color: var(--text-primary-color);
952
+ }
953
+ .excalidraw .picker-section-label {
954
+ font-size: 0.75rem;
955
+ color: var(--text-primary-color);
1203
956
  }
1204
957
  .excalidraw .picker-keybinding {
1205
958
  position: absolute;
@@ -1330,6 +1083,21 @@
1330
1083
  display: none;
1331
1084
  }
1332
1085
 
1086
+ /* components/ToolPopover.scss */
1087
+ .excalidraw .tool-popover-content {
1088
+ display: flex;
1089
+ flex-direction: row;
1090
+ gap: 0.25rem;
1091
+ border-radius: 0.5rem;
1092
+ background: var(--island-bg-color);
1093
+ box-shadow: var(--shadow-island);
1094
+ padding: 0.5rem;
1095
+ z-index: var(--zIndex-layerUI);
1096
+ }
1097
+ .excalidraw:focus {
1098
+ outline: none;
1099
+ }
1100
+
1333
1101
  /* components/CheckboxItem.scss */
1334
1102
  .excalidraw .Checkbox {
1335
1103
  margin: 4px 0.3em;
@@ -1424,6 +1192,62 @@
1424
1192
  background: none;
1425
1193
  }
1426
1194
 
1195
+ /* components/Toast.scss */
1196
+ .excalidraw .Toast {
1197
+ animation: Toast-fade-in 0.5s;
1198
+ min-width: 220px;
1199
+ max-width: min(360px, 100vw - 32px);
1200
+ border-radius: var(--border-radius-lg);
1201
+ border: 1px solid var(--default-border-color);
1202
+ background-color: var(--island-bg-color);
1203
+ color: var(--text-primary-color);
1204
+ padding: 0.5rem 0.75rem;
1205
+ box-shadow: 0 0 0 1px var(--color-surface-lowest);
1206
+ box-sizing: border-box;
1207
+ cursor: default;
1208
+ pointer-events: none;
1209
+ }
1210
+ .excalidraw .Toast .Toast__message {
1211
+ font-family: var(--ui-font);
1212
+ font-size: 0.75rem;
1213
+ line-height: 1.25rem;
1214
+ text-align: center;
1215
+ padding: 0 1.6rem;
1216
+ white-space: pre-wrap;
1217
+ }
1218
+ .excalidraw .Toast .Toast__progress-bar {
1219
+ margin-top: 0.35rem;
1220
+ width: 100%;
1221
+ height: 4px;
1222
+ border-radius: 999px;
1223
+ background-color: var(--button-gray-2);
1224
+ overflow: hidden;
1225
+ }
1226
+ .excalidraw .Toast .Toast__progress-bar-fill {
1227
+ height: 100%;
1228
+ border-radius: inherit;
1229
+ background-color: var(--color-primary);
1230
+ }
1231
+ .excalidraw .Toast .close {
1232
+ position: absolute;
1233
+ top: 0;
1234
+ right: 0;
1235
+ padding: 0.4rem;
1236
+ pointer-events: auto;
1237
+ }
1238
+ .excalidraw .Toast .close .ToolIcon__icon {
1239
+ width: 1.2rem;
1240
+ height: 1.2rem;
1241
+ }
1242
+ @keyframes Toast-fade-in {
1243
+ from {
1244
+ opacity: 0;
1245
+ }
1246
+ to {
1247
+ opacity: 1;
1248
+ }
1249
+ }
1250
+
1427
1251
  /* components/Avatar.scss */
1428
1252
  .excalidraw .Avatar {
1429
1253
  width: var(--avatar-size, 1.5rem);
@@ -1756,36 +1580,39 @@
1756
1580
 
1757
1581
  /* components/dropdownMenu/DropdownMenu.scss */
1758
1582
  .excalidraw .dropdown-menu {
1759
- position: absolute;
1760
- top: 2.5rem;
1761
- margin-top: 0.5rem;
1762
- max-width: 16rem;
1583
+ max-width: 20rem;
1584
+ z-index: 1;
1763
1585
  }
1764
1586
  .excalidraw .dropdown-menu--placement-top {
1765
- top: auto;
1766
- bottom: 100%;
1767
- margin-top: 0;
1768
1587
  margin-bottom: 0.5rem;
1769
1588
  }
1589
+ .excalidraw .dropdown-menu__submenu-trigger[aria-expanded=true] .dropdown-menu-item {
1590
+ background-color: var(--button-hover-bg);
1591
+ }
1592
+ .excalidraw .dropdown-menu__submenu-trigger-icon {
1593
+ margin-left: auto;
1594
+ opacity: 0.5;
1595
+ }
1596
+ .excalidraw .dropdown-menu__submenu-trigger-icon svg g {
1597
+ stroke-width: 2;
1598
+ }
1770
1599
  .excalidraw .dropdown-menu--mobile {
1771
1600
  width: 100%;
1772
1601
  row-gap: 0.75rem;
1773
1602
  }
1774
- .excalidraw .dropdown-menu--mobile.main-menu-dropdown {
1603
+ .excalidraw .dropdown-menu--mobile.main-menu {
1775
1604
  min-width: 232px;
1776
1605
  margin-top: 0;
1777
1606
  margin-bottom: 0;
1778
1607
  }
1779
1608
  @media screen and (orientation: landscape) {
1780
- .excalidraw .dropdown-menu--mobile.main-menu-dropdown {
1609
+ .excalidraw .dropdown-menu--mobile.main-menu {
1781
1610
  max-width: 232px;
1782
1611
  }
1783
1612
  }
1784
1613
  .excalidraw .dropdown-menu--mobile .dropdown-menu-container {
1785
1614
  padding: 8px 8px;
1786
1615
  box-sizing: border-box;
1787
- max-height: calc(100svh - var(--editor-container-padding) * 2 - 2.25rem);
1788
- box-shadow: var(--shadow-island);
1789
1616
  border-radius: var(--border-radius-lg);
1790
1617
  position: relative;
1791
1618
  transition: box-shadow 0.5s ease-in-out;
@@ -1799,11 +1626,19 @@
1799
1626
  .excalidraw .dropdown-menu .dropdown-menu-container {
1800
1627
  background-color: var(--island-bg-color);
1801
1628
  overflow-y: auto;
1802
- --gap: 2;
1629
+ display: flex;
1630
+ flex-direction: column;
1631
+ gap: 1px;
1632
+ box-shadow: var(--box-shadow, var(--shadow-island));
1633
+ max-height: calc(100svh - var(--editor-container-padding) * 2 - 2.25rem);
1634
+ }
1635
+ .excalidraw.theme--dark.excalidraw .dropdown-menu .dropdown-menu-container {
1636
+ box-shadow: var(--box-shadow, var(--shadow-island)), 0 0 0 1px rgba(0, 0, 0, 0.15);
1803
1637
  }
1804
1638
  .excalidraw .dropdown-menu .dropdown-menu-item-base {
1805
1639
  display: flex;
1806
1640
  column-gap: 0.625rem;
1641
+ padding: 0 0.5rem;
1807
1642
  font-size: 0.875rem;
1808
1643
  color: var(--color-on-surface);
1809
1644
  width: 100%;
@@ -1844,11 +1679,9 @@
1844
1679
  }
1845
1680
  .excalidraw .dropdown-menu .dropdown-menu-item {
1846
1681
  height: 2rem;
1847
- margin: 1px;
1848
1682
  padding: 0 0.5rem;
1849
- width: calc(100% - 2px);
1850
1683
  background-color: transparent;
1851
- border: 1px solid transparent;
1684
+ border: none;
1852
1685
  align-items: center;
1853
1686
  cursor: pointer;
1854
1687
  border-radius: var(--border-radius-md);
@@ -1887,7 +1720,19 @@
1887
1720
  }
1888
1721
  .excalidraw .dropdown-menu .dropdown-menu-item:active {
1889
1722
  background-color: var(--button-hover-bg);
1890
- border-color: var(--color-brand-active);
1723
+ box-shadow: 0 0 0 1px var(--color-brand-active);
1724
+ }
1725
+ .excalidraw .dropdown-menu .dropdown-menu-item[disabled] {
1726
+ cursor: not-allowed;
1727
+ opacity: 0.5;
1728
+ pointer-events: none;
1729
+ }
1730
+ .excalidraw .dropdown-menu .dropdown-menu-item[disabled]:hover {
1731
+ background-color: transparent;
1732
+ }
1733
+ .excalidraw .dropdown-menu .dropdown-menu-item[disabled]:active {
1734
+ background-color: transparent;
1735
+ box-shadow: none;
1891
1736
  }
1892
1737
  .excalidraw .dropdown-menu .dropdown-menu-item svg {
1893
1738
  width: 1rem;
@@ -1952,14 +1797,17 @@
1952
1797
  background-color: var(--button-active-bg, var(--island-bg-color));
1953
1798
  border-color: var(--button-active-border, var(--color-primary-darkest));
1954
1799
  }
1955
- .excalidraw .dropdown-menu-button.active {
1800
+ .excalidraw .dropdown-menu-button.active,
1801
+ .excalidraw .dropdown-menu-button.ToolIcon--checked {
1956
1802
  background-color: var(--button-selected-bg, var(--color-surface-primary-container));
1957
1803
  border-color: var(--button-selected-border, var(--color-surface-primary-container));
1958
1804
  }
1959
- .excalidraw .dropdown-menu-button.active:hover {
1805
+ .excalidraw .dropdown-menu-button.active:hover,
1806
+ .excalidraw .dropdown-menu-button.ToolIcon--checked:hover {
1960
1807
  background-color: var(--button-selected-hover-bg, var(--color-surface-primary-container));
1961
1808
  }
1962
- .excalidraw .dropdown-menu-button.active svg {
1809
+ .excalidraw .dropdown-menu-button.active svg,
1810
+ .excalidraw .dropdown-menu-button.ToolIcon--checked svg {
1963
1811
  color: var(--button-color, var(--color-on-primary-container));
1964
1812
  }
1965
1813
  .excalidraw--mobile.excalidraw .dropdown-menu-button {
@@ -1978,7 +1826,7 @@
1978
1826
  text-decoration: none;
1979
1827
  }
1980
1828
  .excalidraw .dropdown-menu-button:active {
1981
- border-color: var(--color-primary);
1829
+ box-shadow: 0 0 0 1px var(--color-primary);
1982
1830
  }
1983
1831
  .excalidraw .dropdown-menu-button[disabled] {
1984
1832
  cursor: not-allowed;
@@ -1988,7 +1836,7 @@
1988
1836
  background-color: var(--background);
1989
1837
  }
1990
1838
  .excalidraw .dropdown-menu-button[disabled]:active {
1991
- border-color: transparent;
1839
+ box-shadow: none;
1992
1840
  }
1993
1841
  .excalidraw.theme--dark.excalidraw .dropdown-menu-button[disabled]:hover {
1994
1842
  --background: var(--color-surface-high);
@@ -2318,9 +2166,13 @@
2318
2166
  --popup-text-inverted-color: #fff;
2319
2167
  --select-highlight-color: #339af0;
2320
2168
  --shadow-island:
2321
- 0px 0px 0.9310142993927002px 0px rgba(0, 0, 0, 0.17),
2322
- 0px 0px 3.1270833015441895px 0px rgba(0, 0, 0, 0.08),
2169
+ 0px 0px 1px 0px rgba(0, 0, 0, 0.17),
2170
+ 0px 0px 3px 0px rgba(0, 0, 0, 0.08),
2323
2171
  0px 7px 14px 0px rgba(0, 0, 0, 0.05);
2172
+ --shadow-island-stronger:
2173
+ 0px 0px 1px 0px rgba(0, 0, 0, 0.17),
2174
+ 0px 0px 3px 0px rgba(0, 0, 0, 0.08),
2175
+ 0px 7px 14px 0px rgb(0 0 0 / 18%);
2324
2176
  --button-hover-bg: var(--color-surface-high);
2325
2177
  --button-active-bg: var(--color-surface-high);
2326
2178
  --button-active-border: var(--color-brand-active);
@@ -2481,10 +2333,6 @@
2481
2333
  --popup-text-color: #ced4da;
2482
2334
  --popup-text-inverted-color: #2c2c2c;
2483
2335
  --select-highlight-color: #4dabf7;
2484
- --shadow-island:
2485
- 0px 0px 0.9310142993927002px 0px rgba(0, 0, 0, 0.17),
2486
- 0px 0px 3.1270833015441895px 0px rgba(0, 0, 0, 0.08),
2487
- 0px 7px 14px 0px rgba(0, 0, 0, 0.05);
2488
2336
  --modal-shadow:
2489
2337
  0px 100px 80px rgba(0, 0, 0, 0.07),
2490
2338
  0px 41.7776px 33.4221px rgba(0, 0, 0, 0.0503198),
@@ -2577,19 +2425,28 @@
2577
2425
  border-color: var(--button-active-border, var(--color-primary-darkest));
2578
2426
  }
2579
2427
  .excalidraw .excalidraw-button.active,
2428
+ .excalidraw .excalidraw-button.ToolIcon--checked,
2580
2429
  .exc-style.excalidraw-button.active,
2581
- .exc-style .excalidraw-button.active {
2430
+ .exc-style.excalidraw-button.ToolIcon--checked,
2431
+ .exc-style .excalidraw-button.active,
2432
+ .exc-style .excalidraw-button.ToolIcon--checked {
2582
2433
  background-color: var(--button-selected-bg, var(--color-surface-primary-container));
2583
2434
  border-color: var(--button-selected-border, var(--color-surface-primary-container));
2584
2435
  }
2585
2436
  .excalidraw .excalidraw-button.active:hover,
2437
+ .excalidraw .excalidraw-button.ToolIcon--checked:hover,
2586
2438
  .exc-style.excalidraw-button.active:hover,
2587
- .exc-style .excalidraw-button.active:hover {
2439
+ .exc-style.excalidraw-button.ToolIcon--checked:hover,
2440
+ .exc-style .excalidraw-button.active:hover,
2441
+ .exc-style .excalidraw-button.ToolIcon--checked:hover {
2588
2442
  background-color: var(--button-selected-hover-bg, var(--color-surface-primary-container));
2589
2443
  }
2590
2444
  .excalidraw .excalidraw-button.active svg,
2445
+ .excalidraw .excalidraw-button.ToolIcon--checked svg,
2591
2446
  .exc-style.excalidraw-button.active svg,
2592
- .exc-style .excalidraw-button.active svg {
2447
+ .exc-style.excalidraw-button.ToolIcon--checked svg,
2448
+ .exc-style .excalidraw-button.active svg,
2449
+ .exc-style .excalidraw-button.ToolIcon--checked svg {
2593
2450
  color: var(--button-color, var(--color-on-primary-container));
2594
2451
  }
2595
2452
  .excalidraw--mobile.excalidraw .excalidraw-button,
@@ -2801,9 +2658,9 @@
2801
2658
  }
2802
2659
  .excalidraw .layer-ui__library .dropdown-menu .dropdown-menu-container {
2803
2660
  width: 196px;
2804
- box-shadow: var(--library-dropdown-shadow);
2805
2661
  border-radius: var(--border-radius-lg);
2806
2662
  padding: 0.25rem 0.5rem;
2663
+ --box-shadow: var(--library-dropdown-shadow);
2807
2664
  }
2808
2665
  .excalidraw .layer-ui__library .library-menu-dropdown-container {
2809
2666
  z-index: 1;
@@ -3139,21 +2996,6 @@
3139
2996
  --button-bg: var(--color-surface-high);
3140
2997
  }
3141
2998
 
3142
- /* components/ToolPopover.scss */
3143
- .excalidraw .tool-popover-content {
3144
- display: flex;
3145
- flex-direction: row;
3146
- gap: 0.25rem;
3147
- border-radius: 0.5rem;
3148
- background: var(--island-bg-color);
3149
- box-shadow: var(--shadow-island);
3150
- padding: 0.5rem;
3151
- z-index: var(--zIndex-layerUI);
3152
- }
3153
- .excalidraw:focus {
3154
- outline: none;
3155
- }
3156
-
3157
2999
  /* components/CommandPalette/CommandPalette.scss */
3158
3000
  .excalidraw .command-palette-dialog {
3159
3001
  user-select: none;
@@ -3303,7 +3145,6 @@
3303
3145
  .excalidraw .popover {
3304
3146
  position: absolute;
3305
3147
  z-index: 10;
3306
- padding: 5px 0 5px;
3307
3148
  outline: none;
3308
3149
  }
3309
3150
 
@@ -3315,10 +3156,9 @@
3315
3156
  position: relative;
3316
3157
  border-radius: 4px;
3317
3158
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
3318
- padding: 0;
3319
3159
  list-style: none;
3320
3160
  user-select: none;
3321
- margin: -0.25rem 0 0 0.125rem;
3161
+ margin: 0;
3322
3162
  padding: 0.5rem 0;
3323
3163
  background-color: var(--popup-secondary-bg-color);
3324
3164
  border: 1px solid var(--button-gray-3);
@@ -3389,59 +3229,88 @@
3389
3229
  border-top: 1px solid #adb5bd;
3390
3230
  }
3391
3231
 
3392
- /* components/FollowMode/FollowMode.scss */
3393
- .excalidraw .follow-mode {
3232
+ /* components/ViewportStatusFrame/ViewportStatusFrame.scss */
3233
+ .excalidraw .viewport-status-frame__border {
3394
3234
  position: absolute;
3235
+ inset: 0;
3395
3236
  box-sizing: border-box;
3396
3237
  pointer-events: none;
3397
- border: 2px solid var(--color-primary-hover);
3398
- z-index: 9999;
3238
+ border: 4px solid;
3239
+ z-index: var(--zIndex-viewportStatusFrame);
3240
+ }
3241
+ .excalidraw .viewport-status-frame__badge {
3242
+ position: relative;
3243
+ z-index: var(--zIndex-viewportStatusFrame);
3244
+ pointer-events: all;
3245
+ background-color: var(--viewport-status-frame-badge-background);
3246
+ color: var(--color-primary-light);
3247
+ border-radius: 0.5rem;
3248
+ font-size: 0.75rem;
3399
3249
  display: flex;
3400
- align-items: flex-end;
3401
- justify-content: center;
3250
+ align-items: center;
3251
+ overflow: hidden;
3252
+ }
3253
+ .excalidraw--mobile.excalidraw .viewport-status-frame__badge {
3254
+ background: linear-gradient(var(--viewport-status-frame-badge-background), var(--viewport-status-frame-badge-background)), var(--island-bg-color);
3255
+ }
3256
+ .excalidraw .viewport-status-frame__badge--clickable {
3257
+ cursor: pointer;
3258
+ }
3259
+ .excalidraw .viewport-status-frame__badge--clickable:active {
3260
+ transform: scale(0.96);
3261
+ }
3262
+ .excalidraw .viewport-status-frame__badge-action {
3263
+ position: absolute;
3264
+ inset: 0;
3265
+ margin: 0;
3266
+ border: 0;
3267
+ padding: 0;
3268
+ background: transparent;
3269
+ cursor: inherit;
3402
3270
  }
3403
- .excalidraw .follow-mode__badge {
3404
- background-color: var(--color-primary-hover);
3405
- color: var(--color-primary-light);
3406
- padding: 0.25rem 0.5rem;
3407
- margin-bottom: 0.5rem;
3271
+ .excalidraw .viewport-status-frame__badge-action:focus-visible {
3272
+ outline: 2px solid currentColor;
3273
+ outline-offset: -2px;
3408
3274
  border-radius: 0.5rem;
3409
- pointer-events: all;
3410
- font-size: 0.75rem;
3411
- display: flex;
3412
- gap: 0.5rem;
3413
- align-items: center;
3414
3275
  }
3415
- .excalidraw .follow-mode__badge__label {
3276
+ .excalidraw .viewport-status-frame__badge-label {
3277
+ position: relative;
3416
3278
  display: flex;
3279
+ align-items: center;
3280
+ gap: 0.25rem;
3281
+ padding: 0.25rem 0.5rem;
3417
3282
  white-space: pre-wrap;
3418
3283
  line-height: 1;
3284
+ pointer-events: none;
3419
3285
  }
3420
- .excalidraw .follow-mode__badge__username {
3421
- display: block;
3422
- white-space: nowrap;
3423
- overflow: hidden;
3424
- text-overflow: ellipsis;
3425
- max-width: 100px;
3286
+ .excalidraw .viewport-status-frame__badge-icon {
3287
+ display: flex;
3288
+ align-items: center;
3426
3289
  }
3427
- .excalidraw .follow-mode__disconnect-btn {
3290
+ .excalidraw .viewport-status-frame__badge-icon svg {
3291
+ width: 1rem;
3292
+ height: 1rem;
3293
+ }
3294
+ .excalidraw .viewport-status-frame__badge-close {
3428
3295
  all: unset;
3429
3296
  cursor: pointer;
3430
3297
  border-radius: 0.25rem;
3298
+ margin-right: 0.5rem;
3299
+ position: relative;
3431
3300
  }
3432
- .excalidraw .follow-mode__disconnect-btn:hover {
3301
+ .excalidraw .viewport-status-frame__badge-close:hover {
3433
3302
  background-color: var(--color-primary-darker);
3434
3303
  }
3435
- .excalidraw .follow-mode__disconnect-btn:active {
3304
+ .excalidraw .viewport-status-frame__badge-close:active {
3436
3305
  background-color: var(--color-primary-darkest);
3437
3306
  }
3438
- .excalidraw .follow-mode__disconnect-btn svg {
3307
+ .excalidraw .viewport-status-frame__badge-close svg {
3439
3308
  display: block;
3440
3309
  width: 1rem;
3441
3310
  height: 1rem;
3442
3311
  }
3443
3312
 
3444
- /* components/MobileToolBar.scss */
3313
+ /* components/MobileToolbar.scss */
3445
3314
  .excalidraw .mobile-toolbar {
3446
3315
  display: flex;
3447
3316
  flex: 1;
@@ -3473,9 +3342,8 @@
3473
3342
  .excalidraw .mobile-toolbar .ToolIcon .ToolIcon__icon:hover {
3474
3343
  background-color: transparent;
3475
3344
  }
3476
- .excalidraw .mobile-toolbar .ToolIcon.active {
3477
- background: var(--color-surface-primary-container, var(--island-bg-color));
3478
- border-color: var(--button-active-border, var(--color-primary-darkest));
3345
+ .excalidraw .mobile-toolbar .ToolIcon.ToolIcon--checked .ToolIcon__icon:hover {
3346
+ background-color: var(--color-surface-primary-container);
3479
3347
  }
3480
3348
  .excalidraw .mobile-toolbar .ToolIcon svg {
3481
3349
  width: 1rem;
@@ -3522,6 +3390,37 @@
3522
3390
  }
3523
3391
 
3524
3392
  /* components/PasteChartDialog.scss */
3393
+ .excalidraw .PasteChartDialog .PasteChartDialog__title {
3394
+ display: flex;
3395
+ align-items: center;
3396
+ gap: 0.5rem;
3397
+ }
3398
+ .excalidraw .PasteChartDialog .PasteChartDialog__titleText {
3399
+ min-width: 0;
3400
+ }
3401
+ .excalidraw .PasteChartDialog .PasteChartDialog__reshuffleBtn {
3402
+ margin-left: auto;
3403
+ flex: 0 0 auto;
3404
+ width: 1rem;
3405
+ height: 1rem;
3406
+ display: inline-flex;
3407
+ align-items: center;
3408
+ justify-content: center;
3409
+ border-radius: 4px;
3410
+ cursor: pointer;
3411
+ color: var(--text-primary-color);
3412
+ transition:
3413
+ transform 120ms ease,
3414
+ background-color 120ms ease,
3415
+ color 120ms ease;
3416
+ user-select: none;
3417
+ }
3418
+ .excalidraw .PasteChartDialog .PasteChartDialog__reshuffleBtn:hover {
3419
+ color: #228be6;
3420
+ }
3421
+ .excalidraw .PasteChartDialog .PasteChartDialog__reshuffleBtn:active {
3422
+ transform: scale(0.94);
3423
+ }
3525
3424
  .excalidraw--mobile.excalidraw .PasteChartDialog .Island {
3526
3425
  display: flex;
3527
3426
  flex-direction: column;
@@ -3529,36 +3428,61 @@
3529
3428
  .excalidraw .PasteChartDialog .container {
3530
3429
  display: flex;
3531
3430
  align-items: center;
3532
- justify-content: space-around;
3431
+ justify-content: center;
3533
3432
  flex-wrap: wrap;
3433
+ gap: 1rem;
3534
3434
  }
3535
3435
  .excalidraw--mobile.excalidraw .PasteChartDialog .container {
3536
3436
  flex-direction: column;
3537
3437
  justify-content: center;
3438
+ align-items: stretch;
3538
3439
  }
3539
3440
  .excalidraw .PasteChartDialog .ChartPreview {
3540
- margin: 8px;
3541
- text-align: center;
3542
- width: 192px;
3543
- height: 128px;
3544
- border-radius: 2px;
3545
- padding: 1px;
3441
+ width: 260px;
3442
+ min-height: 190px;
3443
+ border-radius: 8px;
3444
+ padding: 10px;
3546
3445
  border: 1px solid #ced4da;
3547
3446
  display: flex;
3447
+ flex-direction: column;
3448
+ align-items: stretch;
3449
+ justify-content: flex-start;
3450
+ gap: 10px;
3451
+ background: transparent;
3452
+ }
3453
+ .excalidraw .PasteChartDialog .ChartPreview .ChartPreview__canvas {
3454
+ display: flex;
3455
+ flex: 1;
3548
3456
  align-items: center;
3549
3457
  justify-content: center;
3550
- background: transparent;
3458
+ overflow: hidden;
3551
3459
  }
3552
- .excalidraw .PasteChartDialog .ChartPreview div {
3553
- display: inline-block;
3460
+ .excalidraw .PasteChartDialog .ChartPreview .ChartPreview__label {
3461
+ font-size: 0.875rem;
3462
+ font-weight: 600;
3463
+ line-height: 1;
3464
+ text-align: center;
3465
+ color: var(--text-primary-color);
3554
3466
  }
3555
3467
  .excalidraw .PasteChartDialog .ChartPreview svg {
3556
- max-height: 120px;
3557
- max-width: 186px;
3468
+ max-height: 144px;
3469
+ max-width: 100%;
3558
3470
  }
3559
3471
  .excalidraw .PasteChartDialog .ChartPreview:hover {
3560
- padding: 0;
3561
- border: 2px solid #339af0;
3472
+ border-color: #339af0;
3473
+ }
3474
+ .excalidraw .PasteChartDialog .ChartPreview:active {
3475
+ border-color: #339af0;
3476
+ box-shadow: 0 0 0 1px #339af0;
3477
+ transform: scale(0.98);
3478
+ }
3479
+ .excalidraw .PasteChartDialog .ChartPreview:focus-visible {
3480
+ border-color: #339af0;
3481
+ box-shadow: 0 0 0 1px #339af0;
3482
+ }
3483
+ .excalidraw--mobile.excalidraw .PasteChartDialog .ChartPreview {
3484
+ width: 100%;
3485
+ min-height: 200px;
3562
3486
  }
3563
3487
 
3564
3488
  /* components/UserList.scss */
@@ -3588,7 +3512,7 @@
3588
3512
  pointer-events: none;
3589
3513
  padding: var(--userList-padding);
3590
3514
  display: flex;
3591
- flex-wrap: wrap;
3515
+ flex-wrap: nowrap;
3592
3516
  justify-content: flex-end;
3593
3517
  align-items: center;
3594
3518
  gap: var(--avatarList-gap);
@@ -3601,66 +3525,52 @@
3601
3525
  pointer-events: var(--ui-pointerEvents);
3602
3526
  }
3603
3527
  .excalidraw .UserList_mobile {
3528
+ flex-direction: column;
3529
+ align-items: stretch;
3604
3530
  padding: 0;
3605
3531
  justify-content: normal;
3606
3532
  margin: 0.5rem 0;
3607
3533
  max-width: none;
3608
3534
  max-height: none;
3609
3535
  }
3610
- .excalidraw .UserList__more {
3611
- width: var(--avatar-size, 1.5rem);
3612
- height: var(--avatar-size, 1.5rem);
3613
- position: relative;
3614
- border-radius: 100%;
3615
- outline-offset: 2px;
3536
+ .excalidraw .UserList_mobile__avatars {
3616
3537
  display: flex;
3617
- justify-content: center;
3538
+ flex-wrap: wrap;
3618
3539
  align-items: center;
3619
- cursor: pointer;
3620
- font-size: 0.75rem;
3621
- font-weight: 700;
3622
- line-height: 1;
3623
- color: var(--color-gray-90);
3624
- flex: 0 0 auto;
3625
- }
3626
- .excalidraw .UserList__more:active {
3627
- transform: scale(0.94);
3628
- }
3629
- .excalidraw .UserList__more-img {
3630
- width: 100%;
3631
- height: 100%;
3632
- border-radius: 100%;
3633
- }
3634
- .excalidraw .UserList__more::before {
3635
- content: "";
3636
- position: absolute;
3637
- top: -3px;
3638
- right: -3px;
3639
- bottom: -3px;
3640
- left: -3px;
3641
- border-radius: 100%;
3642
- }
3643
- .excalidraw .UserList__more.is-followed::before {
3644
- border-color: var(--color-primary-hover);
3645
- box-shadow: 0 0 0 1px var(--color-primary-hover);
3646
- }
3647
- .excalidraw .UserList__more.is-current-user {
3648
- cursor: auto;
3540
+ gap: var(--avatarList-gap);
3649
3541
  }
3650
- .excalidraw .UserList__more {
3651
- background-color: var(--color-gray-20);
3652
- border: 0 !important;
3653
- font-size: 0.625rem;
3654
- font-weight: 400;
3655
- flex-shrink: 0;
3656
- color: var(--color-gray-100);
3657
- font-weight: bold;
3542
+ .excalidraw .UserList_mobile__avatars > .is-current-user {
3543
+ order: -1;
3658
3544
  }
3659
3545
  .excalidraw .UserList__collaborator-name {
3660
3546
  text-overflow: ellipsis;
3661
3547
  overflow: hidden;
3662
3548
  white-space: nowrap;
3663
3549
  }
3550
+ .excalidraw .UserList__pill {
3551
+ display: flex;
3552
+ align-items: center;
3553
+ padding: 0 0.25rem 0 0;
3554
+ border-radius: 1.25rem;
3555
+ background-color: var(--color-surface-low);
3556
+ border: 1px solid var(--color-gray-20);
3557
+ cursor: pointer;
3558
+ pointer-events: var(--ui-pointerEvents);
3559
+ }
3560
+ .excalidraw .UserList__pill:hover {
3561
+ background-color: var(--color-surface-high);
3562
+ }
3563
+ .excalidraw .UserList__pill-chevron {
3564
+ display: flex;
3565
+ align-items: center;
3566
+ color: var(--color-gray-50);
3567
+ width: 15px;
3568
+ height: 15px;
3569
+ }
3570
+ .excalidraw .UserList__pill-chevron svg {
3571
+ width: 100%;
3572
+ height: 100%;
3573
+ }
3664
3574
  .excalidraw .UserList__collaborator--avatar-only {
3665
3575
  position: relative;
3666
3576
  display: flex;
@@ -3689,6 +3599,9 @@
3689
3599
  justify-content: flex-end;
3690
3600
  display: flex;
3691
3601
  }
3602
+ .excalidraw .UserList__collaborator.is-current-user {
3603
+ pointer-events: none;
3604
+ }
3692
3605
  .excalidraw .UserList__collaborator.is-muted .UserList__collaborator-status-icon-microphone-muted {
3693
3606
  color: var(--color-danger);
3694
3607
  filter: drop-shadow(0px 0px 0px rgba(0, 0, 0, 0.5));
@@ -3725,8 +3638,23 @@
3725
3638
  }
3726
3639
  }
3727
3640
  .excalidraw .UserList__collaborators {
3641
+ display: flex;
3642
+ flex-direction: column;
3728
3643
  top: auto;
3729
3644
  max-height: 50vh;
3645
+ padding: 2px;
3646
+ box-sizing: border-box;
3647
+ }
3648
+ .excalidraw .UserList__collaborators > .hint {
3649
+ order: -2;
3650
+ }
3651
+ .excalidraw .UserList__collaborators > .is-current-user {
3652
+ order: -1;
3653
+ }
3654
+ .excalidraw .UserList__menu-divider {
3655
+ height: 1px;
3656
+ background-color: var(--userlist-collaborators-border-color);
3657
+ margin: 0.25rem 0;
3730
3658
  }
3731
3659
 
3732
3660
  /* components/Sidebar/SidebarTrigger.scss */
@@ -3771,14 +3699,17 @@
3771
3699
  background-color: var(--button-active-bg, var(--island-bg-color));
3772
3700
  border-color: var(--button-active-border, var(--color-primary-darkest));
3773
3701
  }
3774
- .excalidraw .sidebar-trigger.active {
3702
+ .excalidraw .sidebar-trigger.active,
3703
+ .excalidraw .sidebar-trigger.ToolIcon--checked {
3775
3704
  background-color: var(--button-selected-bg, var(--color-surface-primary-container));
3776
3705
  border-color: var(--button-selected-border, var(--color-surface-primary-container));
3777
3706
  }
3778
- .excalidraw .sidebar-trigger.active:hover {
3707
+ .excalidraw .sidebar-trigger.active:hover,
3708
+ .excalidraw .sidebar-trigger.ToolIcon--checked:hover {
3779
3709
  background-color: var(--button-selected-hover-bg, var(--color-surface-primary-container));
3780
3710
  }
3781
- .excalidraw .sidebar-trigger.active svg {
3711
+ .excalidraw .sidebar-trigger.active svg,
3712
+ .excalidraw .sidebar-trigger.ToolIcon--checked svg {
3782
3713
  color: var(--button-color, var(--color-on-primary-container));
3783
3714
  }
3784
3715
  .excalidraw--mobile.excalidraw .sidebar-trigger {
@@ -3798,6 +3729,14 @@
3798
3729
  }
3799
3730
  .excalidraw .sidebar-trigger__label-element {
3800
3731
  align-self: flex-start;
3732
+ appearance: none;
3733
+ margin: 0;
3734
+ padding: 0;
3735
+ border: none;
3736
+ background-color: transparent;
3737
+ font: inherit;
3738
+ color: inherit;
3739
+ text-align: inherit;
3801
3740
  }
3802
3741
  .excalidraw .default-sidebar-trigger .sidebar-trigger__label {
3803
3742
  display: block;
@@ -3896,14 +3835,17 @@
3896
3835
  background-color: var(--button-active-bg, var(--island-bg-color));
3897
3836
  border-color: var(--button-active-border, var(--color-primary-darkest));
3898
3837
  }
3899
- .excalidraw .sidebar__header__buttons button.active {
3838
+ .excalidraw .sidebar__header__buttons button.active,
3839
+ .excalidraw .sidebar__header__buttons button.ToolIcon--checked {
3900
3840
  background-color: var(--button-selected-bg, var(--color-surface-primary-container));
3901
3841
  border-color: var(--button-selected-border, var(--color-surface-primary-container));
3902
3842
  }
3903
- .excalidraw .sidebar__header__buttons button.active:hover {
3843
+ .excalidraw .sidebar__header__buttons button.active:hover,
3844
+ .excalidraw .sidebar__header__buttons button.ToolIcon--checked:hover {
3904
3845
  background-color: var(--button-selected-hover-bg, var(--color-surface-primary-container));
3905
3846
  }
3906
- .excalidraw .sidebar__header__buttons button.active svg {
3847
+ .excalidraw .sidebar__header__buttons button.active svg,
3848
+ .excalidraw .sidebar__header__buttons button.ToolIcon--checked svg {
3907
3849
  color: var(--button-color, var(--color-on-primary-container));
3908
3850
  }
3909
3851
  .excalidraw--mobile.excalidraw .sidebar__header__buttons button {
@@ -4004,14 +3946,17 @@
4004
3946
  border-radius: 10px;
4005
3947
  background: var(--RadioGroup-background);
4006
3948
  border: 1px solid var(--RadioGroup-border);
3949
+ gap: 2px;
4007
3950
  }
4008
3951
  .excalidraw .RadioGroup__choice {
3952
+ box-sizing: content-box;
4009
3953
  position: relative;
4010
3954
  display: flex;
4011
3955
  align-items: center;
4012
3956
  justify-content: center;
4013
- width: 32px;
3957
+ min-width: 20px;
4014
3958
  height: 24px;
3959
+ padding: 0 0.375rem;
4015
3960
  color: var(--RadioGroup-choice-color-off);
4016
3961
  background: var(--RadioGroup-choice-background-off);
4017
3962
  border-radius: 8px;
@@ -4022,12 +3967,11 @@
4022
3967
  line-height: 100%;
4023
3968
  user-select: none;
4024
3969
  letter-spacing: 0.4px;
4025
- transition: all 75ms ease-out;
4026
3970
  }
4027
3971
  .excalidraw .RadioGroup__choice:hover {
4028
3972
  color: var(--RadioGroup-choice-color-off-hover);
4029
3973
  }
4030
- .excalidraw .RadioGroup__choice:active {
3974
+ .excalidraw .RadioGroup__choice:not(.active):active {
4031
3975
  background: var(--RadioGroup-choice-background-off-active);
4032
3976
  }
4033
3977
  .excalidraw .RadioGroup__choice.active {
@@ -4112,6 +4056,7 @@
4112
4056
  .excalidraw .ExcButton.ExcButton--status-loading,
4113
4057
  .excalidraw .ExcButton.ExcButton--status-success {
4114
4058
  pointer-events: none;
4059
+ background-color: var(--color-success);
4115
4060
  }
4116
4061
  .excalidraw .ExcButton.ExcButton--status-loading .ExcButton__contents,
4117
4062
  .excalidraw .ExcButton.ExcButton--status-success .ExcButton__contents {
@@ -4598,28 +4543,28 @@
4598
4543
  padding: 0.75rem;
4599
4544
  }
4600
4545
  }
4601
- .excalidraw .chat-interface__empty-state {
4546
+ .excalidraw .chat-interface__welcome-screen {
4602
4547
  display: flex;
4603
4548
  align-items: center;
4604
4549
  justify-content: center;
4605
4550
  height: 100%;
4606
4551
  min-height: 200px;
4607
4552
  }
4608
- .excalidraw .chat-interface__empty-state-content {
4553
+ .excalidraw .chat-interface__welcome-screen__welcome-message {
4609
4554
  text-align: center;
4610
4555
  }
4611
- .excalidraw .chat-interface__empty-state-content h3 {
4556
+ .excalidraw .chat-interface__welcome-screen__welcome-message h3 {
4612
4557
  margin: 0 0 0.5rem 0;
4613
4558
  font-size: 1.25rem;
4614
4559
  font-weight: 600;
4615
4560
  }
4616
- .excalidraw .chat-interface__empty-state-content p {
4561
+ .excalidraw .chat-interface__welcome-screen__welcome-message p {
4617
4562
  margin: 0 0 0.2rem 0;
4618
4563
  font-size: 0.875rem;
4619
4564
  color: var(--color-on-surface);
4620
4565
  }
4621
4566
  @media screen and (max-width: 861px) {
4622
- .excalidraw .chat-interface__empty-state {
4567
+ .excalidraw .chat-interface__welcome-screen {
4623
4568
  min-height: 100px;
4624
4569
  }
4625
4570
  }
@@ -5091,6 +5036,39 @@
5091
5036
  height: 100%;
5092
5037
  }
5093
5038
  }
5039
+ .excalidraw .ttd-dialog-input--loading {
5040
+ display: flex;
5041
+ align-items: center;
5042
+ justify-content: center;
5043
+ }
5044
+ .excalidraw .ttd-dialog-input--codemirror {
5045
+ padding: 0;
5046
+ overflow: hidden;
5047
+ height: 0;
5048
+ flex: 1 1 0;
5049
+ min-height: 0;
5050
+ }
5051
+ .excalidraw .ttd-dialog-input--codemirror .cm-editor {
5052
+ height: 100%;
5053
+ font-family: monospace;
5054
+ }
5055
+ .excalidraw .ttd-dialog-input--codemirror .cm-editor.cm-focused {
5056
+ outline: none;
5057
+ }
5058
+ .excalidraw .ttd-dialog-input--codemirror .cm-scroller {
5059
+ padding: 0.85rem 0;
5060
+ overflow: auto;
5061
+ }
5062
+ .excalidraw .ttd-dialog-input--codemirror .cm-gutters {
5063
+ padding-left: 0.25rem;
5064
+ }
5065
+ .excalidraw .ttd-dialog-input--codemirror .cm-content {
5066
+ padding: 0;
5067
+ }
5068
+ .excalidraw .ttd-dialog-input--codemirror .cm-placeholder {
5069
+ color: var(--color-gray-40);
5070
+ font-style: italic;
5071
+ }
5094
5072
  .excalidraw .ttd-dialog-output-wrapper {
5095
5073
  display: flex;
5096
5074
  flex-direction: column;
@@ -5191,15 +5169,49 @@
5191
5169
  text-align: center;
5192
5170
  margin-top: 0.25rem;
5193
5171
  }
5172
+ .excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-summary {
5173
+ width: 100%;
5174
+ max-width: 640px;
5175
+ color: var(--color-gray-50);
5176
+ font-size: 0.9rem;
5177
+ text-align: left;
5178
+ }
5179
+ .excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-summary__headline {
5180
+ font-weight: 600;
5181
+ color: var(--color-gray-60);
5182
+ }
5183
+ .excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-summary__label {
5184
+ margin-top: 0.35rem;
5185
+ font-weight: 500;
5186
+ }
5187
+ .excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-summary__causes {
5188
+ margin: 0.35rem 0 0;
5189
+ padding-left: 2rem;
5190
+ }
5194
5191
  .excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-message {
5195
5192
  text-align: left;
5196
5193
  font-weight: 400;
5197
5194
  color: var(--color-gray-50);
5198
5195
  word-break: break-word;
5199
5196
  white-space: pre-wrap;
5200
- max-width: 100%;
5197
+ max-width: 640px;
5198
+ width: 100%;
5201
5199
  font-family: monospace;
5202
5200
  }
5201
+ .excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-message__caret {
5202
+ color: var(--color-danger);
5203
+ }
5204
+ .excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-autofix-slot {
5205
+ align-self: flex-start;
5206
+ margin-top: 0.35rem;
5207
+ min-height: 2.5rem;
5208
+ display: flex;
5209
+ align-items: flex-start;
5210
+ }
5211
+ .excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-autofix {
5212
+ margin-top: 0;
5213
+ white-space: nowrap;
5214
+ }
5203
5215
  .excalidraw .ttd-dialog-panels {
5204
5216
  height: 100%;
5205
5217
  }
@@ -5740,68 +5752,28 @@
5740
5752
  justify-content: space-between;
5741
5753
  align-items: center;
5742
5754
  font-size: 0.875rem;
5743
- column-gap: 0.5rem;
5744
- }
5745
- .excalidraw .HelpDialog__shortcut:last-child {
5746
- border-bottom: none;
5747
- }
5748
- .excalidraw .HelpDialog__key-container {
5749
- display: flex;
5750
- align-items: center;
5751
- column-gap: 0.25rem;
5752
- flex-shrink: 0;
5753
- }
5754
- .excalidraw .HelpDialog__key {
5755
- display: flex;
5756
- box-sizing: border-box;
5757
- font-size: 0.625rem;
5758
- background-color: var(--color-primary-light);
5759
- border-radius: var(--border-radius-md);
5760
- padding: 0.5rem;
5761
- word-break: keep-all;
5762
- align-items: center;
5763
- font-family: inherit;
5764
- line-height: 1;
5765
- }
5766
-
5767
- /* components/HintViewer.scss */
5768
- .excalidraw .HintViewer {
5769
- pointer-events: none;
5770
- box-sizing: border-box;
5771
- position: absolute;
5772
- display: flex;
5773
- flex-direction: column;
5774
- justify-content: center;
5775
- left: 0;
5776
- top: 100%;
5777
- max-width: 100%;
5778
- width: 100%;
5779
- margin-top: 0.5rem;
5780
- text-align: center;
5781
- color: var(--color-gray-40);
5782
- font-size: 0.75rem;
5783
- }
5784
- .excalidraw--mobile.excalidraw .HintViewer {
5785
- position: static;
5786
- padding-right: 2rem;
5787
- }
5788
- .excalidraw .HintViewer > span {
5789
- padding: 0.25rem;
5755
+ column-gap: 0.5rem;
5790
5756
  }
5791
- .excalidraw .HintViewer kbd {
5792
- display: inline-block;
5793
- margin: 0 1px;
5794
- font-family: monospace;
5795
- border: 1px solid var(--color-gray-40);
5796
- border-radius: 4px;
5797
- padding: 1px 3px;
5798
- font-size: 10px;
5757
+ .excalidraw .HelpDialog__shortcut:last-child {
5758
+ border-bottom: none;
5799
5759
  }
5800
- .excalidraw.theme--dark .HintViewer {
5801
- color: var(--color-gray-60);
5760
+ .excalidraw .HelpDialog__key-container {
5761
+ display: flex;
5762
+ align-items: center;
5763
+ column-gap: 0.25rem;
5764
+ flex-shrink: 0;
5802
5765
  }
5803
- .excalidraw.theme--dark .HintViewer kbd {
5804
- border-color: var(--color-gray-60);
5766
+ .excalidraw .HelpDialog__key {
5767
+ display: flex;
5768
+ box-sizing: border-box;
5769
+ font-size: 0.625rem;
5770
+ background-color: var(--color-primary-light);
5771
+ border-radius: var(--border-radius-md);
5772
+ padding: 0.5rem;
5773
+ word-break: keep-all;
5774
+ align-items: center;
5775
+ font-family: inherit;
5776
+ line-height: 1;
5805
5777
  }
5806
5778
 
5807
5779
  /* components/Switch.scss */
@@ -6098,6 +6070,9 @@
6098
6070
  max-width: calc(100% - var(--preview-padding) * 2);
6099
6071
  max-height: 25rem;
6100
6072
  }
6073
+ .excalidraw.theme--dark .ExportDialog__preview canvas {
6074
+ filter: none;
6075
+ }
6101
6076
  .excalidraw .ExportDialog__actions {
6102
6077
  width: 100%;
6103
6078
  display: flex;
@@ -6181,6 +6156,46 @@
6181
6156
  width: 0.9em;
6182
6157
  }
6183
6158
 
6159
+ /* components/HintViewer.scss */
6160
+ .excalidraw .HintViewer {
6161
+ pointer-events: none;
6162
+ box-sizing: border-box;
6163
+ position: absolute;
6164
+ display: flex;
6165
+ flex-direction: column;
6166
+ justify-content: center;
6167
+ left: 0;
6168
+ top: 100%;
6169
+ max-width: 100%;
6170
+ width: 100%;
6171
+ margin-top: 0.5rem;
6172
+ text-align: center;
6173
+ color: var(--color-gray-40);
6174
+ font-size: 0.75rem;
6175
+ }
6176
+ .excalidraw--mobile.excalidraw .HintViewer {
6177
+ position: static;
6178
+ padding-right: 2rem;
6179
+ }
6180
+ .excalidraw .HintViewer > span {
6181
+ padding: 0.25rem;
6182
+ }
6183
+ .excalidraw .HintViewer kbd {
6184
+ display: inline-block;
6185
+ margin: 0 1px;
6186
+ font-family: monospace;
6187
+ border: 1px solid var(--color-gray-40);
6188
+ border-radius: 4px;
6189
+ padding: 1px 3px;
6190
+ font-size: 10px;
6191
+ }
6192
+ .excalidraw.theme--dark .HintViewer {
6193
+ color: var(--color-gray-60);
6194
+ }
6195
+ .excalidraw.theme--dark .HintViewer kbd {
6196
+ border-color: var(--color-gray-60);
6197
+ }
6198
+
6184
6199
  /* components/LayerUI.scss */
6185
6200
  .excalidraw .layer-ui__wrapper.animate {
6186
6201
  transition: width 0.1s ease-in-out;
@@ -6274,6 +6289,19 @@
6274
6289
  margin-top: auto;
6275
6290
  margin-bottom: auto;
6276
6291
  }
6292
+ .excalidraw .App-menu_top__left > .ToolIcon__penMode {
6293
+ justify-self: start;
6294
+ margin-left: calc((48px - var(--lg-button-size)) / 2);
6295
+ }
6296
+ .excalidraw .App-menu_top__left > .ToolIcon__penMode .ToolIcon__icon {
6297
+ width: var(--lg-button-size);
6298
+ height: var(--lg-button-size);
6299
+ background-color: var(--island-bg-color);
6300
+ box-shadow: var(--shadow-island);
6301
+ }
6302
+ .excalidraw .App-menu_top__left > .ToolIcon__penMode.ToolIcon--checked .ToolIcon__icon {
6303
+ box-shadow: none;
6304
+ }
6277
6305
  .excalidraw .disable-view-mode {
6278
6306
  display: flex;
6279
6307
  justify-content: center;
@@ -6320,18 +6348,11 @@
6320
6348
  .excalidraw .App-toolbar--compact .ToolIcon__keybinding {
6321
6349
  display: none;
6322
6350
  }
6323
- .excalidraw .App-toolbar--compact .App-toolbar__divider {
6324
- margin: 0;
6325
- }
6326
6351
  .excalidraw .App-toolbar__divider {
6327
6352
  width: 1px;
6328
6353
  height: 1.5rem;
6329
6354
  align-self: center;
6330
6355
  background-color: var(--default-border-color);
6331
- margin: 0 0.25rem;
6332
- }
6333
- .excalidraw--mobile.excalidraw .App-toolbar__divider {
6334
- margin: 0;
6335
6356
  }
6336
6357
  .excalidraw .App-toolbar__extra-tools-trigger {
6337
6358
  box-shadow: none;
@@ -6347,8 +6368,8 @@
6347
6368
  }
6348
6369
  .excalidraw .App-toolbar__extra-tools-trigger--selected,
6349
6370
  .excalidraw .App-toolbar__extra-tools-trigger--selected:hover {
6350
- background: var(--color-primary-light);
6351
- color: var(--color-primary);
6371
+ background: var(--color-surface-primary-container);
6372
+ color: var(--color-on-primary-container);
6352
6373
  }
6353
6374
  .excalidraw .App-toolbar__extra-tools-dropdown {
6354
6375
  margin-top: 0.375rem;
@@ -6377,38 +6398,32 @@
6377
6398
  left: 0;
6378
6399
  }
6379
6400
 
6380
- /* components/Toast.scss */
6381
- .excalidraw .Toast {
6382
- animation: fade-in 0.5s;
6383
- background-color: var(--button-gray-1);
6384
- border-radius: 4px;
6385
- bottom: 10px;
6386
- box-sizing: border-box;
6387
- cursor: default;
6388
- left: 50%;
6389
- margin-left: -150px;
6390
- padding: 4px 0;
6391
- position: absolute;
6392
- text-align: center;
6393
- width: 300px;
6394
- z-index: 999999;
6395
- }
6396
- .excalidraw .Toast .Toast__message {
6397
- padding: 0 1.6rem;
6398
- color: var(--popup-text-color);
6399
- white-space: pre-wrap;
6400
- }
6401
- .excalidraw .Toast .close {
6401
+ /* components/CursorHint.scss */
6402
+ .excalidraw .CursorHint {
6402
6403
  position: absolute;
6403
6404
  top: 0;
6404
- right: 0;
6405
- padding: 0.4rem;
6405
+ left: 0;
6406
+ z-index: var(--zIndex-cursorHint);
6407
+ pointer-events: none;
6408
+ display: flex;
6409
+ align-items: center;
6410
+ justify-content: center;
6411
+ padding: 0.375rem;
6412
+ background-color: #232329;
6413
+ color: #e3e3e8;
6414
+ box-shadow: var(--shadow-island);
6415
+ border-radius: var(--border-radius-md);
6416
+ animation: CursorHint-fade-in 100ms ease-out;
6417
+ transition: opacity 100ms ease-out;
6406
6418
  }
6407
- .excalidraw .Toast .close .ToolIcon__icon {
6408
- width: 1.2rem;
6409
- height: 1.2rem;
6419
+ .excalidraw .CursorHint--fade-out {
6420
+ opacity: 0;
6410
6421
  }
6411
- @keyframes fade-in {
6422
+ .excalidraw .CursorHint svg {
6423
+ width: 1rem;
6424
+ height: 1rem;
6425
+ }
6426
+ @keyframes CursorHint-fade-in {
6412
6427
  from {
6413
6428
  opacity: 0;
6414
6429
  }
@@ -6588,7 +6603,7 @@
6588
6603
  .excalidraw.theme--dark .welcome-screen-decor {
6589
6604
  color: var(--color-gray-60);
6590
6605
  }
6591
- @media (max-height: 599px) {
6606
+ @media (max-height: 780px) {
6592
6607
  .excalidraw .welcome-screen-decor-hint {
6593
6608
  display: none !important;
6594
6609
  }
@@ -6684,6 +6699,7 @@
6684
6699
  .excalidraw .welcome-screen-center__heading {
6685
6700
  font-size: 1.125rem;
6686
6701
  text-align: center;
6702
+ line-height: 1.35rem;
6687
6703
  }
6688
6704
  .excalidraw .welcome-screen-menu {
6689
6705
  display: flex;
@@ -6841,9 +6857,13 @@
6841
6857
  --popup-text-inverted-color: #fff;
6842
6858
  --select-highlight-color: #339af0;
6843
6859
  --shadow-island:
6844
- 0px 0px 0.9310142993927002px 0px rgba(0, 0, 0, 0.17),
6845
- 0px 0px 3.1270833015441895px 0px rgba(0, 0, 0, 0.08),
6860
+ 0px 0px 1px 0px rgba(0, 0, 0, 0.17),
6861
+ 0px 0px 3px 0px rgba(0, 0, 0, 0.08),
6846
6862
  0px 7px 14px 0px rgba(0, 0, 0, 0.05);
6863
+ --shadow-island-stronger:
6864
+ 0px 0px 1px 0px rgba(0, 0, 0, 0.17),
6865
+ 0px 0px 3px 0px rgba(0, 0, 0, 0.08),
6866
+ 0px 7px 14px 0px rgb(0 0 0 / 18%);
6847
6867
  --button-hover-bg: var(--color-surface-high);
6848
6868
  --button-active-bg: var(--color-surface-high);
6849
6869
  --button-active-border: var(--color-brand-active);
@@ -7004,10 +7024,6 @@
7004
7024
  --popup-text-color: #ced4da;
7005
7025
  --popup-text-inverted-color: #2c2c2c;
7006
7026
  --select-highlight-color: #4dabf7;
7007
- --shadow-island:
7008
- 0px 0px 0.9310142993927002px 0px rgba(0, 0, 0, 0.17),
7009
- 0px 0px 3.1270833015441895px 0px rgba(0, 0, 0, 0.08),
7010
- 0px 7px 14px 0px rgba(0, 0, 0, 0.05);
7011
7027
  --modal-shadow:
7012
7028
  0px 100px 80px rgba(0, 0, 0, 0.07),
7013
7029
  0px 41.7776px 33.4221px rgba(0, 0, 0, 0.0503198),
@@ -7068,13 +7084,16 @@
7068
7084
  --zIndex-wysiwyg: 3;
7069
7085
  --zIndex-canvasButtons: 3;
7070
7086
  --zIndex-layerUI: 4;
7087
+ --zIndex-viewportStatusFrame: 5;
7071
7088
  --zIndex-eyeDropperBackdrop: 5;
7072
7089
  --zIndex-eyeDropperPreview: 6;
7073
7090
  --zIndex-hyperlinkContainer: 7;
7091
+ --zIndex-cursorHint: 8;
7074
7092
  --zIndex-ui-bottom: 60;
7075
7093
  --zIndex-ui-context-menu: 90;
7076
7094
  --zIndex-ui-styles-popup: 100;
7077
7095
  --zIndex-ui-top: 100;
7096
+ --zIndex-ui-main-menu: 110;
7078
7097
  --zIndex-ui-library: 120;
7079
7098
  --zIndex-modal: 1000;
7080
7099
  --zIndex-popup: 1001;
@@ -7102,6 +7121,7 @@ body.excalidraw-cursor-resize * {
7102
7121
  Helvetica,
7103
7122
  Arial,
7104
7123
  sans-serif;
7124
+ --viewport-status-frame-border-width: 0px;
7105
7125
  font-family: var(--ui-font);
7106
7126
  position: relative;
7107
7127
  overflow: hidden;
@@ -7115,6 +7135,10 @@ body.excalidraw-cursor-resize * {
7115
7135
  width: 100%;
7116
7136
  user-select: none;
7117
7137
  }
7138
+ .exc-style.excalidraw--viewport-status-border,
7139
+ .excalidraw.excalidraw--viewport-status-border {
7140
+ --viewport-status-frame-border-width: 4px;
7141
+ }
7118
7142
  .exc-style button,
7119
7143
  .excalidraw button {
7120
7144
  font-size: 0.8333rem;
@@ -7270,6 +7294,9 @@ body.excalidraw-cursor-resize * {
7270
7294
  outline: transparent;
7271
7295
  box-shadow: 0 0 0 1px var(--color-brand-hover);
7272
7296
  }
7297
+ .excalidraw [data-radix-collection-item]:focus-visible {
7298
+ box-shadow: none !important;
7299
+ }
7273
7300
  .excalidraw .buttonList .ToolIcon__icon {
7274
7301
  all: unset !important;
7275
7302
  display: flex !important;
@@ -7316,19 +7343,28 @@ body.excalidraw-cursor-resize * {
7316
7343
  border-color: var(--button-active-border, var(--color-primary-darkest));
7317
7344
  }
7318
7345
  .excalidraw .buttonList label.active,
7346
+ .excalidraw .buttonList label.ToolIcon--checked,
7319
7347
  .excalidraw .buttonList button.active,
7320
- .excalidraw .buttonList .zIndexButton.active {
7348
+ .excalidraw .buttonList button.ToolIcon--checked,
7349
+ .excalidraw .buttonList .zIndexButton.active,
7350
+ .excalidraw .buttonList .zIndexButton.ToolIcon--checked {
7321
7351
  background-color: var(--button-selected-bg, var(--color-surface-primary-container));
7322
7352
  border-color: var(--button-selected-border, var(--color-surface-primary-container));
7323
7353
  }
7324
7354
  .excalidraw .buttonList label.active:hover,
7355
+ .excalidraw .buttonList label.ToolIcon--checked:hover,
7325
7356
  .excalidraw .buttonList button.active:hover,
7326
- .excalidraw .buttonList .zIndexButton.active:hover {
7357
+ .excalidraw .buttonList button.ToolIcon--checked:hover,
7358
+ .excalidraw .buttonList .zIndexButton.active:hover,
7359
+ .excalidraw .buttonList .zIndexButton.ToolIcon--checked:hover {
7327
7360
  background-color: var(--button-selected-hover-bg, var(--color-surface-primary-container));
7328
7361
  }
7329
7362
  .excalidraw .buttonList label.active svg,
7363
+ .excalidraw .buttonList label.ToolIcon--checked svg,
7330
7364
  .excalidraw .buttonList button.active svg,
7331
- .excalidraw .buttonList .zIndexButton.active svg {
7365
+ .excalidraw .buttonList button.ToolIcon--checked svg,
7366
+ .excalidraw .buttonList .zIndexButton.active svg,
7367
+ .excalidraw .buttonList .zIndexButton.ToolIcon--checked svg {
7332
7368
  color: var(--button-color, var(--color-on-primary-container));
7333
7369
  }
7334
7370
  .excalidraw--mobile.excalidraw .buttonList label,
@@ -7348,11 +7384,80 @@ body.excalidraw-cursor-resize * {
7348
7384
  width: var(--default-icon-size);
7349
7385
  height: var(--default-icon-size);
7350
7386
  }
7387
+ .excalidraw button.standalone {
7388
+ display: flex;
7389
+ justify-content: center;
7390
+ align-items: center;
7391
+ padding: 0.625rem;
7392
+ width: var(--button-width, var(--default-button-size));
7393
+ height: var(--button-height, var(--default-button-size));
7394
+ box-sizing: border-box;
7395
+ border-width: 1px;
7396
+ border-style: solid;
7397
+ border-color: var(--button-border, var(--default-border-color));
7398
+ border-radius: var(--border-radius-lg);
7399
+ cursor: pointer;
7400
+ background-color: var(--button-bg, var(--island-bg-color));
7401
+ color: var(--button-color, var(--color-on-surface));
7402
+ font-family: var(--ui-font);
7403
+ }
7404
+ .excalidraw button.standalone svg {
7405
+ width: var(--button-width, var(--lg-icon-size));
7406
+ height: var(--button-height, var(--lg-icon-size));
7407
+ }
7408
+ .excalidraw button.standalone:hover {
7409
+ background-color: var(--button-hover-bg, var(--island-bg-color));
7410
+ border-color: var(--button-hover-border, var(--button-border, var(--default-border-color)));
7411
+ color: var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)));
7412
+ }
7413
+ .excalidraw button.standalone:active {
7414
+ background-color: var(--button-active-bg, var(--island-bg-color));
7415
+ border-color: var(--button-active-border, var(--color-primary-darkest));
7416
+ }
7417
+ .excalidraw button.standalone.active,
7418
+ .excalidraw button.standalone.ToolIcon--checked {
7419
+ background-color: var(--button-selected-bg, var(--color-surface-primary-container));
7420
+ border-color: var(--button-selected-border, var(--color-surface-primary-container));
7421
+ }
7422
+ .excalidraw button.standalone.active:hover,
7423
+ .excalidraw button.standalone.ToolIcon--checked:hover {
7424
+ background-color: var(--button-selected-hover-bg, var(--color-surface-primary-container));
7425
+ }
7426
+ .excalidraw button.standalone.active svg,
7427
+ .excalidraw button.standalone.ToolIcon--checked svg {
7428
+ color: var(--button-color, var(--color-on-primary-container));
7429
+ }
7430
+ .excalidraw--mobile.excalidraw button.standalone {
7431
+ width: var(--mobile-action-button-size, var(--default-button-size));
7432
+ height: var(--mobile-action-button-size, var(--default-button-size));
7433
+ }
7434
+ .excalidraw button.standalone {
7435
+ padding: 0;
7436
+ }
7437
+ .excalidraw button.standalone svg {
7438
+ width: var(--default-icon-size);
7439
+ height: var(--default-icon-size);
7440
+ }
7441
+ .excalidraw button.standalone .ToolIcon__icon {
7442
+ all: unset !important;
7443
+ display: flex !important;
7444
+ }
7445
+ .excalidraw button.standalone > * {
7446
+ pointer-events: none;
7447
+ }
7351
7448
  .excalidraw .App-top-bar {
7352
7449
  z-index: var(--zIndex-ui-top);
7353
7450
  display: flex;
7354
7451
  flex-direction: column;
7355
7452
  }
7453
+ .excalidraw .viewport-status-frame__badge-row {
7454
+ position: absolute;
7455
+ top: calc(var(--viewport-status-frame-border-width) + 0.5rem);
7456
+ left: 50%;
7457
+ transform: translateX(-50%);
7458
+ z-index: var(--zIndex-viewportStatusFrame);
7459
+ pointer-events: none;
7460
+ }
7356
7461
  .excalidraw .App-welcome-screen {
7357
7462
  z-index: var(--zIndex-layerUI);
7358
7463
  }
@@ -7441,8 +7546,23 @@ body.excalidraw-cursor-resize * {
7441
7546
  grid-gap: 3rem;
7442
7547
  }
7443
7548
  }
7444
- .excalidraw .App-menu_top > *:first-child {
7445
- justify-self: flex-start;
7549
+ .excalidraw .App-menu_top > .App-menu_top__left {
7550
+ grid-column: 1;
7551
+ justify-self: start;
7552
+ pointer-events: none;
7553
+ }
7554
+ .excalidraw .App-menu_top > .App-menu_top__left .selected-shape-actions-container,
7555
+ .excalidraw .App-menu_top > .App-menu_top__left .ToolIcon__penMode {
7556
+ pointer-events: var(--ui-pointerEvents);
7557
+ }
7558
+ .excalidraw .App-menu_top > .App-menu_top__left .excalidraw-ui-top-left {
7559
+ pointer-events: none;
7560
+ }
7561
+ .excalidraw .App-menu_top > .App-menu_top__left .excalidraw-ui-top-left > * {
7562
+ pointer-events: var(--ui-pointerEvents);
7563
+ }
7564
+ .excalidraw .App-menu_top > .shapes-section {
7565
+ grid-column: 2;
7446
7566
  }
7447
7567
  .excalidraw .selected-shape-actions-container {
7448
7568
  width: fit-content;
@@ -7450,8 +7570,9 @@ body.excalidraw-cursor-resize * {
7450
7570
  .excalidraw .selected-shape-actions-container--compact {
7451
7571
  min-width: 48px;
7452
7572
  }
7453
- .excalidraw .App-menu_top > *:last-child {
7454
- justify-self: flex-end;
7573
+ .excalidraw .App-menu_top > .layer-ui__wrapper__top-right {
7574
+ grid-column: 3;
7575
+ justify-self: end;
7455
7576
  }
7456
7577
  .excalidraw .App-menu_bottom {
7457
7578
  position: absolute;
@@ -7540,6 +7661,8 @@ body.excalidraw-cursor-resize * {
7540
7661
  left: 50%;
7541
7662
  bottom: 30px;
7542
7663
  transform: translateX(-50%);
7664
+ box-sizing: border-box;
7665
+ max-width: calc(100% - var(--viewport-status-frame-border-width) - var(--viewport-status-frame-border-width));
7543
7666
  pointer-events: var(--ui-pointerEvents);
7544
7667
  font-family: inherit;
7545
7668
  }
@@ -7549,6 +7672,32 @@ body.excalidraw-cursor-resize * {
7549
7672
  .excalidraw .scroll-back-to-content:active {
7550
7673
  border: 1px solid var(--button-active-border);
7551
7674
  }
7675
+ .excalidraw .floating-status-stack {
7676
+ position: absolute;
7677
+ left: var(--viewport-status-frame-border-width);
7678
+ right: var(--viewport-status-frame-border-width);
7679
+ bottom: calc(0.5rem + var(--viewport-status-frame-border-width));
7680
+ display: flex;
7681
+ flex-direction: column;
7682
+ align-items: center;
7683
+ gap: 0.5rem;
7684
+ pointer-events: none;
7685
+ }
7686
+ .excalidraw .floating-status-stack .scroll-back-to-content {
7687
+ position: static;
7688
+ left: auto;
7689
+ bottom: auto;
7690
+ transform: none;
7691
+ max-width: 100%;
7692
+ pointer-events: var(--ui-pointerEvents);
7693
+ }
7694
+ .excalidraw .App-bottom-bar > .floating-status-stack {
7695
+ position: static;
7696
+ left: auto;
7697
+ right: auto;
7698
+ bottom: auto;
7699
+ margin-bottom: 0.5rem;
7700
+ }
7552
7701
  .excalidraw .help-icon {
7553
7702
  display: flex;
7554
7703
  justify-content: center;
@@ -7584,14 +7733,17 @@ body.excalidraw-cursor-resize * {
7584
7733
  background-color: var(--button-active-bg, var(--island-bg-color));
7585
7734
  border-color: var(--button-active-border, var(--color-primary-darkest));
7586
7735
  }
7587
- .excalidraw .help-icon.active {
7736
+ .excalidraw .help-icon.active,
7737
+ .excalidraw .help-icon.ToolIcon--checked {
7588
7738
  background-color: var(--button-selected-bg, var(--color-surface-primary-container));
7589
7739
  border-color: var(--button-selected-border, var(--color-surface-primary-container));
7590
7740
  }
7591
- .excalidraw .help-icon.active:hover {
7741
+ .excalidraw .help-icon.active:hover,
7742
+ .excalidraw .help-icon.ToolIcon--checked:hover {
7592
7743
  background-color: var(--button-selected-hover-bg, var(--color-surface-primary-container));
7593
7744
  }
7594
- .excalidraw .help-icon.active svg {
7745
+ .excalidraw .help-icon.active svg,
7746
+ .excalidraw .help-icon.ToolIcon--checked svg {
7595
7747
  color: var(--button-color, var(--color-on-primary-container));
7596
7748
  }
7597
7749
  .excalidraw--mobile.excalidraw .help-icon {
@@ -7631,9 +7783,9 @@ body.excalidraw-cursor-resize * {
7631
7783
  .excalidraw--mobile.excalidraw aside {
7632
7784
  display: none;
7633
7785
  }
7634
- .excalidraw--mobile.excalidraw .scroll-back-to-content {
7635
- bottom: calc(100px + var(--sab, 0));
7636
- z-index: -1;
7786
+ .excalidraw--mobile.excalidraw .floating-status-stack {
7787
+ bottom: calc(30px + var(--sab, 0));
7788
+ z-index: var(--zIndex-ui-bottom);
7637
7789
  }
7638
7790
  :root[dir=rtl] .excalidraw .rtl-mirror {
7639
7791
  transform: scaleX(-1);
@@ -7659,6 +7811,25 @@ body.excalidraw-cursor-resize * {
7659
7811
  display: flex;
7660
7812
  justify-content: space-between;
7661
7813
  }
7814
+ .excalidraw.excalidraw--non-interactive {
7815
+ user-select: none;
7816
+ }
7817
+ .excalidraw.excalidraw--non-interactive canvas {
7818
+ touch-action: pan-x pan-y;
7819
+ cursor: default;
7820
+ }
7821
+ .excalidraw.excalidraw--non-interactive.excalidraw--allow-browser-zoom canvas {
7822
+ touch-action: auto;
7823
+ }
7824
+ .excalidraw.excalidraw--non-interactive.excalidraw--navigation canvas {
7825
+ touch-action: none;
7826
+ }
7827
+ .excalidraw.excalidraw--non-interactive.excalidraw--tools canvas {
7828
+ touch-action: none;
7829
+ }
7830
+ .excalidraw.excalidraw--non-interactive:not(.excalidraw--embeds) .excalidraw__embeddable-container__inner {
7831
+ pointer-events: none !important;
7832
+ }
7662
7833
  .excalidraw input.is-redacted {
7663
7834
  -webkit-text-security: disc;
7664
7835
  }
@@ -7763,6 +7934,9 @@ body.excalidraw-cursor-resize * {
7763
7934
  margin: 0 0 0.25rem;
7764
7935
  padding: 0;
7765
7936
  }
7937
+ .excalidraw .main-menu {
7938
+ z-index: var(--zIndex-ui-main-menu);
7939
+ }
7766
7940
  .excalidraw .main-menu-trigger {
7767
7941
  border: none;
7768
7942
  box-shadow: 0 0 0 1px var(--color-surface-lowest);
@@ -7846,17 +8020,46 @@ body.excalidraw-cursor-resize * {
7846
8020
  font-size: 0.8em;
7847
8021
  }
7848
8022
  .excalidraw__embeddable-container .excalidraw__embeddable-container__inner {
8023
+ position: relative;
7849
8024
  overflow: hidden;
7850
8025
  display: flex;
7851
8026
  align-items: center;
7852
8027
  justify-content: center;
7853
8028
  border-radius: var(--embeddable-radius);
7854
8029
  }
8030
+ .excalidraw__embeddable-container .excalidraw__embeddable__generating {
8031
+ position: absolute;
8032
+ z-index: 1;
8033
+ bottom: 1rem;
8034
+ right: 1rem;
8035
+ display: flex;
8036
+ align-items: center;
8037
+ gap: 0.5rem;
8038
+ padding: 0.375rem 0.75rem;
8039
+ border-radius: 12px;
8040
+ background: rgba(0, 0, 0, 0.5);
8041
+ color: #fff;
8042
+ font-size: 0.875rem;
8043
+ font-family: "Assistant";
8044
+ pointer-events: none;
8045
+ }
8046
+ .excalidraw__embeddable-container .excalidraw__embeddable__generating .Spinner {
8047
+ --spinner-color: #fff;
8048
+ flex: 0 0 auto;
8049
+ height: auto;
8050
+ margin: 0;
8051
+ }
7855
8052
  .excalidraw__embeddable-container .excalidraw__embeddable__outer {
7856
8053
  width: 100%;
7857
8054
  height: 100%;
7858
8055
  }
7859
- .excalidraw__embeddable-container .excalidraw__embeddable__outer > * {
8056
+ .excalidraw__embeddable-container .excalidraw__embeddable__content {
8057
+ width: 100%;
8058
+ height: 100%;
8059
+ transform-origin: top left;
8060
+ }
8061
+ .excalidraw__embeddable-container .excalidraw__embeddable__content,
8062
+ .excalidraw__embeddable-container .excalidraw__embeddable__content > * {
7860
8063
  border-radius: var(--embeddable-radius);
7861
8064
  }
7862
8065
  .excalidraw__embeddable-container .excalidraw__embeddable-hint {