@excalidraw/excalidraw 0.18.0-c141960 → 0.18.0-c158187
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.
- package/dist/dev/{chunk-SJTAY27F.js → chunk-5A4X24JB.js} +135 -107
- package/dist/dev/chunk-5A4X24JB.js.map +7 -0
- package/dist/dev/{chunk-FB2NA5UG.js → chunk-6JJSWC4C.js} +1 -1
- package/dist/dev/{chunk-FB2NA5UG.js.map → chunk-6JJSWC4C.js.map} +2 -2
- package/dist/dev/{chunk-PMQWN2AA.js → chunk-DJHLEOOZ.js} +13 -13
- package/dist/dev/{chunk-PMQWN2AA.js.map → chunk-DJHLEOOZ.js.map} +1 -1
- package/dist/dev/{chunk-AWYOLLYX.js → chunk-OCFTI2BU.js} +2 -2
- package/dist/dev/{chunk-AWYOLLYX.js.map → chunk-OCFTI2BU.js.map} +1 -1
- package/dist/dev/data/{image-S2GFZH7W.js → image-Q6JHR7OE.js} +2 -2
- package/dist/dev/index.css +1 -3
- package/dist/dev/index.css.map +2 -2
- package/dist/dev/index.js +796 -1307
- package/dist/dev/index.js.map +4 -4
- package/dist/dev/locales/{ar-SA-USQAA427.js → ar-SA-JK5MQ7TT.js} +2 -1
- package/dist/dev/locales/{ar-SA-USQAA427.js.map → ar-SA-JK5MQ7TT.js.map} +2 -2
- package/dist/dev/locales/{az-AZ-CVQRXULV.js → az-AZ-2PAD62G4.js} +2 -1
- package/dist/dev/locales/{az-AZ-CVQRXULV.js.map → az-AZ-2PAD62G4.js.map} +2 -2
- package/dist/dev/locales/{bg-BG-E4I2JVOQ.js → bg-BG-HUKVYCRK.js} +2 -1
- package/dist/dev/locales/{bg-BG-E4I2JVOQ.js.map → bg-BG-HUKVYCRK.js.map} +2 -2
- package/dist/dev/locales/{bn-BD-O55ROP2R.js → bn-BD-V2CQI46P.js} +2 -1
- package/dist/dev/locales/{bn-BD-O55ROP2R.js.map → bn-BD-V2CQI46P.js.map} +2 -2
- package/dist/dev/locales/{bn-IN-OL7OUKTP.js → bn-IN-MBEO4C3J.js} +2 -1
- package/dist/dev/locales/{bn-IN-OL7OUKTP.js.map → bn-IN-MBEO4C3J.js.map} +2 -2
- package/dist/dev/locales/{ca-ES-73KY52DM.js → ca-ES-KWEKW4C3.js} +2 -1
- package/dist/dev/locales/{ca-ES-73KY52DM.js.map → ca-ES-KWEKW4C3.js.map} +2 -2
- package/dist/dev/locales/{cs-CZ-2YGHPQ24.js → cs-CZ-W5AHZB5H.js} +2 -1
- package/dist/dev/locales/{cs-CZ-2YGHPQ24.js.map → cs-CZ-W5AHZB5H.js.map} +2 -2
- package/dist/dev/locales/{da-DK-OEIZIPJU.js → da-DK-ITTM6YM4.js} +2 -1
- package/dist/dev/locales/{da-DK-OEIZIPJU.js.map → da-DK-ITTM6YM4.js.map} +2 -2
- package/dist/dev/locales/{de-CH-4GJTW23D.js → de-CH-OAWPDQFJ.js} +2 -1
- package/dist/dev/locales/{de-CH-4GJTW23D.js.map → de-CH-OAWPDQFJ.js.map} +2 -2
- package/dist/dev/locales/{de-DE-YRH6WMM5.js → de-DE-ZRDYEPMS.js} +8 -7
- package/dist/dev/locales/de-DE-ZRDYEPMS.js.map +7 -0
- package/dist/dev/locales/{el-GR-W7S64QNM.js → el-GR-QXASZLPE.js} +2 -1
- package/dist/dev/locales/el-GR-QXASZLPE.js.map +7 -0
- package/dist/dev/locales/{en-ZO6QSABV.js → en-MLZIHOCR.js} +2 -2
- package/dist/dev/locales/{es-ES-7JEN5PTZ.js → es-ES-VLQBB7FJ.js} +4 -3
- package/dist/dev/locales/es-ES-VLQBB7FJ.js.map +7 -0
- package/dist/dev/locales/{eu-ES-HQNHU6VR.js → eu-ES-TF2DGTZU.js} +2 -1
- package/dist/dev/locales/{eu-ES-HQNHU6VR.js.map → eu-ES-TF2DGTZU.js.map} +2 -2
- package/dist/dev/locales/{fa-IR-IN6XOPA6.js → fa-IR-ITKFQ7QV.js} +2 -1
- package/dist/dev/locales/{fa-IR-IN6XOPA6.js.map → fa-IR-ITKFQ7QV.js.map} +2 -2
- package/dist/dev/locales/{fi-FI-5BAAYJDZ.js → fi-FI-UWZRVXFI.js} +2 -1
- package/dist/dev/locales/{fi-FI-5BAAYJDZ.js.map → fi-FI-UWZRVXFI.js.map} +2 -2
- package/dist/dev/locales/{fr-FR-KCXBY2R4.js → fr-FR-A72LKGCO.js} +2 -1
- package/dist/dev/locales/{fr-FR-KCXBY2R4.js.map → fr-FR-A72LKGCO.js.map} +2 -2
- package/dist/dev/locales/{gl-ES-5OPGWS6N.js → gl-ES-2QCVIBFP.js} +2 -1
- package/dist/dev/locales/{gl-ES-5OPGWS6N.js.map → gl-ES-2QCVIBFP.js.map} +2 -2
- package/dist/dev/locales/{he-IL-3A6ZWK6L.js → he-IL-WJNUHU26.js} +2 -1
- package/dist/dev/locales/{he-IL-3A6ZWK6L.js.map → he-IL-WJNUHU26.js.map} +2 -2
- package/dist/dev/locales/{hi-IN-HZTBH6EG.js → hi-IN-XGMO235V.js} +2 -1
- package/dist/dev/locales/{hi-IN-HZTBH6EG.js.map → hi-IN-XGMO235V.js.map} +2 -2
- package/dist/dev/locales/{hu-HU-52IRZEAZ.js → hu-HU-37FDQFIS.js} +2 -1
- package/dist/dev/locales/{hu-HU-52IRZEAZ.js.map → hu-HU-37FDQFIS.js.map} +2 -2
- package/dist/dev/locales/{id-ID-W6HBGXTS.js → id-ID-EJIDCO4E.js} +2 -1
- package/dist/dev/locales/{id-ID-W6HBGXTS.js.map → id-ID-EJIDCO4E.js.map} +2 -2
- package/dist/dev/locales/{it-IT-AV75ICYT.js → it-IT-X34PIOJ2.js} +49 -48
- package/dist/dev/locales/it-IT-X34PIOJ2.js.map +7 -0
- package/dist/dev/locales/{ja-JP-SS4G3ZXF.js → ja-JP-37FC23PR.js} +28 -27
- package/dist/dev/locales/ja-JP-37FC23PR.js.map +7 -0
- package/dist/dev/locales/{kaa-Y5BBB3IW.js → kaa-7ZYDFVKA.js} +2 -1
- package/dist/dev/locales/{kaa-Y5BBB3IW.js.map → kaa-7ZYDFVKA.js.map} +2 -2
- package/dist/dev/locales/{kab-KAB-KDVZQXBT.js → kab-KAB-MILWXBA6.js} +2 -1
- package/dist/dev/locales/{kab-KAB-KDVZQXBT.js.map → kab-KAB-MILWXBA6.js.map} +2 -2
- package/dist/dev/locales/{kk-KZ-762YODLJ.js → kk-KZ-7BWTPIAV.js} +2 -1
- package/dist/dev/locales/kk-KZ-7BWTPIAV.js.map +7 -0
- package/dist/dev/locales/{km-KH-K2TE5MIK.js → km-KH-BV4P2KSZ.js} +2 -1
- package/dist/dev/locales/{km-KH-K2TE5MIK.js.map → km-KH-BV4P2KSZ.js.map} +2 -2
- package/dist/dev/locales/{ko-KR-75RUMBCO.js → ko-KR-TSXE5P7B.js} +2 -1
- package/dist/dev/locales/{ko-KR-75RUMBCO.js.map → ko-KR-TSXE5P7B.js.map} +2 -2
- package/dist/dev/locales/{ku-TR-E6DJ6LYM.js → ku-TR-ASSXNN3U.js} +2 -1
- package/dist/dev/locales/{ku-TR-E6DJ6LYM.js.map → ku-TR-ASSXNN3U.js.map} +2 -2
- package/dist/dev/locales/{lt-LT-BYS5DA45.js → lt-LT-G7RZYQQU.js} +2 -1
- package/dist/dev/locales/{lt-LT-BYS5DA45.js.map → lt-LT-G7RZYQQU.js.map} +2 -2
- package/dist/dev/locales/{lv-LV-SPQ2VWX3.js → lv-LV-DXNPBJZU.js} +2 -1
- package/dist/dev/locales/{lv-LV-SPQ2VWX3.js.map → lv-LV-DXNPBJZU.js.map} +2 -2
- package/dist/dev/locales/{mr-IN-2HLK6LUA.js → mr-IN-7F2ZCTCF.js} +2 -1
- package/dist/dev/locales/{mr-IN-2HLK6LUA.js.map → mr-IN-7F2ZCTCF.js.map} +2 -2
- package/dist/dev/locales/{my-MM-P2LR44WR.js → my-MM-NBI3KQGW.js} +2 -1
- package/dist/dev/locales/{my-MM-P2LR44WR.js.map → my-MM-NBI3KQGW.js.map} +2 -2
- package/dist/dev/locales/{nb-NO-7YZHFFVS.js → nb-NO-4DCTQT6L.js} +2 -1
- package/dist/dev/locales/{nb-NO-7YZHFFVS.js.map → nb-NO-4DCTQT6L.js.map} +2 -2
- package/dist/dev/locales/{nl-NL-TF2OVIKN.js → nl-NL-XGZJ7V2V.js} +226 -225
- package/dist/dev/locales/nl-NL-XGZJ7V2V.js.map +7 -0
- package/dist/dev/locales/{nn-NO-2BWEL2IS.js → nn-NO-FR534JV5.js} +2 -1
- package/dist/dev/locales/{nn-NO-2BWEL2IS.js.map → nn-NO-FR534JV5.js.map} +2 -2
- package/dist/dev/locales/{oc-FR-5JYIFGLE.js → oc-FR-YQCIKZIK.js} +56 -55
- package/dist/dev/locales/oc-FR-YQCIKZIK.js.map +7 -0
- package/dist/dev/locales/{pa-IN-KBBGER76.js → pa-IN-UM43JGD2.js} +2 -1
- package/dist/dev/locales/{pa-IN-KBBGER76.js.map → pa-IN-UM43JGD2.js.map} +2 -2
- package/dist/dev/locales/{percentages-2RAYDWNS.js → percentages-OGWD7R2K.js} +2 -2
- package/dist/dev/locales/{pl-PL-BWZ2X734.js → pl-PL-2UGKA6HK.js} +2 -1
- package/dist/dev/locales/{pl-PL-BWZ2X734.js.map → pl-PL-2UGKA6HK.js.map} +2 -2
- package/dist/dev/locales/{pt-BR-ERVIQI63.js → pt-BR-H23QFYE3.js} +3 -2
- package/dist/dev/locales/pt-BR-H23QFYE3.js.map +7 -0
- package/dist/dev/locales/{pt-PT-ZNJ5NB5S.js → pt-PT-RHKJH5I5.js} +2 -1
- package/dist/dev/locales/{pt-PT-ZNJ5NB5S.js.map → pt-PT-RHKJH5I5.js.map} +2 -2
- package/dist/dev/locales/{ro-RO-UYNXGUB7.js → ro-RO-IIFONL3T.js} +2 -1
- package/dist/dev/locales/{ro-RO-UYNXGUB7.js.map → ro-RO-IIFONL3T.js.map} +2 -2
- package/dist/dev/locales/{ru-RU-F7LPIMGQ.js → ru-RU-QEP6D7GK.js} +49 -48
- package/dist/dev/locales/ru-RU-QEP6D7GK.js.map +7 -0
- package/dist/dev/locales/{si-LK-5GF2DJUH.js → si-LK-LZYJQLHF.js} +2 -1
- package/dist/dev/locales/{si-LK-5GF2DJUH.js.map → si-LK-LZYJQLHF.js.map} +2 -2
- package/dist/dev/locales/{sk-SK-H6WE7IJX.js → sk-SK-RWC6UWGY.js} +49 -48
- package/dist/dev/locales/sk-SK-RWC6UWGY.js.map +7 -0
- package/dist/dev/locales/{sl-SI-4PJ6LBI7.js → sl-SI-QJT2CAUO.js} +2 -1
- package/dist/dev/locales/{sl-SI-4PJ6LBI7.js.map → sl-SI-QJT2CAUO.js.map} +2 -2
- package/dist/dev/locales/{sv-SE-E5VQLCRE.js → sv-SE-3MAT3NDX.js} +5 -4
- package/dist/dev/locales/sv-SE-3MAT3NDX.js.map +7 -0
- package/dist/dev/locales/{ta-IN-2YWIVLKF.js → ta-IN-J7XOYF2T.js} +2 -1
- package/dist/dev/locales/{ta-IN-2YWIVLKF.js.map → ta-IN-J7XOYF2T.js.map} +2 -2
- package/dist/dev/locales/{th-TH-IV7RUTDK.js → th-TH-2OI52EOQ.js} +2 -1
- package/dist/dev/locales/{th-TH-IV7RUTDK.js.map → th-TH-2OI52EOQ.js.map} +2 -2
- package/dist/dev/locales/{tr-TR-LEQWIQH7.js → tr-TR-G7TAUHUI.js} +2 -1
- package/dist/dev/locales/{tr-TR-LEQWIQH7.js.map → tr-TR-G7TAUHUI.js.map} +2 -2
- package/dist/dev/locales/{uk-UA-DWVOQPTB.js → uk-UA-IVSVBJIG.js} +2 -1
- package/dist/dev/locales/{uk-UA-DWVOQPTB.js.map → uk-UA-IVSVBJIG.js.map} +2 -2
- package/dist/dev/locales/{uz-UZ-CKXQ3QKG.js → uz-UZ-KCVDUVDE.js} +2 -1
- package/dist/dev/locales/{uz-UZ-CKXQ3QKG.js.map → uz-UZ-KCVDUVDE.js.map} +2 -2
- package/dist/dev/locales/{vi-VN-3P6DZOGS.js → vi-VN-KBZAVWP5.js} +4 -3
- package/dist/dev/locales/{vi-VN-3P6DZOGS.js.map → vi-VN-KBZAVWP5.js.map} +2 -2
- package/dist/dev/locales/{zh-CN-XXVG53TQ.js → zh-CN-IS26RG2D.js} +2 -1
- package/dist/dev/locales/{zh-CN-XXVG53TQ.js.map → zh-CN-IS26RG2D.js.map} +2 -2
- package/dist/dev/locales/{zh-HK-JCHGKEUE.js → zh-HK-KBWQ6SJC.js} +2 -1
- package/dist/dev/locales/{zh-HK-JCHGKEUE.js.map → zh-HK-KBWQ6SJC.js.map} +2 -2
- package/dist/dev/locales/{zh-TW-ARVT7RZU.js → zh-TW-JKJWJQ4J.js} +2 -1
- package/dist/dev/locales/{zh-TW-ARVT7RZU.js.map → zh-TW-JKJWJQ4J.js.map} +2 -2
- package/dist/dev/subset-shared.chunk.js +1 -1
- package/dist/dev/subset-worker.chunk.js +1 -1
- package/dist/prod/chunk-AJI3LATG.js +1 -0
- package/dist/prod/{chunk-N7QNUCIG.js → chunk-QNG5NH6R.js} +1 -1
- package/dist/prod/chunk-TIFXQFVB.js +4 -0
- package/dist/prod/{chunk-LS7FJGPW.js → chunk-Z5NKEFVG.js} +8 -8
- package/dist/prod/data/{image-SMWA6JLH.js → image-OPZV5J37.js} +1 -1
- package/dist/prod/index.css +1 -1
- package/dist/prod/index.js +24 -24
- package/dist/prod/locales/{ar-SA-F62BVQMB.js → ar-SA-IYHKZRSE.js} +2 -2
- package/dist/prod/locales/{az-AZ-7PGSKYOB.js → az-AZ-WL5GYRHK.js} +1 -1
- package/dist/prod/locales/{bg-BG-AAEXMUQ4.js → bg-BG-FXZYTRPD.js} +1 -1
- package/dist/prod/locales/{bn-IN-YT3I2M3F.js → bn-BD-KO6YL5G2.js} +1 -1
- package/dist/prod/locales/{bn-BD-ONOFQYIQ.js → bn-IN-PC6JHKYB.js} +1 -1
- package/dist/prod/locales/{ca-ES-GG4YH2FN.js → ca-ES-AREX5NEO.js} +1 -1
- package/dist/prod/locales/{cs-CZ-IS5VTBOP.js → cs-CZ-HXAZMFYH.js} +2 -2
- package/dist/prod/locales/{da-DK-VPQ2KWAY.js → da-DK-5X7ZLFU3.js} +2 -2
- package/dist/prod/locales/{de-DE-RAT2LIDI.js → de-CH-76ZNVSOF.js} +1 -1
- package/dist/prod/locales/{de-CH-G4Y2G6IS.js → de-DE-G3JVZ4MQ.js} +3 -3
- package/dist/prod/locales/{el-GR-DNJB2AZO.js → el-GR-4AZTZGY6.js} +2 -2
- package/dist/prod/locales/{en-FOCNVEEU.js → en-BARVNJLJ.js} +1 -1
- package/dist/prod/locales/es-ES-ART7BI3G.js +7 -0
- package/dist/prod/locales/{eu-ES-XLOS36YS.js → eu-ES-BIF4XBMT.js} +2 -2
- package/dist/prod/locales/{fa-IR-J6Z2YOGX.js → fa-IR-D4HHKAAI.js} +1 -1
- package/dist/prod/locales/{fi-FI-B2IQ7SBP.js → fi-FI-O35ZY7UI.js} +1 -1
- package/dist/prod/locales/{fr-FR-N5BRDCMI.js → fr-FR-XEFNCM4I.js} +3 -3
- package/dist/prod/locales/{gl-ES-BOYALFRN.js → gl-ES-U4NYM3X5.js} +2 -2
- package/dist/prod/locales/{he-IL-H7M7HGY5.js → he-IL-656ABAVQ.js} +1 -1
- package/dist/prod/locales/{hi-IN-7AB5CA2Q.js → hi-IN-Z55GAFFR.js} +2 -2
- package/dist/prod/locales/{hu-HU-ZZM7UJLP.js → hu-HU-UJ62DVIW.js} +1 -1
- package/dist/prod/locales/{id-ID-RZ7JNCXA.js → id-ID-FLZFU3OO.js} +1 -1
- package/dist/prod/locales/it-IT-GIGIGIBJ.js +12 -0
- package/dist/prod/locales/ja-JP-43VXGDWI.js +7 -0
- package/dist/prod/locales/{kaa-QWYSGEM7.js → kaa-L3IMSDYL.js} +1 -1
- package/dist/prod/locales/{kab-KAB-Q3HBKQ5I.js → kab-KAB-XKPWJLNL.js} +2 -2
- package/dist/prod/locales/kk-KZ-SXPDDY2H.js +1 -0
- package/dist/prod/locales/{km-KH-CN6HHF5U.js → km-KH-DOS4CPGC.js} +3 -3
- package/dist/prod/locales/{ko-KR-SJQMUXM7.js → ko-KR-BGC6VCY4.js} +1 -1
- package/dist/prod/locales/{ku-TR-VM4BHTPC.js → ku-TR-J7IUITIA.js} +1 -1
- package/dist/prod/locales/{lt-LT-QIWZQ7AG.js → lt-LT-AC3LV5KG.js} +1 -1
- package/dist/prod/locales/{lv-LV-YQFCB4WZ.js → lv-LV-I6AY7QG2.js} +1 -1
- package/dist/prod/locales/{mr-IN-GR2ZJPSQ.js → mr-IN-5SP4HV5B.js} +2 -2
- package/dist/prod/locales/{my-MM-M5XJDJQ2.js → my-MM-S7ECRBYZ.js} +1 -1
- package/dist/prod/locales/{nb-NO-2RU2YF7H.js → nb-NO-6PNHTF4R.js} +1 -1
- package/dist/prod/locales/nl-NL-R4C4SUIG.js +13 -0
- package/dist/prod/locales/{nn-NO-72RCA552.js → nn-NO-3TFXTM7Y.js} +1 -1
- package/dist/prod/locales/oc-FR-IK6GIE7H.js +4 -0
- package/dist/prod/locales/{pa-IN-WESENMFH.js → pa-IN-YAKHYJET.js} +1 -1
- package/dist/prod/locales/percentages-OL6W367U.js +1 -0
- package/dist/prod/locales/{pl-PL-7C4NGVUA.js → pl-PL-BIY22ZWU.js} +2 -2
- package/dist/prod/locales/{pt-BR-QH23C2IX.js → pt-BR-Q23NUPD6.js} +2 -2
- package/dist/prod/locales/{pt-PT-O5XBATXI.js → pt-PT-LOPEJLPJ.js} +2 -2
- package/dist/prod/locales/{ro-RO-QHCHEGM5.js → ro-RO-W3D2ZATV.js} +2 -2
- package/dist/prod/locales/ru-RU-DCTW7QSH.js +10 -0
- package/dist/prod/locales/{si-LK-JYUINGNN.js → si-LK-FYRRHO3C.js} +1 -1
- package/dist/prod/locales/sk-SK-MC7UOHQO.js +7 -0
- package/dist/prod/locales/{sl-SI-5KPVX4FS.js → sl-SI-L6B6HFY5.js} +2 -2
- package/dist/prod/locales/{sv-SE-MVMXV6O4.js → sv-SE-KMY6L2BA.js} +3 -3
- package/dist/prod/locales/{ta-IN-A32FQB4D.js → ta-IN-ZQCYE2JK.js} +2 -2
- package/dist/prod/locales/{th-TH-CXMWNVBY.js → th-TH-WS7ECBAV.js} +1 -1
- package/dist/prod/locales/{tr-TR-YHFI3W2D.js → tr-TR-S5FI7JRW.js} +2 -2
- package/dist/prod/locales/{uk-UA-UTJIIKT5.js → uk-UA-4EZUWUSQ.js} +3 -3
- package/dist/prod/locales/{uz-UZ-H4EGTR7D.js → uz-UZ-OKHL6AFA.js} +1 -1
- package/dist/prod/locales/{vi-VN-XBV2ESZM.js → vi-VN-K34TWHF7.js} +2 -2
- package/dist/prod/locales/{zh-CN-CKCJ4HAO.js → zh-CN-JE4UZWNO.js} +2 -2
- package/dist/prod/locales/{zh-HK-ISASRRMF.js → zh-HK-RM35YDXX.js} +1 -1
- package/dist/prod/locales/{zh-TW-KYRW5V3R.js → zh-TW-ONGLV6Y5.js} +3 -3
- package/dist/prod/subset-shared.chunk.js +1 -1
- package/dist/prod/subset-worker.chunk.js +1 -1
- package/dist/types/common/src/bounds.d.ts +10 -0
- package/dist/types/common/src/colors.d.ts +5 -2
- package/dist/types/common/src/constants.d.ts +13 -11
- package/dist/types/common/src/font-metadata.d.ts +1 -3
- package/dist/types/common/src/index.d.ts +1 -0
- package/dist/types/common/src/keys.d.ts +1 -1
- package/dist/types/common/src/utility-types.d.ts +0 -1
- package/dist/types/common/src/utils.d.ts +43 -33
- package/dist/types/common/src/visualdebug.d.ts +1 -1
- package/dist/types/element/src/Scene.d.ts +3 -3
- package/dist/types/element/src/binding.d.ts +6 -4
- package/dist/types/element/src/bounds.d.ts +2 -10
- package/dist/types/element/src/collision.d.ts +2 -2
- package/dist/types/element/src/comparisons.d.ts +7 -7
- package/dist/types/element/src/dragElements.d.ts +3 -3
- package/dist/types/element/src/duplicate.d.ts +3 -3
- package/dist/types/element/src/fractionalIndex.d.ts +2 -2
- package/dist/types/element/src/frame.d.ts +5 -1
- package/dist/types/element/src/heading.d.ts +2 -1
- package/dist/types/element/src/image.d.ts +1 -11
- package/dist/types/element/src/index.d.ts +1 -0
- package/dist/types/element/src/linearElementEditor.d.ts +1 -2
- package/dist/types/element/src/mutateElement.d.ts +3 -1
- package/dist/types/element/src/newElement.d.ts +6 -6
- package/dist/types/element/src/renderElement.d.ts +0 -6
- package/dist/types/element/src/resizeElements.d.ts +10 -10
- package/dist/types/element/src/resizeTest.d.ts +1 -1
- package/dist/types/element/src/selection.d.ts +3 -7
- package/dist/types/element/src/shape.d.ts +8 -7
- package/dist/types/element/src/textMeasurements.d.ts +1 -3
- package/dist/types/{excalidraw/data → element/src}/transform.d.ts +3 -3
- package/dist/types/element/src/transformHandles.d.ts +3 -23
- package/dist/types/element/src/typeChecks.d.ts +2 -4
- package/dist/types/element/src/utils.d.ts +3 -1
- package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +62 -126
- package/dist/types/excalidraw/actions/actionAlign.d.ts +0 -1
- package/dist/types/excalidraw/actions/actionBoundText.d.ts +44 -87
- package/dist/types/excalidraw/actions/actionCanvas.d.ts +263 -510
- package/dist/types/excalidraw/actions/actionClipboard.d.ts +44 -87
- package/dist/types/excalidraw/actions/actionCropEditor.d.ts +21 -43
- package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +68 -136
- package/dist/types/excalidraw/actions/actionDistribute.d.ts +0 -1
- package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +0 -1
- package/dist/types/excalidraw/actions/actionElementLink.d.ts +18 -40
- package/dist/types/excalidraw/actions/actionElementLock.d.ts +45 -88
- package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +22 -44
- package/dist/types/excalidraw/actions/actionExport.d.ts +85 -170
- package/dist/types/excalidraw/actions/actionFinalize.d.ts +1 -2
- package/dist/types/excalidraw/actions/actionFlip.d.ts +0 -1
- package/dist/types/excalidraw/actions/actionFrame.d.ts +167 -288
- package/dist/types/excalidraw/actions/actionGroup.d.ts +48 -99
- package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +102 -160
- package/dist/types/excalidraw/actions/actionLink.d.ts +22 -44
- package/dist/types/excalidraw/actions/actionMenu.d.ts +17 -39
- package/dist/types/excalidraw/actions/actionNavigate.d.ts +14 -17
- package/dist/types/excalidraw/actions/actionProperties.d.ts +59 -102
- package/dist/types/excalidraw/actions/actionSelectAll.d.ts +24 -50
- package/dist/types/excalidraw/actions/actionStyles.d.ts +20 -42
- package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +22 -44
- package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +22 -44
- package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +16 -38
- package/dist/types/excalidraw/actions/actionToggleStats.d.ts +22 -44
- package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +22 -44
- package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +22 -44
- package/dist/types/excalidraw/actions/actionZindex.d.ts +0 -1
- package/dist/types/excalidraw/actions/manager.d.ts +1 -1
- package/dist/types/excalidraw/actions/register.d.ts +2 -2
- package/dist/types/excalidraw/appState.d.ts +3 -3
- package/dist/types/excalidraw/clipboard.d.ts +7 -31
- package/dist/types/excalidraw/components/Actions.d.ts +1 -1
- package/dist/types/excalidraw/components/App.d.ts +33 -41
- package/dist/types/excalidraw/components/ButtonIconCycle.d.ts +1 -1
- package/dist/types/excalidraw/components/Card.d.ts +0 -1
- package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +7 -4
- package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +0 -1
- package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +0 -1
- package/dist/types/excalidraw/components/CommandPalette/types.d.ts +0 -1
- package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +2 -2
- package/dist/types/excalidraw/components/DarkModeToggle.d.ts +1 -1
- package/dist/types/excalidraw/components/DefaultSidebar.d.ts +9 -13
- package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +1 -1
- package/dist/types/excalidraw/components/Ellipsify.d.ts +1 -2
- package/dist/types/excalidraw/components/ErrorDialog.d.ts +1 -1
- package/dist/types/excalidraw/components/ExcalidrawLogo.d.ts +0 -1
- package/dist/types/excalidraw/components/EyeDropper.d.ts +0 -1
- package/dist/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +0 -1
- package/dist/types/excalidraw/components/HelpDialog.d.ts +1 -1
- package/dist/types/excalidraw/components/InlineIcon.d.ts +2 -2
- package/dist/types/excalidraw/components/LibraryMenuControlButtons.d.ts +1 -1
- package/dist/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +1 -2
- package/dist/types/excalidraw/components/LibraryUnit.d.ts +2 -3
- package/dist/types/excalidraw/components/LoadingMessage.d.ts +0 -1
- package/dist/types/excalidraw/components/MobileToolBar.d.ts +0 -1
- package/dist/types/excalidraw/components/Modal.d.ts +0 -1
- package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +1 -1
- package/dist/types/excalidraw/components/RadioGroup.d.ts +0 -1
- package/dist/types/excalidraw/components/RadioSelection.d.ts +4 -4
- package/dist/types/excalidraw/components/ScrollableList.d.ts +0 -1
- package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +15 -21
- package/dist/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +1 -1
- package/dist/types/excalidraw/components/Sidebar/SidebarTab.d.ts +1 -2
- package/dist/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +1 -2
- package/dist/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +1 -2
- package/dist/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +1 -2
- package/dist/types/excalidraw/components/Spinner.d.ts +4 -4
- package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +0 -1
- package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +0 -1
- package/dist/types/excalidraw/components/Stats/DragInput.d.ts +0 -1
- package/dist/types/excalidraw/components/Stats/index.d.ts +7 -8
- package/dist/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +1 -2
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +0 -1
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +1 -2
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +1 -2
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +1 -2
- package/dist/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +1 -1
- package/dist/types/excalidraw/components/TTDDialog/common.d.ts +2 -3
- package/dist/types/excalidraw/components/Toast.d.ts +3 -3
- package/dist/types/excalidraw/components/Trans.d.ts +2 -2
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +28 -32
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +5 -5
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +3 -3
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +10 -18
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +3 -3
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +0 -1
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +2 -2
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +6 -6
- package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +3 -4
- package/dist/types/excalidraw/components/dropdownMenu/common.d.ts +1 -1
- package/dist/types/excalidraw/components/hoc/withInternalFallback.d.ts +1 -1
- package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +1 -1
- package/dist/types/excalidraw/components/icons.d.ts +11 -11
- package/dist/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +2 -13
- package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +2 -2
- package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +26 -28
- package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +6 -6
- package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +15 -16
- package/dist/types/excalidraw/data/blob.d.ts +321 -3
- package/dist/types/excalidraw/data/encode.d.ts +4 -4
- package/dist/types/excalidraw/data/encryption.d.ts +5 -5
- package/dist/types/excalidraw/data/filesystem.d.ts +2 -2
- package/dist/types/excalidraw/data/index.d.ts +3 -3
- package/dist/types/excalidraw/data/json.d.ts +159 -2
- package/dist/types/excalidraw/data/library.d.ts +24 -9
- package/dist/types/excalidraw/data/restore.d.ts +25 -10
- package/dist/types/excalidraw/editor-jotai.d.ts +11 -11
- package/dist/types/excalidraw/hooks/useOutsideClick.d.ts +1 -2
- package/dist/types/excalidraw/hooks/useScrollPosition.d.ts +1 -2
- package/dist/types/excalidraw/i18n.d.ts +2 -2
- package/dist/types/excalidraw/index.d.ts +2 -4
- package/dist/types/excalidraw/renderer/helpers.d.ts +6 -4
- package/dist/types/excalidraw/renderer/interactiveScene.d.ts +8 -6
- package/dist/types/excalidraw/scene/Renderer.d.ts +5 -2
- package/dist/types/excalidraw/scene/export.d.ts +2 -2
- package/dist/types/excalidraw/scene/scroll.d.ts +1 -6
- package/dist/types/excalidraw/scene/types.d.ts +7 -2
- package/dist/types/excalidraw/snapping.d.ts +5 -5
- package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +1 -1
- package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +1 -1
- package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +1 -1
- package/dist/types/excalidraw/subset/woff2/woff2-loader.d.ts +2 -2
- package/dist/types/excalidraw/subset/woff2/woff2-wasm.d.ts +1 -1
- package/dist/types/excalidraw/types.d.ts +1 -1
- package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +2 -2
- package/dist/types/math/src/polygon.d.ts +2 -2
- package/dist/types/math/src/range.d.ts +1 -3
- package/dist/types/math/src/segment.d.ts +3 -3
- package/dist/types/utils/src/bbox.d.ts +1 -1
- package/dist/types/utils/src/export.d.ts +5 -5
- package/dist/types/utils/src/shape.d.ts +6 -6
- package/dist/types/utils/src/withinBounds.d.ts +2 -2
- package/package.json +5 -5
- package/dist/dev/chunk-SJTAY27F.js.map +0 -7
- package/dist/dev/locales/de-DE-YRH6WMM5.js.map +0 -7
- package/dist/dev/locales/el-GR-W7S64QNM.js.map +0 -7
- package/dist/dev/locales/es-ES-7JEN5PTZ.js.map +0 -7
- package/dist/dev/locales/it-IT-AV75ICYT.js.map +0 -7
- package/dist/dev/locales/ja-JP-SS4G3ZXF.js.map +0 -7
- package/dist/dev/locales/kk-KZ-762YODLJ.js.map +0 -7
- package/dist/dev/locales/nl-NL-TF2OVIKN.js.map +0 -7
- package/dist/dev/locales/oc-FR-5JYIFGLE.js.map +0 -7
- package/dist/dev/locales/pt-BR-ERVIQI63.js.map +0 -7
- package/dist/dev/locales/ru-RU-F7LPIMGQ.js.map +0 -7
- package/dist/dev/locales/sk-SK-H6WE7IJX.js.map +0 -7
- package/dist/dev/locales/sv-SE-E5VQLCRE.js.map +0 -7
- package/dist/prod/chunk-KRJFZ5JQ.js +0 -1
- package/dist/prod/chunk-XJNFOLHK.js +0 -4
- package/dist/prod/locales/es-ES-IMTENLBU.js +0 -7
- package/dist/prod/locales/it-IT-ZX7HN56D.js +0 -8
- package/dist/prod/locales/ja-JP-NBNBUHIR.js +0 -7
- package/dist/prod/locales/kk-KZ-HF2NTCRX.js +0 -1
- package/dist/prod/locales/nl-NL-MUHXDQFK.js +0 -7
- package/dist/prod/locales/oc-FR-65ITQYQ2.js +0 -4
- package/dist/prod/locales/percentages-OEPNEGCM.js +0 -1
- package/dist/prod/locales/ru-RU-FUMQ2LLB.js +0 -6
- package/dist/prod/locales/sk-SK-R25O52BS.js +0 -7
- /package/dist/dev/data/{image-S2GFZH7W.js.map → image-Q6JHR7OE.js.map} +0 -0
- /package/dist/dev/locales/{en-ZO6QSABV.js.map → en-MLZIHOCR.js.map} +0 -0
- /package/dist/dev/locales/{percentages-2RAYDWNS.js.map → percentages-OGWD7R2K.js.map} +0 -0
|
@@ -9,13 +9,13 @@ import {
|
|
|
9
9
|
import tEXt from "png-chunk-text";
|
|
10
10
|
import encodePng from "png-chunks-encode";
|
|
11
11
|
import decodePng from "png-chunks-extract";
|
|
12
|
-
import { EXPORT_DATA_TYPES as EXPORT_DATA_TYPES3, MIME_TYPES as
|
|
12
|
+
import { EXPORT_DATA_TYPES as EXPORT_DATA_TYPES3, MIME_TYPES as MIME_TYPES6 } from "@excalidraw/common";
|
|
13
13
|
|
|
14
14
|
// data/blob.ts
|
|
15
15
|
import { nanoid } from "nanoid";
|
|
16
16
|
import {
|
|
17
17
|
IMAGE_MIME_TYPES,
|
|
18
|
-
MIME_TYPES as
|
|
18
|
+
MIME_TYPES as MIME_TYPES5,
|
|
19
19
|
bytesToHexString,
|
|
20
20
|
isPromiseLike
|
|
21
21
|
} from "@excalidraw/common";
|
|
@@ -422,14 +422,14 @@ import {
|
|
|
422
422
|
FRAME_STYLE as FRAME_STYLE3,
|
|
423
423
|
FONT_FAMILY as FONT_FAMILY2,
|
|
424
424
|
SVG_NS as SVG_NS2,
|
|
425
|
-
THEME as
|
|
426
|
-
|
|
427
|
-
MIME_TYPES as MIME_TYPES5,
|
|
425
|
+
THEME as THEME5,
|
|
426
|
+
MIME_TYPES as MIME_TYPES4,
|
|
428
427
|
EXPORT_DATA_TYPES as EXPORT_DATA_TYPES2,
|
|
429
428
|
arrayToMap,
|
|
430
429
|
distance,
|
|
431
430
|
getFontString as getFontString2,
|
|
432
|
-
toBrandedType
|
|
431
|
+
toBrandedType,
|
|
432
|
+
applyDarkModeFilter as applyDarkModeFilter4
|
|
433
433
|
} from "@excalidraw/common";
|
|
434
434
|
import { getCommonBounds as getCommonBounds2, getElementAbsoluteCoords as getElementAbsoluteCoords4 } from "@excalidraw/element";
|
|
435
435
|
import {
|
|
@@ -682,7 +682,8 @@ import {
|
|
|
682
682
|
FONT_FAMILY_FALLBACKS,
|
|
683
683
|
CJK_HAND_DRAWN_FALLBACK_FONT,
|
|
684
684
|
WINDOWS_EMOJI_FALLBACK_FONT,
|
|
685
|
-
getFontFamilyFallbacks
|
|
685
|
+
getFontFamilyFallbacks,
|
|
686
|
+
FONT_SIZES
|
|
686
687
|
} from "@excalidraw/common";
|
|
687
688
|
import { getContainerElement } from "@excalidraw/element";
|
|
688
689
|
import { charWidth } from "@excalidraw/element";
|
|
@@ -2911,7 +2912,7 @@ var _Fonts = class _Fonts {
|
|
|
2911
2912
|
for (const [index, fontFamily] of fontFamilies.entries()) {
|
|
2912
2913
|
const font = getFontString({
|
|
2913
2914
|
fontFamily,
|
|
2914
|
-
fontSize:
|
|
2915
|
+
fontSize: FONT_SIZES.sm
|
|
2915
2916
|
});
|
|
2916
2917
|
const text = _Fonts.getCharacters(charsPerFamily, fontFamily);
|
|
2917
2918
|
if (!window.document.fonts.check(font, text)) {
|
|
@@ -3068,7 +3069,12 @@ __publicField(_Fonts, "loadElementsFonts", async (elements) => {
|
|
|
3068
3069
|
var Fonts = _Fonts;
|
|
3069
3070
|
|
|
3070
3071
|
// renderer/staticScene.ts
|
|
3071
|
-
import {
|
|
3072
|
+
import {
|
|
3073
|
+
applyDarkModeFilter as applyDarkModeFilter2,
|
|
3074
|
+
FRAME_STYLE,
|
|
3075
|
+
THEME as THEME3,
|
|
3076
|
+
throttleRAF
|
|
3077
|
+
} from "@excalidraw/common";
|
|
3072
3078
|
import { isElementLink } from "@excalidraw/element";
|
|
3073
3079
|
import { createPlaceholderEmbeddableLabel } from "@excalidraw/element";
|
|
3074
3080
|
import { getBoundTextElement } from "@excalidraw/element";
|
|
@@ -3150,7 +3156,7 @@ var isPointHittingLink = (element, elementsMap, appState, [x, y], isMobile) => {
|
|
|
3150
3156
|
};
|
|
3151
3157
|
|
|
3152
3158
|
// renderer/helpers.ts
|
|
3153
|
-
import { THEME as THEME2,
|
|
3159
|
+
import { THEME as THEME2, applyDarkModeFilter } from "@excalidraw/common";
|
|
3154
3160
|
var fillCircle = (context, cx, cy, radius, stroke, fill = true) => {
|
|
3155
3161
|
context.beginPath();
|
|
3156
3162
|
context.arc(cx, cy, radius, 0, Math.PI * 2);
|
|
@@ -3176,9 +3182,6 @@ var bootstrapCanvas = ({
|
|
|
3176
3182
|
const context = canvas.getContext("2d");
|
|
3177
3183
|
context.setTransform(1, 0, 0, 1, 0, 0);
|
|
3178
3184
|
context.scale(scale, scale);
|
|
3179
|
-
if (isExporting && theme === THEME2.DARK) {
|
|
3180
|
-
context.filter = THEME_FILTER;
|
|
3181
|
-
}
|
|
3182
3185
|
if (typeof viewBackgroundColor === "string") {
|
|
3183
3186
|
const hasTransparence = viewBackgroundColor === "transparent" || viewBackgroundColor.length === 5 || // #RGBA
|
|
3184
3187
|
viewBackgroundColor.length === 9 || // #RRGGBBA
|
|
@@ -3187,7 +3190,7 @@ var bootstrapCanvas = ({
|
|
|
3187
3190
|
context.clearRect(0, 0, normalizedWidth, normalizedHeight);
|
|
3188
3191
|
}
|
|
3189
3192
|
context.save();
|
|
3190
|
-
context.fillStyle = viewBackgroundColor;
|
|
3193
|
+
context.fillStyle = theme === THEME2.DARK ? applyDarkModeFilter(viewBackgroundColor) : viewBackgroundColor;
|
|
3191
3194
|
context.fillRect(0, 0, normalizedWidth, normalizedHeight);
|
|
3192
3195
|
context.restore();
|
|
3193
3196
|
} else {
|
|
@@ -3215,10 +3218,16 @@ var strokeRectWithRotation_simple = (context, x, y, width, height, cx, cy, angle
|
|
|
3215
3218
|
|
|
3216
3219
|
// renderer/staticScene.ts
|
|
3217
3220
|
var GridLineColor = {
|
|
3218
|
-
|
|
3219
|
-
|
|
3221
|
+
[THEME3.LIGHT]: {
|
|
3222
|
+
bold: "#dddddd",
|
|
3223
|
+
regular: "#e5e5e5"
|
|
3224
|
+
},
|
|
3225
|
+
[THEME3.DARK]: {
|
|
3226
|
+
bold: applyDarkModeFilter2("#dddddd"),
|
|
3227
|
+
regular: applyDarkModeFilter2("#e5e5e5")
|
|
3228
|
+
}
|
|
3220
3229
|
};
|
|
3221
|
-
var strokeGrid = (context, gridSize, gridStep, scrollX, scrollY, zoom, width, height) => {
|
|
3230
|
+
var strokeGrid = (context, gridSize, gridStep, scrollX, scrollY, zoom, theme, width, height) => {
|
|
3222
3231
|
const offsetX = scrollX % gridSize - gridSize;
|
|
3223
3232
|
const offsetY = scrollY % gridSize - gridSize;
|
|
3224
3233
|
const actualGridSize = gridSize * zoom.value;
|
|
@@ -3237,7 +3246,7 @@ var strokeGrid = (context, gridSize, gridStep, scrollX, scrollY, zoom, width, he
|
|
|
3237
3246
|
const lineDash = [lineWidth * 3, spaceWidth + (lineWidth + spaceWidth)];
|
|
3238
3247
|
context.beginPath();
|
|
3239
3248
|
context.setLineDash(isBold ? [] : lineDash);
|
|
3240
|
-
context.strokeStyle = isBold ? GridLineColor.
|
|
3249
|
+
context.strokeStyle = isBold ? GridLineColor[theme].bold : GridLineColor[theme].regular;
|
|
3241
3250
|
context.moveTo(x, offsetY - gridSize);
|
|
3242
3251
|
context.lineTo(x, Math.ceil(offsetY + height + gridSize * 2));
|
|
3243
3252
|
context.stroke();
|
|
@@ -3252,7 +3261,7 @@ var strokeGrid = (context, gridSize, gridStep, scrollX, scrollY, zoom, width, he
|
|
|
3252
3261
|
const lineDash = [lineWidth * 3, spaceWidth + (lineWidth + spaceWidth)];
|
|
3253
3262
|
context.beginPath();
|
|
3254
3263
|
context.setLineDash(isBold ? [] : lineDash);
|
|
3255
|
-
context.strokeStyle = isBold ? GridLineColor.
|
|
3264
|
+
context.strokeStyle = isBold ? GridLineColor[theme].bold : GridLineColor[theme].regular;
|
|
3256
3265
|
context.moveTo(offsetX - gridSize, y);
|
|
3257
3266
|
context.lineTo(Math.ceil(offsetX + width + gridSize * 2), y);
|
|
3258
3267
|
context.stroke();
|
|
@@ -3365,6 +3374,7 @@ var _renderStaticScene = ({
|
|
|
3365
3374
|
appState.scrollX,
|
|
3366
3375
|
appState.scrollY,
|
|
3367
3376
|
appState.zoom,
|
|
3377
|
+
renderConfig.theme,
|
|
3368
3378
|
normalizedWidth / appState.zoom.value,
|
|
3369
3379
|
normalizedHeight / appState.zoom.value
|
|
3370
3380
|
);
|
|
@@ -3531,12 +3541,13 @@ var renderStaticScene = (renderConfig, throttle) => {
|
|
|
3531
3541
|
import {
|
|
3532
3542
|
FRAME_STYLE as FRAME_STYLE2,
|
|
3533
3543
|
MAX_DECIMALS_FOR_SVG_EXPORT,
|
|
3534
|
-
MIME_TYPES as MIME_TYPES4,
|
|
3535
3544
|
SVG_NS,
|
|
3545
|
+
THEME as THEME4,
|
|
3536
3546
|
getFontFamilyString,
|
|
3537
3547
|
isRTL,
|
|
3538
3548
|
isTestEnv as isTestEnv2,
|
|
3539
|
-
getVerticalOffset
|
|
3549
|
+
getVerticalOffset,
|
|
3550
|
+
applyDarkModeFilter as applyDarkModeFilter3
|
|
3540
3551
|
} from "@excalidraw/common";
|
|
3541
3552
|
import { normalizeLink, toValidURL } from "@excalidraw/common";
|
|
3542
3553
|
import { hashString } from "@excalidraw/element";
|
|
@@ -3557,7 +3568,6 @@ import {
|
|
|
3557
3568
|
import { getContainingFrame } from "@excalidraw/element";
|
|
3558
3569
|
import { getCornerRadius, isPathALoop } from "@excalidraw/element";
|
|
3559
3570
|
import { ShapeCache as ShapeCache2 } from "@excalidraw/element";
|
|
3560
|
-
import { getFreeDrawSvgPath, IMAGE_INVERT_FILTER } from "@excalidraw/element";
|
|
3561
3571
|
import { getElementAbsoluteCoords as getElementAbsoluteCoords3 } from "@excalidraw/element";
|
|
3562
3572
|
var roughSVGDrawWithPrecision = (rsvg, drawable, precision) => {
|
|
3563
3573
|
if (typeof precision === "undefined") {
|
|
@@ -3625,7 +3635,7 @@ var renderElementToSvg = (element, elementsMap, rsvg, svgRoot, files, offsetX, o
|
|
|
3625
3635
|
case "rectangle":
|
|
3626
3636
|
case "diamond":
|
|
3627
3637
|
case "ellipse": {
|
|
3628
|
-
const shape = ShapeCache2.generateElementShape(element,
|
|
3638
|
+
const shape = ShapeCache2.generateElementShape(element, renderConfig);
|
|
3629
3639
|
const node = roughSVGDrawWithPrecision(
|
|
3630
3640
|
rsvg,
|
|
3631
3641
|
shape,
|
|
@@ -3818,36 +3828,49 @@ var renderElementToSvg = (element, elementsMap, rsvg, svgRoot, files, offsetX, o
|
|
|
3818
3828
|
break;
|
|
3819
3829
|
}
|
|
3820
3830
|
case "freedraw": {
|
|
3821
|
-
const
|
|
3822
|
-
|
|
3823
|
-
|
|
3824
|
-
|
|
3825
|
-
|
|
3826
|
-
|
|
3827
|
-
|
|
3828
|
-
|
|
3829
|
-
|
|
3831
|
+
const wrapper = svgRoot.ownerDocument.createElementNS(SVG_NS, "g");
|
|
3832
|
+
const shapes = ShapeCache2.generateElementShape(element, renderConfig);
|
|
3833
|
+
for (const shape of shapes) {
|
|
3834
|
+
if (typeof shape === "string") {
|
|
3835
|
+
const path = svgRoot.ownerDocument.createElementNS(SVG_NS, "path");
|
|
3836
|
+
path.setAttribute(
|
|
3837
|
+
"fill",
|
|
3838
|
+
renderConfig.theme === THEME4.DARK ? applyDarkModeFilter3(element.strokeColor) : element.strokeColor
|
|
3839
|
+
);
|
|
3840
|
+
path.setAttribute("d", shape);
|
|
3841
|
+
wrapper.appendChild(path);
|
|
3842
|
+
} else {
|
|
3843
|
+
const bgNode = roughSVGDrawWithPrecision(
|
|
3844
|
+
rsvg,
|
|
3845
|
+
shape,
|
|
3846
|
+
MAX_DECIMALS_FOR_SVG_EXPORT
|
|
3847
|
+
);
|
|
3848
|
+
if (bgNode.nodeName === "g") {
|
|
3849
|
+
while (bgNode.firstChild) {
|
|
3850
|
+
wrapper.appendChild(bgNode.firstChild);
|
|
3851
|
+
}
|
|
3852
|
+
} else {
|
|
3853
|
+
wrapper.appendChild(bgNode);
|
|
3854
|
+
}
|
|
3855
|
+
}
|
|
3856
|
+
}
|
|
3830
3857
|
if (opacity !== 1) {
|
|
3831
|
-
|
|
3832
|
-
|
|
3858
|
+
wrapper.setAttribute("stroke-opacity", `${opacity}`);
|
|
3859
|
+
wrapper.setAttribute("fill-opacity", `${opacity}`);
|
|
3833
3860
|
}
|
|
3834
|
-
|
|
3861
|
+
wrapper.setAttribute(
|
|
3835
3862
|
"transform",
|
|
3836
3863
|
`translate(${offsetX || 0} ${offsetY || 0}) rotate(${degree} ${cx} ${cy})`
|
|
3837
3864
|
);
|
|
3838
|
-
|
|
3839
|
-
const path = svgRoot.ownerDocument.createElementNS(SVG_NS, "path");
|
|
3840
|
-
path.setAttribute("fill", element.strokeColor);
|
|
3841
|
-
path.setAttribute("d", getFreeDrawSvgPath(element));
|
|
3842
|
-
node.appendChild(path);
|
|
3865
|
+
wrapper.setAttribute("stroke", "none");
|
|
3843
3866
|
const g = maybeWrapNodesInFrameClipPath(
|
|
3844
3867
|
element,
|
|
3845
3868
|
root,
|
|
3846
|
-
[
|
|
3869
|
+
[wrapper],
|
|
3847
3870
|
renderConfig.frameRendering,
|
|
3848
3871
|
elementsMap
|
|
3849
3872
|
);
|
|
3850
|
-
addToRoot(g ||
|
|
3873
|
+
addToRoot(g || wrapper, element);
|
|
3851
3874
|
break;
|
|
3852
3875
|
}
|
|
3853
3876
|
case "image": {
|
|
@@ -3887,9 +3910,6 @@ var renderElementToSvg = (element, elementsMap, rsvg, svgRoot, files, offsetX, o
|
|
|
3887
3910
|
}
|
|
3888
3911
|
const use = svgRoot.ownerDocument.createElementNS(SVG_NS, "use");
|
|
3889
3912
|
use.setAttribute("href", `#${symbolId}`);
|
|
3890
|
-
if (renderConfig.exportWithDarkMode && fileData.mimeType !== MIME_TYPES4.svg) {
|
|
3891
|
-
use.setAttribute("filter", IMAGE_INVERT_FILTER);
|
|
3892
|
-
}
|
|
3893
3913
|
let normalizedCropX = 0;
|
|
3894
3914
|
let normalizedCropY = 0;
|
|
3895
3915
|
if (element.crop) {
|
|
@@ -3981,7 +4001,10 @@ var renderElementToSvg = (element, elementsMap, rsvg, svgRoot, files, offsetX, o
|
|
|
3981
4001
|
rect.setAttribute("rx", FRAME_STYLE2.radius.toString());
|
|
3982
4002
|
rect.setAttribute("ry", FRAME_STYLE2.radius.toString());
|
|
3983
4003
|
rect.setAttribute("fill", "none");
|
|
3984
|
-
rect.setAttribute(
|
|
4004
|
+
rect.setAttribute(
|
|
4005
|
+
"stroke",
|
|
4006
|
+
renderConfig.theme === THEME4.DARK ? applyDarkModeFilter3(FRAME_STYLE2.strokeColor) : FRAME_STYLE2.strokeColor
|
|
4007
|
+
);
|
|
3985
4008
|
rect.setAttribute("stroke-width", FRAME_STYLE2.strokeWidth.toString());
|
|
3986
4009
|
addToRoot(rect, element);
|
|
3987
4010
|
}
|
|
@@ -4018,7 +4041,10 @@ var renderElementToSvg = (element, elementsMap, rsvg, svgRoot, files, offsetX, o
|
|
|
4018
4041
|
text.setAttribute("y", `${i * lineHeightPx + verticalOffset}`);
|
|
4019
4042
|
text.setAttribute("font-family", getFontFamilyString(element));
|
|
4020
4043
|
text.setAttribute("font-size", `${element.fontSize}px`);
|
|
4021
|
-
text.setAttribute(
|
|
4044
|
+
text.setAttribute(
|
|
4045
|
+
"fill",
|
|
4046
|
+
renderConfig.theme === THEME4.DARK ? applyDarkModeFilter3(element.strokeColor) : element.strokeColor
|
|
4047
|
+
);
|
|
4022
4048
|
text.setAttribute("text-anchor", textAnchor);
|
|
4023
4049
|
text.setAttribute("style", "white-space: pre;");
|
|
4024
4050
|
text.setAttribute("direction", direction);
|
|
@@ -4231,7 +4257,7 @@ var exportToCanvas = async (elements, appState, files, {
|
|
|
4231
4257
|
scrollY: -minY + exportPadding,
|
|
4232
4258
|
zoom: defaultAppState.zoom,
|
|
4233
4259
|
shouldCacheIgnoreZoom: false,
|
|
4234
|
-
theme: appState.exportWithDarkMode ?
|
|
4260
|
+
theme: appState.exportWithDarkMode ? THEME5.DARK : THEME5.LIGHT
|
|
4235
4261
|
},
|
|
4236
4262
|
renderConfig: {
|
|
4237
4263
|
canvasBackgroundColor: viewBackgroundColor,
|
|
@@ -4241,7 +4267,8 @@ var exportToCanvas = async (elements, appState, files, {
|
|
|
4241
4267
|
// empty disables embeddable rendering
|
|
4242
4268
|
embedsValidationStatus: /* @__PURE__ */ new Map(),
|
|
4243
4269
|
elementsPendingErasure: /* @__PURE__ */ new Set(),
|
|
4244
|
-
pendingFlowchartNodes: null
|
|
4270
|
+
pendingFlowchartNodes: null,
|
|
4271
|
+
theme: appState.exportWithDarkMode ? THEME5.DARK : THEME5.LIGHT
|
|
4245
4272
|
}
|
|
4246
4273
|
});
|
|
4247
4274
|
return canvas;
|
|
@@ -4283,9 +4310,6 @@ var exportToSvg = async (elements, appState, files, opts) => {
|
|
|
4283
4310
|
svgRoot.setAttribute("viewBox", `0 0 ${width} ${height}`);
|
|
4284
4311
|
svgRoot.setAttribute("width", `${width * exportScale}`);
|
|
4285
4312
|
svgRoot.setAttribute("height", `${height * exportScale}`);
|
|
4286
|
-
if (exportWithDarkMode) {
|
|
4287
|
-
svgRoot.setAttribute("filter", THEME_FILTER2);
|
|
4288
|
-
}
|
|
4289
4313
|
const defsElement = svgRoot.ownerDocument.createElementNS(SVG_NS2, "defs");
|
|
4290
4314
|
const metadataElement = svgRoot.ownerDocument.createElementNS(
|
|
4291
4315
|
SVG_NS2,
|
|
@@ -4349,7 +4373,10 @@ var exportToSvg = async (elements, appState, files, opts) => {
|
|
|
4349
4373
|
rect.setAttribute("y", "0");
|
|
4350
4374
|
rect.setAttribute("width", `${width}`);
|
|
4351
4375
|
rect.setAttribute("height", `${height}`);
|
|
4352
|
-
rect.setAttribute(
|
|
4376
|
+
rect.setAttribute(
|
|
4377
|
+
"fill",
|
|
4378
|
+
exportWithDarkMode ? applyDarkModeFilter4(viewBackgroundColor) : viewBackgroundColor
|
|
4379
|
+
);
|
|
4353
4380
|
svgRoot.appendChild(rect);
|
|
4354
4381
|
}
|
|
4355
4382
|
const rsvg = rough.svg(svgRoot);
|
|
@@ -4371,7 +4398,8 @@ var exportToSvg = async (elements, appState, files, opts) => {
|
|
|
4371
4398
|
embedsValidationStatus: renderEmbeddables ? new Map(
|
|
4372
4399
|
elementsForRender.filter((element) => isFrameLikeElement(element)).map((element) => [element.id, true])
|
|
4373
4400
|
) : /* @__PURE__ */ new Map(),
|
|
4374
|
-
reuseImages: opts?.reuseImages ?? true
|
|
4401
|
+
reuseImages: opts?.reuseImages ?? true,
|
|
4402
|
+
theme: exportWithDarkMode ? THEME5.DARK : THEME5.LIGHT
|
|
4375
4403
|
}
|
|
4376
4404
|
);
|
|
4377
4405
|
return svgRoot;
|
|
@@ -4385,7 +4413,7 @@ var encodeSvgBase64Payload = ({
|
|
|
4385
4413
|
true
|
|
4386
4414
|
);
|
|
4387
4415
|
metadataElement.appendChild(
|
|
4388
|
-
createHTMLComment(`payload-type:${
|
|
4416
|
+
createHTMLComment(`payload-type:${MIME_TYPES4.excalidraw}`)
|
|
4389
4417
|
);
|
|
4390
4418
|
metadataElement.appendChild(createHTMLComment("payload-version:2"));
|
|
4391
4419
|
metadataElement.appendChild(createHTMLComment("payload-start"));
|
|
@@ -4393,7 +4421,7 @@ var encodeSvgBase64Payload = ({
|
|
|
4393
4421
|
metadataElement.appendChild(createHTMLComment("payload-end"));
|
|
4394
4422
|
};
|
|
4395
4423
|
var decodeSvgBase64Payload = ({ svg }) => {
|
|
4396
|
-
if (svg.includes(`payload-type:${
|
|
4424
|
+
if (svg.includes(`payload-type:${MIME_TYPES4.excalidraw}`)) {
|
|
4397
4425
|
const match = svg.match(
|
|
4398
4426
|
/<!-- payload-start -->\s*(.+?)\s*<!-- payload-end -->/
|
|
4399
4427
|
);
|
|
@@ -4507,7 +4535,7 @@ var getFontFamilyByName = (fontFamilyName) => {
|
|
|
4507
4535
|
}
|
|
4508
4536
|
return DEFAULT_FONT_FAMILY2;
|
|
4509
4537
|
};
|
|
4510
|
-
var repairBinding = (element, binding,
|
|
4538
|
+
var repairBinding = (element, binding, targetElementsMap, existingElementsMap, startOrEnd) => {
|
|
4511
4539
|
if (!binding) {
|
|
4512
4540
|
return null;
|
|
4513
4541
|
}
|
|
@@ -4519,15 +4547,22 @@ var repairBinding = (element, binding, elementsMap, startOrEnd) => {
|
|
|
4519
4547
|
};
|
|
4520
4548
|
return fixedPointBinding;
|
|
4521
4549
|
}
|
|
4522
|
-
|
|
4523
|
-
|
|
4524
|
-
if (binding.mode) {
|
|
4550
|
+
if (binding.mode) {
|
|
4551
|
+
if (binding.elementId) {
|
|
4525
4552
|
return {
|
|
4526
4553
|
elementId: binding.elementId,
|
|
4527
|
-
mode: binding.mode
|
|
4554
|
+
mode: binding.mode,
|
|
4528
4555
|
fixedPoint: normalizeFixedPoint(binding.fixedPoint || [0.5, 0.5])
|
|
4529
4556
|
};
|
|
4530
4557
|
}
|
|
4558
|
+
return null;
|
|
4559
|
+
}
|
|
4560
|
+
const targetBoundElement = targetElementsMap.get(binding.elementId) || void 0;
|
|
4561
|
+
const boundElement = targetBoundElement || existingElementsMap?.get(
|
|
4562
|
+
binding.elementId
|
|
4563
|
+
) || void 0;
|
|
4564
|
+
const elementsMap = targetBoundElement ? targetElementsMap : existingElementsMap;
|
|
4565
|
+
if (boundElement && elementsMap) {
|
|
4531
4566
|
const p = LinearElementEditor2.getPointAtIndexGlobalCoordinates(
|
|
4532
4567
|
element,
|
|
4533
4568
|
startOrEnd === "start" ? 0 : element.points.length - 1,
|
|
@@ -4554,6 +4589,7 @@ var repairBinding = (element, binding, elementsMap, startOrEnd) => {
|
|
|
4554
4589
|
fixedPoint
|
|
4555
4590
|
};
|
|
4556
4591
|
}
|
|
4592
|
+
console.error(`could not repair binding for element`);
|
|
4557
4593
|
return null;
|
|
4558
4594
|
};
|
|
4559
4595
|
var restoreElementWithProperties = (element, extra) => {
|
|
@@ -4607,7 +4643,7 @@ var restoreElementWithProperties = (element, extra) => {
|
|
|
4607
4643
|
delete ret.boundElementIds;
|
|
4608
4644
|
return ret;
|
|
4609
4645
|
};
|
|
4610
|
-
var restoreElement = (element,
|
|
4646
|
+
var restoreElement = (element, targetElementsMap, existingElementsMap, opts) => {
|
|
4611
4647
|
element = { ...element };
|
|
4612
4648
|
switch (element.type) {
|
|
4613
4649
|
case "text":
|
|
@@ -4697,13 +4733,15 @@ var restoreElement = (element, elementsMap, opts) => {
|
|
|
4697
4733
|
startBinding: repairBinding(
|
|
4698
4734
|
element,
|
|
4699
4735
|
element.startBinding,
|
|
4700
|
-
|
|
4736
|
+
targetElementsMap,
|
|
4737
|
+
existingElementsMap,
|
|
4701
4738
|
"start"
|
|
4702
4739
|
),
|
|
4703
4740
|
endBinding: repairBinding(
|
|
4704
4741
|
element,
|
|
4705
4742
|
element.endBinding,
|
|
4706
|
-
|
|
4743
|
+
targetElementsMap,
|
|
4744
|
+
existingElementsMap,
|
|
4707
4745
|
"end"
|
|
4708
4746
|
),
|
|
4709
4747
|
startArrowhead: startArrowhead2,
|
|
@@ -4791,10 +4829,10 @@ var repairFrameMembership = (element, elementsMap) => {
|
|
|
4791
4829
|
}
|
|
4792
4830
|
}
|
|
4793
4831
|
};
|
|
4794
|
-
var restoreElements = (targetElements,
|
|
4832
|
+
var restoreElements = (targetElements, existingElements, opts) => {
|
|
4795
4833
|
const existingIds = /* @__PURE__ */ new Set();
|
|
4796
|
-
const
|
|
4797
|
-
const
|
|
4834
|
+
const targetElementsMap = arrayToMap2(targetElements || []);
|
|
4835
|
+
const existingElementsMap = existingElements ? arrayToMap2(existingElements) : null;
|
|
4798
4836
|
const restoredElements = syncInvalidIndices2(
|
|
4799
4837
|
(targetElements || []).reduce((elements, element) => {
|
|
4800
4838
|
if (element.type === "selection") {
|
|
@@ -4802,15 +4840,16 @@ var restoreElements = (targetElements, localElements, opts) => {
|
|
|
4802
4840
|
}
|
|
4803
4841
|
let migratedElement = restoreElement(
|
|
4804
4842
|
element,
|
|
4805
|
-
|
|
4843
|
+
targetElementsMap,
|
|
4844
|
+
existingElementsMap,
|
|
4806
4845
|
{
|
|
4807
4846
|
deleteInvisibleElements: opts?.deleteInvisibleElements
|
|
4808
4847
|
}
|
|
4809
4848
|
);
|
|
4810
4849
|
if (migratedElement) {
|
|
4811
|
-
const localElement =
|
|
4850
|
+
const localElement = existingElementsMap?.get(element.id);
|
|
4812
4851
|
const shouldMarkAsDeleted = opts?.deleteInvisibleElements && isInvisiblySmallElement(element);
|
|
4813
|
-
if (shouldMarkAsDeleted
|
|
4852
|
+
if (shouldMarkAsDeleted) {
|
|
4814
4853
|
migratedElement = bumpVersion(migratedElement, localElement?.version);
|
|
4815
4854
|
}
|
|
4816
4855
|
if (shouldMarkAsDeleted) {
|
|
@@ -4976,13 +5015,6 @@ var restoreAppState = (appState, localAppState) => {
|
|
|
4976
5015
|
editingFrame: null
|
|
4977
5016
|
};
|
|
4978
5017
|
};
|
|
4979
|
-
var restore = (data, localAppState, localElements, elementsConfig) => {
|
|
4980
|
-
return {
|
|
4981
|
-
elements: restoreElements(data?.elements, localElements, elementsConfig),
|
|
4982
|
-
appState: restoreAppState(data?.appState, localAppState || null),
|
|
4983
|
-
files: data?.files || {}
|
|
4984
|
-
};
|
|
4985
|
-
};
|
|
4986
5018
|
var restoreLibraryItem = (libraryItem) => {
|
|
4987
5019
|
const elements = restoreElements(
|
|
4988
5020
|
getNonDeletedElements(libraryItem.elements),
|
|
@@ -5022,9 +5054,9 @@ var restoreLibraryItems = (libraryItems = [], defaultStatus) => {
|
|
|
5022
5054
|
// data/blob.ts
|
|
5023
5055
|
var parseFileContents = async (blob) => {
|
|
5024
5056
|
let contents;
|
|
5025
|
-
if (blob.type ===
|
|
5057
|
+
if (blob.type === MIME_TYPES5.png) {
|
|
5026
5058
|
try {
|
|
5027
|
-
return await (await import("./data/image-
|
|
5059
|
+
return await (await import("./data/image-Q6JHR7OE.js")).decodePngMetadata(blob);
|
|
5028
5060
|
} catch (error) {
|
|
5029
5061
|
if (error.message === "INVALID") {
|
|
5030
5062
|
throw new ImageSceneDataError(
|
|
@@ -5049,7 +5081,7 @@ var parseFileContents = async (blob) => {
|
|
|
5049
5081
|
};
|
|
5050
5082
|
});
|
|
5051
5083
|
}
|
|
5052
|
-
if (blob.type ===
|
|
5084
|
+
if (blob.type === MIME_TYPES5.svg) {
|
|
5053
5085
|
try {
|
|
5054
5086
|
return decodeSvgBase64Payload({
|
|
5055
5087
|
svg: contents
|
|
@@ -5105,30 +5137,27 @@ var loadSceneOrLibraryFromBlob = async (blob, localAppState, localElements, file
|
|
|
5105
5137
|
}
|
|
5106
5138
|
if (isValidExcalidrawData(data)) {
|
|
5107
5139
|
return {
|
|
5108
|
-
type:
|
|
5109
|
-
data:
|
|
5110
|
-
{
|
|
5111
|
-
|
|
5112
|
-
|
|
5140
|
+
type: MIME_TYPES5.excalidraw,
|
|
5141
|
+
data: {
|
|
5142
|
+
elements: restoreElements(data.elements, localElements, {
|
|
5143
|
+
repairBindings: true,
|
|
5144
|
+
deleteInvisibleElements: true
|
|
5145
|
+
}),
|
|
5146
|
+
appState: restoreAppState(
|
|
5147
|
+
{
|
|
5113
5148
|
theme: localAppState?.theme,
|
|
5114
5149
|
fileHandle: fileHandle || blob.handle || null,
|
|
5115
5150
|
...cleanAppStateForExport(data.appState || {}),
|
|
5116
5151
|
...localAppState ? calculateScrollCenter(data.elements || [], localAppState) : {}
|
|
5117
5152
|
},
|
|
5118
|
-
|
|
5119
|
-
|
|
5120
|
-
|
|
5121
|
-
|
|
5122
|
-
{
|
|
5123
|
-
repairBindings: true,
|
|
5124
|
-
refreshDimensions: false,
|
|
5125
|
-
deleteInvisibleElements: true
|
|
5126
|
-
}
|
|
5127
|
-
)
|
|
5153
|
+
localAppState
|
|
5154
|
+
),
|
|
5155
|
+
files: data.files || {}
|
|
5156
|
+
}
|
|
5128
5157
|
};
|
|
5129
5158
|
} else if (isValidLibrary(data)) {
|
|
5130
5159
|
return {
|
|
5131
|
-
type:
|
|
5160
|
+
type: MIME_TYPES5.excalidrawlib,
|
|
5132
5161
|
data
|
|
5133
5162
|
};
|
|
5134
5163
|
}
|
|
@@ -5147,7 +5176,7 @@ var loadFromBlob = async (blob, localAppState, localElements, fileHandle) => {
|
|
|
5147
5176
|
localElements,
|
|
5148
5177
|
fileHandle
|
|
5149
5178
|
);
|
|
5150
|
-
if (ret.type !==
|
|
5179
|
+
if (ret.type !== MIME_TYPES5.excalidraw) {
|
|
5151
5180
|
throw new Error("Error: invalid file");
|
|
5152
5181
|
}
|
|
5153
5182
|
return ret.data;
|
|
@@ -5215,7 +5244,7 @@ var dataURLToString = (dataURL) => {
|
|
|
5215
5244
|
return base64ToString(dataURL.slice(dataURL.indexOf(",") + 1));
|
|
5216
5245
|
};
|
|
5217
5246
|
var resizeImageFile = async (file, opts) => {
|
|
5218
|
-
if (file.type ===
|
|
5247
|
+
if (file.type === MIME_TYPES5.svg) {
|
|
5219
5248
|
return file;
|
|
5220
5249
|
}
|
|
5221
5250
|
const [pica, imageBlobReduce] = await Promise.all([
|
|
@@ -5248,7 +5277,7 @@ var resizeImageFile = async (file, opts) => {
|
|
|
5248
5277
|
};
|
|
5249
5278
|
var SVGStringToFile = (SVGString, filename = "") => {
|
|
5250
5279
|
return new File([new TextEncoder().encode(SVGString)], filename, {
|
|
5251
|
-
type:
|
|
5280
|
+
type: MIME_TYPES5.svg
|
|
5252
5281
|
});
|
|
5253
5282
|
};
|
|
5254
5283
|
var ImageURLToFile = async (imageUrl, filename = "") => {
|
|
@@ -5300,7 +5329,7 @@ var getActualMimeTypeFromImage = async (file) => {
|
|
|
5300
5329
|
};
|
|
5301
5330
|
for (const type of Object.keys(bytes)) {
|
|
5302
5331
|
if (leadingBytes.match(bytes[type])) {
|
|
5303
|
-
mimeType =
|
|
5332
|
+
mimeType = MIME_TYPES5[type];
|
|
5304
5333
|
break;
|
|
5305
5334
|
}
|
|
5306
5335
|
}
|
|
@@ -5317,9 +5346,9 @@ var normalizeFile = async (file) => {
|
|
|
5317
5346
|
return file;
|
|
5318
5347
|
}
|
|
5319
5348
|
if (file?.name?.endsWith(".excalidrawlib")) {
|
|
5320
|
-
file = createFile(file,
|
|
5349
|
+
file = createFile(file, MIME_TYPES5.excalidrawlib, file.name);
|
|
5321
5350
|
} else if (file?.name?.endsWith(".excalidraw")) {
|
|
5322
|
-
file = createFile(file,
|
|
5351
|
+
file = createFile(file, MIME_TYPES5.excalidraw, file.name);
|
|
5323
5352
|
} else if (!file.type || file.type?.startsWith("image/")) {
|
|
5324
5353
|
const mimeType = await getActualMimeTypeFromImage(file);
|
|
5325
5354
|
if (mimeType && mimeType !== file.type) {
|
|
@@ -5360,7 +5389,7 @@ var encodePngMetadata = async ({
|
|
|
5360
5389
|
}) => {
|
|
5361
5390
|
const chunks = decodePng(new Uint8Array(await blobToArrayBuffer(blob)));
|
|
5362
5391
|
const metadataChunk = tEXt.encode(
|
|
5363
|
-
|
|
5392
|
+
MIME_TYPES6.excalidraw,
|
|
5364
5393
|
JSON.stringify(
|
|
5365
5394
|
encode({
|
|
5366
5395
|
text: metadata,
|
|
@@ -5369,11 +5398,11 @@ var encodePngMetadata = async ({
|
|
|
5369
5398
|
)
|
|
5370
5399
|
);
|
|
5371
5400
|
chunks.splice(-1, 0, metadataChunk);
|
|
5372
|
-
return new Blob([encodePng(chunks)], { type:
|
|
5401
|
+
return new Blob([encodePng(chunks)], { type: MIME_TYPES6.png });
|
|
5373
5402
|
};
|
|
5374
5403
|
var decodePngMetadata = async (blob) => {
|
|
5375
5404
|
const metadata = await getTEXtChunk(blob);
|
|
5376
|
-
if (metadata?.keyword ===
|
|
5405
|
+
if (metadata?.keyword === MIME_TYPES6.excalidraw) {
|
|
5377
5406
|
try {
|
|
5378
5407
|
const encodedData = JSON.parse(metadata.text);
|
|
5379
5408
|
if (!("encoded" in encodedData)) {
|
|
@@ -5436,7 +5465,6 @@ export {
|
|
|
5436
5465
|
restoreElement,
|
|
5437
5466
|
restoreElements,
|
|
5438
5467
|
restoreAppState,
|
|
5439
|
-
restore,
|
|
5440
5468
|
restoreLibraryItems,
|
|
5441
5469
|
getTEXtChunk,
|
|
5442
5470
|
encodePngMetadata,
|
|
@@ -5462,4 +5490,4 @@ export {
|
|
|
5462
5490
|
createFile,
|
|
5463
5491
|
normalizeFile
|
|
5464
5492
|
};
|
|
5465
|
-
//# sourceMappingURL=chunk-
|
|
5493
|
+
//# sourceMappingURL=chunk-5A4X24JB.js.map
|