@layers-app/editor 0.7.94 → 1.0.0
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/index.cjs +2 -2
- package/dist/index.d.ts +14 -94
- package/dist/index.js +12 -13
- package/dist/{layers.Dl1Wx9FX.js → layers.-g7uNd7M.js} +2 -2
- package/dist/{layers.CRWLh_yw.js → layers.-pQVK1r1.js} +1 -1
- package/dist/{layers.DlHAVU5n.js → layers.0M89REzq.js} +1 -1
- package/dist/{layers.UwSWIWP4.js → layers.172Wbi61.js} +1 -1
- package/dist/{layers.B48K3AE2.js → layers.1GN3IXqz.js} +3 -3
- package/dist/{layers.BeS3PtsD.js → layers.1SQWVglr.js} +1 -1
- package/dist/{layers.Cf1cfS_i.js → layers.3nPhoXKI.js} +1 -1
- package/dist/{layers.VXDR9PIz.js → layers.3uDgSyXI.js} +1 -1
- package/dist/{layers.BPLRV40d.js → layers.4YdQEBKi.js} +1 -1
- package/dist/{layers.BiqyvvR9.js → layers.4bbyJ4Vc.js} +1 -1
- package/dist/{layers.CCVF69iT.js → layers.4w6TaBq1.js} +1 -1
- package/dist/{layers.BgjUs1jF.js → layers.4yakxeiR.js} +3 -3
- package/dist/{layers.DSQS44dK.js → layers.56A1F1-s.js} +4 -4
- package/dist/{layers.Di-b5rnA.js → layers.76l1mjCN.js} +1 -1
- package/dist/{layers.D3mGufeb.js → layers.79mr9QCD.js} +1 -1
- package/dist/{layers.Dx3PqPY0.js → layers.86R4uPiG.js} +1 -1
- package/dist/{layers.DBdwd7TZ.js → layers.8ml6fc54.js} +1 -1
- package/dist/{layers.CN-UX7Fm.js → layers.A2jAwths.js} +1 -1
- package/dist/{layers.BnJjQcWj.js → layers.A9824OJT.js} +2 -2
- package/dist/{layers.ce8ytukt.js → layers.AJesQfn4.js} +1 -1
- package/dist/{layers.BEGVP5H5.js → layers.AbQtiWrN.js} +2 -2
- package/dist/{layers.D_Mv6gfq.js → layers.B-lSYmly.js} +1 -1
- package/dist/{layers.uCjmcjnb.js → layers.B0xgvAcr.js} +1 -1
- package/dist/{layers.Bl4DHC7D.js → layers.B1W2Vzf9.js} +2 -2
- package/dist/{layers.BbOH_FNC.js → layers.B2pDIssY.js} +2 -2
- package/dist/{layers.DtW6XnAE.js → layers.B4A2yWw6.js} +1 -1
- package/dist/layers.B4xiiM7g.js +1 -0
- package/dist/{layers.BV2_XShA.js → layers.B5QtFq-Y.js} +1 -1
- package/dist/{layers.DttmtG7W.js → layers.B6Y1d0hZ.js} +1 -1
- package/dist/{layers.CtzsJ_Qz.js → layers.B6zoccbm.js} +1 -1
- package/dist/{layers.C1hY4S0L.js → layers.B8SVgHR9.js} +1 -1
- package/dist/{layers.DDEnQpEn.js → layers.BA9YgAbj.js} +1 -1
- package/dist/{layers.Bg238NQZ.js → layers.BCOC7xJt.js} +1 -1
- package/dist/{layers.CBd4b_-g.js → layers.BCXXvz7G.js} +39308 -44966
- package/dist/{layers.DMj5AHSo.js → layers.BEJe_rWx.js} +1 -1
- package/dist/{layers.C-_OViOU.js → layers.BGcXTqva.js} +1 -1
- package/dist/{layers.Cq7cNKQI.js → layers.BH8S66mC.js} +1 -1
- package/dist/{layers.DtkxfHEW.js → layers.BJE015iJ.js} +1 -1
- package/dist/{layers.Cvt4L11X.js → layers.BJHOdAzy.js} +1 -1
- package/dist/{layers.Bz348g-F.js → layers.BJfI9xHh.js} +6 -6
- package/dist/{layers.DdXYC_K_.js → layers.BKOBZyMI.js} +1 -1
- package/dist/{layers.PPWNGasf.js → layers.BL-7xEvj.js} +1 -1
- package/dist/{layers.a6X49GwZ.js → layers.BLVPAx3X.js} +1 -1
- package/dist/{layers.BHzIAItY.js → layers.BNAyV97E.js} +1 -1
- package/dist/{layers._QYCBpoM.js → layers.BNjCIUGh.js} +1 -1
- package/dist/{layers.BpLMN9gb.js → layers.BNlcPgk-.js} +1 -1
- package/dist/{layers.C7yRYYMj.js → layers.BO3a_hC-.js} +1 -1
- package/dist/{layers.BJOiGxCQ.js → layers.BP_eA-4_.js} +1 -1
- package/dist/{layers.0zto2iHQ.js → layers.BQKGUso9.js} +1 -1
- package/dist/{layers.B0FUlxmg.js → layers.BQU4SnRP.js} +1 -1
- package/dist/{layers.D_4fiBYz.js → layers.BQqs2eVb.js} +1 -1
- package/dist/{layers.CLwE2B2y.js → layers.BRMrA2Ub.js} +1 -1
- package/dist/{layers.DSwDTe9Z.js → layers.BW8UTyKL.js} +1 -1
- package/dist/layers.BWYi9A2p.js +1 -0
- package/dist/{layers.BrS1J4vJ.js → layers.BYofSd52.js} +1 -1
- package/dist/{layers.BsilZJVZ.js → layers.BYs8uPB4.js} +1 -1
- package/dist/{layers.D3MNgET7.js → layers.B_9GBAfN.js} +1 -1
- package/dist/{layers.kHmxS0Hb.js → layers.B_S3C4DG.js} +3 -3
- package/dist/{layers.NJcYAT1C.js → layers.B__yemFX.js} +1 -1
- package/dist/{layers.BP-1XTdK.js → layers.BbQ88dYL.js} +1 -1
- package/dist/{layers.Cxqe2t_R.js → layers.BfrGvhnj.js} +1 -1
- package/dist/{layers.wNNm0OR_.js → layers.Bh6R4aTS.js} +1 -1
- package/dist/{layers.B8KixoLp.js → layers.BhXltzPN.js} +1 -1
- package/dist/{layers.CYvsrAsT.js → layers.Bid82dra.js} +1 -1
- package/dist/{layers.B6i7W6CZ.js → layers.BjTUzUPL.js} +1 -1
- package/dist/{layers.IrklSkrg.js → layers.BlYGbAr0.js} +1 -1
- package/dist/{layers.Cvq6n0af.js → layers.BomQfc62.js} +1 -1
- package/dist/{layers.hyrgMf8D.js → layers.BpYACVpe.js} +4 -4
- package/dist/{layers.Bdmc_OD6.js → layers.Bph7Ya7r.js} +4 -4
- package/dist/{layers.CNuUCqVd.js → layers.BrgxMSh1.js} +2 -2
- package/dist/{layers._4FKy5MF.js → layers.BsDg01CU.js} +1 -1
- package/dist/{layers.CnwPr2_m.js → layers.Bsf69xiU.js} +1 -1
- package/dist/layers.BsoRcVww.js +8 -0
- package/dist/{layers.CdjisxUB.js → layers.BtQfqte_.js} +4 -4
- package/dist/layers.BuEQHVRn.js +585 -0
- package/dist/{layers.NQ1Aikwn.js → layers.BvvkbP82.js} +1 -1
- package/dist/{layers.CIfvFXmc.js → layers.BxLTmqIg.js} +1 -1
- package/dist/{layers.BJL0EBPa.js → layers.BxzLgCx7.js} +1 -1
- package/dist/layers.C087BbSN.js +1 -0
- package/dist/{layers.CydmsCJ6.js → layers.C1G5XjDq.js} +1 -1
- package/dist/{layers.C_ySCaah.js → layers.C2Crxoln.js} +1 -1
- package/dist/{layers.CzvOzOWn.js → layers.C2H8RbfP.js} +3 -3
- package/dist/{layers.C0wsv0al.js → layers.C7nW2TfS.js} +1 -1
- package/dist/{layers.BrQYLhBE.js → layers.C82M5g3Y.js} +1 -1
- package/dist/{layers.DKJ2WU82.js → layers.CAQaTno7.js} +1 -1
- package/dist/{layers.C-sZ8JPk.js → layers.CAfWmj8Q.js} +3 -3
- package/dist/{layers.CJwda6Ie.js → layers.CB6DYx3P.js} +1 -1
- package/dist/{layers.DAsilv3R.js → layers.CBdVIhaC.js} +1 -1
- package/dist/{layers.BUGbfqCF.js → layers.CDpX4wCh.js} +1 -1
- package/dist/{layers.uYVJCiej.js → layers.CFAU3aYo.js} +1 -1
- package/dist/{layers.BCBsVC-u.js → layers.CGLg-QXF.js} +1 -1
- package/dist/{layers.CfAz8jRQ.js → layers.CGNQx09_.js} +1 -1
- package/dist/{layers.Bgg8ra_F.js → layers.CLjkIRsj.js} +1 -1
- package/dist/{layers.CuWBVZVE.js → layers.CLxXLHn0.js} +1 -1
- package/dist/{layers.Bal9D_3l.js → layers.CMJleN2N.js} +1 -1
- package/dist/layers.CMv-MGOo.js +539 -0
- package/dist/{layers.Bq0FGir_.js → layers.CNX3Y13v.js} +7 -7
- package/dist/{layers._tF8WTcw.js → layers.CNa0oe2M.js} +1 -1
- package/dist/{layers.CBMyh3tg.js → layers.CNkZ32Ss.js} +1 -1
- package/dist/{layers.B5aMO3c8.js → layers.CR-q81fL.js} +24 -24
- package/dist/{layers.CdzEQ0r1.js → layers.CSVKd1FP.js} +1 -1
- package/dist/{layers.DEnZyvIx.js → layers.CTxdvFPq.js} +1 -1
- package/dist/{layers.BcWyCmWd.js → layers.CUki-tZj.js} +1 -1
- package/dist/{layers.MxwwvtSA.js → layers.CV0V6r-0.js} +1 -1
- package/dist/{layers.VAJVLjZN.js → layers.CVEiAGOh.js} +1 -1
- package/dist/{layers.5uzSx96y.js → layers.CXCxIEL2.js} +1 -1
- package/dist/{layers.DJDxjtB3.js → layers.Cb6Q1pdl.js} +1 -1
- package/dist/{layers.IUcKI4IG.js → layers.CbRDb66r.js} +1 -1
- package/dist/{layers.4Ksq__pH.js → layers.Chd_QFzk.js} +3 -3
- package/dist/{layers.BXjG9UK4.js → layers.CkVpUUdk.js} +1 -1
- package/dist/{layers.C8JZixrP.js → layers.Cm20abCV.js} +1 -1
- package/dist/{layers.CUWMwxBO.js → layers.CoojhKEQ.js} +1 -1
- package/dist/{layers.CRjfwp1e.js → layers.CqZ_SmxS.js} +1 -1
- package/dist/{layers.B3Bs8kNy.js → layers.Cr8cieQc.js} +1 -1
- package/dist/{layers.LkFaqKJi.js → layers.Crp4PjDd.js} +1 -1
- package/dist/{layers.GjBrbIMu.js → layers.CwvUhpqa.js} +1 -1
- package/dist/{layers.DKPRD01N.js → layers.Cy6tKZRE.js} +178 -167
- package/dist/{layers.Dc7Pvwn0.js → layers.D-3e1bqL.js} +1 -1
- package/dist/{layers.Ch4ChAuy.js → layers.D2H0ue2X.js} +3 -3
- package/dist/{layers.eOVFoPB6.js → layers.D2Qy6sM9.js} +3 -3
- package/dist/{layers.CPDT_Dw7.js → layers.D2wXSTG7.js} +4 -4
- package/dist/{layers.BP2Y3nmD.js → layers.D5esPWTY.js} +1 -1
- package/dist/{layers.BKiHObFL.js → layers.D6tjfoCc.js} +4 -4
- package/dist/{layers.BxeCbx-6.js → layers.DB5FC83E.js} +1 -1
- package/dist/{layers.ChmMJLJH.js → layers.DCzFhP-8.js} +4 -4
- package/dist/{layers.DL1-UT1O.js → layers.DDx-SMCl.js} +1 -1
- package/dist/{layers.BZfzujdb.js → layers.DEAJVFxk.js} +1 -1
- package/dist/{layers.GIL4vDl3.js → layers.DGPzsNmI.js} +1 -1
- package/dist/{layers.DrYDPEw4.js → layers.DHw29VaG.js} +1 -1
- package/dist/{layers.BT7KTLga.js → layers.DI2iL4Tn.js} +1 -1
- package/dist/{layers.DzkkzOI1.js → layers.DIilVF_M.js} +1 -1
- package/dist/{layers.Bs7NHk-D.js → layers.DJZSw7_Z.js} +1 -1
- package/dist/{layers.jjUX4oi2.js → layers.DLQ6SBa2.js} +1 -1
- package/dist/{layers.D-fSEr1I.js → layers.DLR83xiF.js} +1 -1
- package/dist/{layers.KBaHkWu2.js → layers.DLwTOFrT.js} +1 -1
- package/dist/{layers.BfOoqcmT.js → layers.DNGfDbtN.js} +1 -1
- package/dist/{layers.Ch3sBjxG.js → layers.DOuETTDt.js} +1 -1
- package/dist/{layers.R-v4gNx5.js → layers.DQhXyNBG.js} +1 -1
- package/dist/{layers.CriBy1WL.js → layers.DScpmk0U.js} +1 -1
- package/dist/{layers.SJr4oMpe.js → layers.DUjgzxSn.js} +1 -1
- package/dist/{layers.tcIOYaEM.js → layers.DW6kniIq.js} +1 -1
- package/dist/{layers.W4AlOGgf.js → layers.DXudULR-.js} +1 -1
- package/dist/{layers.PsoKQAJt.js → layers.DYJfly4I.js} +1 -1
- package/dist/{layers.ClL8l0tb.js → layers.DYi-68tU.js} +5 -5
- package/dist/{layers.qz3R7qFS.js → layers.DZ9aQzzh.js} +1 -1
- package/dist/{layers.bOjyWNMD.js → layers.D_BTjOpO.js} +8 -8
- package/dist/layers.D_DCnlm4.js +1 -0
- package/dist/{layers.BzxndRXa.js → layers.Dctz1-Be.js} +1 -1
- package/dist/{layers.BQr6h_rZ.js → layers.DdgU7Wxt.js} +1 -1
- package/dist/{layers.4t4ris2c.js → layers.DfgFW_fZ.js} +1 -1
- package/dist/layers.DikU4t0M.js +6 -0
- package/dist/{layers.DgnF9ACQ.js → layers.DkNt8L2T.js} +1 -1
- package/dist/{layers.C_cLfJzM.js → layers.Dkq7fr__.js} +1 -1
- package/dist/{layers.ukcAaUuY.js → layers.DlHJe0eH.js} +1 -1
- package/dist/{layers.BBeeJXeW.js → layers.DoW-ZBfZ.js} +1 -1
- package/dist/{layers.yLjsrlcl.js → layers.DqQiUrEW.js} +1 -1
- package/dist/{layers.B3G1fUZs.js → layers.DqTbmk_s.js} +3 -3
- package/dist/{layers.nNQp4NGW.js → layers.DudkVylr.js} +1 -1
- package/dist/{layers.CHAiYk68.js → layers.Dv5eFafD.js} +1 -1
- package/dist/{layers.CEG5rDDR.js → layers.DvL-XSvD.js} +1 -1
- package/dist/{layers.BtbDCem_.js → layers.DxWM3PwA.js} +1 -1
- package/dist/{layers.BStfa7Ec.js → layers.Dz50RMu3.js} +1 -1
- package/dist/{layers.BDZny-FL.js → layers.FZD8ymtL.js} +1 -1
- package/dist/{layers.BVm12Snl.js → layers.Gnhel6bO.js} +1 -1
- package/dist/{layers.Dv2NVib3.js → layers.Iv2OYybX.js} +1 -1
- package/dist/{layers.zkSG6BJe.js → layers.JNUaRnwq.js} +1 -1
- package/dist/{layers.DEX89APB.js → layers.N1zRNyjd.js} +1 -1
- package/dist/{layers.4TP6L1o1.js → layers.NGi_ungC.js} +1 -1
- package/dist/{layers.CoBkDvD9.js → layers.NQIPCUeA.js} +1 -1
- package/dist/{layers.DXJuHUsP.js → layers.PbePXAaO.js} +1 -1
- package/dist/{layers.BB7KMib0.js → layers.Pr3SAbdJ.js} +1 -1
- package/dist/{layers.CovfX0qy.js → layers.QyLKnikd.js} +5 -5
- package/dist/{layers.C0MFIWD0.js → layers.RWD55B8I.js} +3 -3
- package/dist/{layers.DLGlC4vJ.js → layers.SVdqNH63.js} +1 -1
- package/dist/{layers.zHn0MlgM.js → layers.UBBwGTJL.js} +1 -1
- package/dist/{layers.BBDOQ7yE.js → layers.VKrCpmtA.js} +1 -1
- package/dist/{layers.CL41IL9l.js → layers.VQnb33oI.js} +1 -1
- package/dist/{layers.ANi-fKvt.js → layers.VVbBvmUb.js} +4 -4
- package/dist/{layers.CMB7qHSe.js → layers.YNuLYTuu.js} +1 -1
- package/dist/{layers.DT-IC93y.js → layers.YpjXAo6o.js} +1 -1
- package/dist/{layers.CrDI7BOy.js → layers.aTewiNrv.js} +1 -1
- package/dist/{layers.D8LHv5Wk.js → layers.aWrDfA3G.js} +1 -1
- package/dist/{layers.C_lggeez.js → layers.aYR8ZkKI.js} +4 -4
- package/dist/{layers.uxy_pIya.js → layers.an2vviU-.js} +3 -3
- package/dist/{layers.CsY2PEaf.js → layers.ccYEo0zL.js} +1 -1
- package/dist/{layers.Bob_UXUE.js → layers.d1J8xasZ.js} +1 -1
- package/dist/{layers.CPtqyUQW.js → layers.dD16n4wC.js} +1 -1
- package/dist/{layers.iikl0VeP.js → layers.dIolMNur.js} +1 -1
- package/dist/{layers.CCVNugk5.js → layers.dhMjlsvZ.js} +1 -1
- package/dist/{layers.C_ncOnbF.js → layers.i_EhsGoq.js} +1 -1
- package/dist/{layers.CoN_biX_.js → layers.j_fu-1he.js} +1 -1
- package/dist/{layers.B_GfugcR.js → layers.kVunnuXH.js} +1 -1
- package/dist/{layers.4O7NP2hG.js → layers.l4zNs6ys.js} +1 -1
- package/dist/{layers.D0XXdyU0.js → layers.oqrEyCZw.js} +1 -1
- package/dist/{layers.CMHJlCdH.js → layers.qeIA-o6A.js} +1 -1
- package/dist/{layers.CN6jCCLu.js → layers.rPt8nHhw.js} +1 -1
- package/dist/{layers.qlG64X88.js → layers.tbzuOSk6.js} +1 -1
- package/dist/{layers.Dzf8tAtZ.js → layers.tiZH4Hp1.js} +1 -1
- package/dist/{layers.Bpf4TPHn.js → layers.w3nbwofn.js} +1 -1
- package/dist/{layers.BSBUCRxL.js → layers.x8s7fn3P.js} +1 -1
- package/dist/{layers.BdpB4FQH.js → layers.y8izWV3a.js} +1 -1
- package/dist/{layers.Dvgz32kE.js → layers.z2WtNyKR.js} +1 -1
- package/package.json +16 -128
- package/README.md +0 -831
- package/dist/layers.B184Fepz.js +0 -1
- package/dist/layers.BRYleyNj.js +0 -1
- package/dist/layers.Be2REn5S.js +0 -1
- package/dist/layers.Bu5dgBb_.js +0 -310
- package/dist/layers.C4LsiUri.js +0 -8
- package/dist/layers.CyynMWyN.js +0 -6
- package/dist/layers.QjBxi8wH.js +0 -533
- package/dist/layers.hMoxHZrO.js +0 -1
package/dist/layers.C4LsiUri.js
DELETED
package/dist/layers.CyynMWyN.js
DELETED
package/dist/layers.QjBxi8wH.js
DELETED
|
@@ -1,533 +0,0 @@
|
|
|
1
|
-
import { jsx as n, jsxs as S, Fragment as oe } from "react/jsx-runtime";
|
|
2
|
-
import { useMemo as re, useState as _, useEffect as z, useRef as F, useCallback as R, Suspense as le, lazy as ie } from "react";
|
|
3
|
-
import { useLexicalComposerContext as ae } from "@lexical/react/LexicalComposerContext";
|
|
4
|
-
import { useLexicalEditable as se } from "@lexical/react/useLexicalEditable";
|
|
5
|
-
import { useLexicalNodeSelection as ce } from "@lexical/react/useLexicalNodeSelection";
|
|
6
|
-
import { mergeRegister as de } from "@lexical/utils";
|
|
7
|
-
import { $setSelection as ue, $getNodeByKey as H, CLICK_COMMAND as fe, COMMAND_PRIORITY_LOW as $, KEY_DELETE_COMMAND as me, KEY_BACKSPACE_COMMAND as ge } from "lexical";
|
|
8
|
-
import { R as he, b as q, y as Q, m as Y, K as be, F as Z, A as pe, p as K, G as xe, M as Ce, H as P, a as ne, J as ee } from "./layers.CBd4b_-g.js";
|
|
9
|
-
import { l as ve, p as Ee } from "./layers.DilA0qnM.js";
|
|
10
|
-
import { useTranslation as J } from "react-i18next";
|
|
11
|
-
import { Modal as we, Text as ye, Flex as Te, Button as G, Box as te, Stack as ke, useMantineColorScheme as Me, Loader as De } from "@mantine/core";
|
|
12
|
-
import { useDisclosure as Oe } from "@mantine/hooks";
|
|
13
|
-
import { BottomDrawerWithoutHeader as Se } from "@layers-app/shared";
|
|
14
|
-
const _e = ({
|
|
15
|
-
isCloseModal: r,
|
|
16
|
-
setCloseModalOpen: i,
|
|
17
|
-
confirmClose: b
|
|
18
|
-
}) => {
|
|
19
|
-
const { t: p } = J();
|
|
20
|
-
return /* @__PURE__ */ n(
|
|
21
|
-
we,
|
|
22
|
-
{
|
|
23
|
-
opened: r,
|
|
24
|
-
onClose: () => {
|
|
25
|
-
i(!1);
|
|
26
|
-
},
|
|
27
|
-
centered: !0,
|
|
28
|
-
title: p("editor.unsavedChanges.title"),
|
|
29
|
-
closeOnClickOutside: !0,
|
|
30
|
-
closeOnEscape: !0,
|
|
31
|
-
size: "500",
|
|
32
|
-
zIndex: 999,
|
|
33
|
-
children: /* @__PURE__ */ S("div", { children: [
|
|
34
|
-
/* @__PURE__ */ n(ye, { mb: "md", children: p("editor.unsavedChanges.message") }),
|
|
35
|
-
/* @__PURE__ */ S(Te, { justify: "flex-end", gap: "sm", children: [
|
|
36
|
-
/* @__PURE__ */ n(
|
|
37
|
-
G,
|
|
38
|
-
{
|
|
39
|
-
variant: "default",
|
|
40
|
-
onClick: () => {
|
|
41
|
-
i(!1);
|
|
42
|
-
},
|
|
43
|
-
fullWidth: !0,
|
|
44
|
-
children: p("editor.unsavedChanges.cancel")
|
|
45
|
-
}
|
|
46
|
-
),
|
|
47
|
-
/* @__PURE__ */ n(G, { color: "red", onClick: b, fullWidth: !0, children: p("editor.unsavedChanges.closeWithoutSaving") })
|
|
48
|
-
] })
|
|
49
|
-
] })
|
|
50
|
-
}
|
|
51
|
-
);
|
|
52
|
-
};
|
|
53
|
-
function Ne({
|
|
54
|
-
imageContainerRef: r,
|
|
55
|
-
editor: i,
|
|
56
|
-
rootClassName: b = null,
|
|
57
|
-
width: p = "inherit",
|
|
58
|
-
height: f = "inherit",
|
|
59
|
-
nodeKey: a,
|
|
60
|
-
alignment: N,
|
|
61
|
-
setModalOpen: C,
|
|
62
|
-
previewSVG: o,
|
|
63
|
-
isModalOpen: k
|
|
64
|
-
}) {
|
|
65
|
-
const u = re(() => o ?? "", [o]), [B, y] = _(!1), [
|
|
66
|
-
L,
|
|
67
|
-
{ open: v, close: E }
|
|
68
|
-
] = Oe(!1), { t: c } = J();
|
|
69
|
-
z(() => {
|
|
70
|
-
k && y(!1);
|
|
71
|
-
}, [k]);
|
|
72
|
-
const A = (T, g) => {
|
|
73
|
-
i.update(() => {
|
|
74
|
-
ue(null);
|
|
75
|
-
const e = H(a);
|
|
76
|
-
return ne(e) && e.setWidthAndHeight(T, g), !0;
|
|
77
|
-
});
|
|
78
|
-
}, M = () => {
|
|
79
|
-
ee(i, a);
|
|
80
|
-
}, D = () => {
|
|
81
|
-
E(), C(!0);
|
|
82
|
-
}, j = () => {
|
|
83
|
-
E(), ee(i, a);
|
|
84
|
-
};
|
|
85
|
-
return /* @__PURE__ */ S(
|
|
86
|
-
he,
|
|
87
|
-
{
|
|
88
|
-
editor: i,
|
|
89
|
-
isIcon: !1,
|
|
90
|
-
isEmbed: !0,
|
|
91
|
-
width: Q(p),
|
|
92
|
-
height: Q(f),
|
|
93
|
-
onResizeEnd: A,
|
|
94
|
-
alignment: N,
|
|
95
|
-
children: [
|
|
96
|
-
/* @__PURE__ */ S(te, { className: "media-wrapper excaildraw", children: [
|
|
97
|
-
/* @__PURE__ */ n(
|
|
98
|
-
"div",
|
|
99
|
-
{
|
|
100
|
-
className: `media-actions${q || !xe ? " visible" : ""}`,
|
|
101
|
-
children: q ? /* @__PURE__ */ n(
|
|
102
|
-
Y,
|
|
103
|
-
{
|
|
104
|
-
"aria-label": c("editor.toolbar.more"),
|
|
105
|
-
label: c("editor.toolbar.more"),
|
|
106
|
-
flexBorder: !0,
|
|
107
|
-
onClick: v,
|
|
108
|
-
icon: be,
|
|
109
|
-
iconColor: "var(--mantine-color-gray-text)"
|
|
110
|
-
}
|
|
111
|
-
) : /* @__PURE__ */ S(oe, { children: [
|
|
112
|
-
/* @__PURE__ */ n(
|
|
113
|
-
Y,
|
|
114
|
-
{
|
|
115
|
-
"aria-label": "Settings",
|
|
116
|
-
label: c("editor.link.edit"),
|
|
117
|
-
flexBorder: !0,
|
|
118
|
-
onClick: () => {
|
|
119
|
-
C(!0);
|
|
120
|
-
},
|
|
121
|
-
icon: Z,
|
|
122
|
-
iconColor: "var(--mantine-color-gray-text)"
|
|
123
|
-
}
|
|
124
|
-
),
|
|
125
|
-
/* @__PURE__ */ n(
|
|
126
|
-
pe,
|
|
127
|
-
{
|
|
128
|
-
opened: B,
|
|
129
|
-
setOpened: y,
|
|
130
|
-
t: c,
|
|
131
|
-
editor: i,
|
|
132
|
-
nodeKey: a,
|
|
133
|
-
flexBorder: !0
|
|
134
|
-
}
|
|
135
|
-
),
|
|
136
|
-
/* @__PURE__ */ n(
|
|
137
|
-
Y,
|
|
138
|
-
{
|
|
139
|
-
"aria-label": "Delete",
|
|
140
|
-
label: c("editor.actions.delete"),
|
|
141
|
-
flexBorder: !0,
|
|
142
|
-
onClick: M,
|
|
143
|
-
icon: K,
|
|
144
|
-
iconColor: "var(--mantine-color-red-outline)"
|
|
145
|
-
}
|
|
146
|
-
)
|
|
147
|
-
] })
|
|
148
|
-
}
|
|
149
|
-
),
|
|
150
|
-
/* @__PURE__ */ n(
|
|
151
|
-
te,
|
|
152
|
-
{
|
|
153
|
-
w: "100%",
|
|
154
|
-
ref: (T) => {
|
|
155
|
-
T && r && (r.current = T);
|
|
156
|
-
},
|
|
157
|
-
className: b ?? "",
|
|
158
|
-
dangerouslySetInnerHTML: { __html: u }
|
|
159
|
-
}
|
|
160
|
-
)
|
|
161
|
-
] }),
|
|
162
|
-
q && /* @__PURE__ */ n(
|
|
163
|
-
Ce,
|
|
164
|
-
{
|
|
165
|
-
opened: L,
|
|
166
|
-
onClose: E,
|
|
167
|
-
title: c("editor.image.mobileActions"),
|
|
168
|
-
children: /* @__PURE__ */ S(ke, { gap: 4, p: 0, children: [
|
|
169
|
-
/* @__PURE__ */ n(
|
|
170
|
-
G,
|
|
171
|
-
{
|
|
172
|
-
type: "button",
|
|
173
|
-
variant: "subtle",
|
|
174
|
-
color: "gray",
|
|
175
|
-
fullWidth: !0,
|
|
176
|
-
justify: "flex-start",
|
|
177
|
-
bg: "light-dark(var(--mantine-color-gray-0), var(--mantine-color-gray-outline-hover))",
|
|
178
|
-
onClick: D,
|
|
179
|
-
leftSection: /* @__PURE__ */ n(
|
|
180
|
-
P,
|
|
181
|
-
{
|
|
182
|
-
icon: Z,
|
|
183
|
-
size: 16,
|
|
184
|
-
color: "var(--mantine-color-dimmed)"
|
|
185
|
-
}
|
|
186
|
-
),
|
|
187
|
-
children: c("editor.link.edit")
|
|
188
|
-
}
|
|
189
|
-
),
|
|
190
|
-
/* @__PURE__ */ n(
|
|
191
|
-
G,
|
|
192
|
-
{
|
|
193
|
-
type: "button",
|
|
194
|
-
variant: "subtle",
|
|
195
|
-
color: "red",
|
|
196
|
-
fullWidth: !0,
|
|
197
|
-
justify: "flex-start",
|
|
198
|
-
bg: "light-dark(var(--mantine-color-gray-0), var(--mantine-color-gray-outline-hover))",
|
|
199
|
-
onClick: j,
|
|
200
|
-
leftSection: /* @__PURE__ */ n(
|
|
201
|
-
P,
|
|
202
|
-
{
|
|
203
|
-
icon: K,
|
|
204
|
-
size: 16,
|
|
205
|
-
color: "var(--mantine-color-red-6)"
|
|
206
|
-
}
|
|
207
|
-
),
|
|
208
|
-
children: c("editor.actions.delete")
|
|
209
|
-
}
|
|
210
|
-
)
|
|
211
|
-
] })
|
|
212
|
-
}
|
|
213
|
-
)
|
|
214
|
-
]
|
|
215
|
-
}
|
|
216
|
-
);
|
|
217
|
-
}
|
|
218
|
-
let V = null;
|
|
219
|
-
const Be = /* @__PURE__ */ ie(async () => {
|
|
220
|
-
var i;
|
|
221
|
-
const r = await import("./layers.bOjyWNMD.js").then((b) => b.M);
|
|
222
|
-
return !V && r && (V = r.exportToSvg || ((i = r.default) == null ? void 0 : i.exportToSvg) || r.default), { default: r.Excalidraw };
|
|
223
|
-
}), Le = () => {
|
|
224
|
-
const [r, i] = _(
|
|
225
|
-
null
|
|
226
|
-
), b = R(
|
|
227
|
-
(p) => i(p),
|
|
228
|
-
[]
|
|
229
|
-
);
|
|
230
|
-
return [r, b];
|
|
231
|
-
};
|
|
232
|
-
function Ae({
|
|
233
|
-
onSave: r,
|
|
234
|
-
initialElements: i,
|
|
235
|
-
initialAppState: b,
|
|
236
|
-
initialFiles: p,
|
|
237
|
-
isShown: f = !1,
|
|
238
|
-
onDelete: a,
|
|
239
|
-
onClose: N,
|
|
240
|
-
isEdited: C
|
|
241
|
-
}) {
|
|
242
|
-
const [o, k] = Le(), { i18n: u, t: B } = J(), { colorScheme: y } = Me(), L = F(!1), [v, E] = _(i), [c, A] = _(p), [M, D] = _(f);
|
|
243
|
-
z(() => {
|
|
244
|
-
f && D(!0);
|
|
245
|
-
}, [f]), z(() => {
|
|
246
|
-
!f || L.current || (L.current = !0, Promise.resolve({ }));
|
|
247
|
-
}, [f]), z(() => {
|
|
248
|
-
f && setTimeout(() => {
|
|
249
|
-
var e, x;
|
|
250
|
-
(e = o == null ? void 0 : o.refresh) == null || e.call(o), (x = o == null ? void 0 : o.scrollToContent) == null || x.call(o);
|
|
251
|
-
}, 500);
|
|
252
|
-
}, [f, o]), z(() => {
|
|
253
|
-
if (!f)
|
|
254
|
-
return;
|
|
255
|
-
const e = (t, d) => {
|
|
256
|
-
const m = B(t);
|
|
257
|
-
return m.startsWith("editor.menu") ? d : m;
|
|
258
|
-
}, x = e(
|
|
259
|
-
"editor.menu.excalidraw.tools.frameTool",
|
|
260
|
-
u.language === "ru" ? "Инструмент рамки" : u.language === "es" ? "Herramienta de marco" : "Frame tool"
|
|
261
|
-
), s = e(
|
|
262
|
-
"editor.menu.excalidraw.tools.webEmbed",
|
|
263
|
-
u.language === "ru" ? "Веб-встраивание" : u.language === "es" ? "Incrustación web" : "Web Embed"
|
|
264
|
-
), w = e(
|
|
265
|
-
"editor.menu.excalidraw.tools.generate",
|
|
266
|
-
u.language === "ru" ? "Генерировать" : u.language === "es" ? "Generar" : "Generate"
|
|
267
|
-
), W = {
|
|
268
|
-
"Frame tool": x,
|
|
269
|
-
"Web Embed": s,
|
|
270
|
-
"Web embeded": s,
|
|
271
|
-
Generate: w
|
|
272
|
-
}, O = () => {
|
|
273
|
-
const t = document.querySelector(".App-toolbar__extra-tools-dropdown");
|
|
274
|
-
if (!t)
|
|
275
|
-
return;
|
|
276
|
-
const d = document.createTreeWalker(
|
|
277
|
-
t,
|
|
278
|
-
NodeFilter.SHOW_TEXT,
|
|
279
|
-
null
|
|
280
|
-
);
|
|
281
|
-
let m;
|
|
282
|
-
for (; m = d.nextNode(); )
|
|
283
|
-
if (m.nodeType === Node.TEXT_NODE && m.textContent) {
|
|
284
|
-
const X = m.textContent.trim();
|
|
285
|
-
for (const [U, I] of Object.entries(W))
|
|
286
|
-
if (X === U && I && !X.includes(I)) {
|
|
287
|
-
m.textContent = m.textContent.replace(U, I);
|
|
288
|
-
break;
|
|
289
|
-
}
|
|
290
|
-
}
|
|
291
|
-
}, l = () => {
|
|
292
|
-
setTimeout(() => {
|
|
293
|
-
O();
|
|
294
|
-
}, 0);
|
|
295
|
-
}, h = setTimeout(() => {
|
|
296
|
-
const t = document.querySelector(
|
|
297
|
-
".excalidraw-container"
|
|
298
|
-
);
|
|
299
|
-
if (t) {
|
|
300
|
-
const d = t.querySelector(
|
|
301
|
-
".App-toolbar__extra-tools-trigger"
|
|
302
|
-
);
|
|
303
|
-
d && d.addEventListener("click", l);
|
|
304
|
-
}
|
|
305
|
-
}, 300);
|
|
306
|
-
return () => {
|
|
307
|
-
clearTimeout(h);
|
|
308
|
-
const t = document.querySelector(
|
|
309
|
-
".excalidraw-container"
|
|
310
|
-
);
|
|
311
|
-
if (t) {
|
|
312
|
-
const d = t.querySelector(
|
|
313
|
-
".App-toolbar__extra-tools-trigger"
|
|
314
|
-
);
|
|
315
|
-
d && d.removeEventListener("click", l);
|
|
316
|
-
}
|
|
317
|
-
};
|
|
318
|
-
}, [f, u.language, B]);
|
|
319
|
-
const j = R(async () => {
|
|
320
|
-
var O, l, h;
|
|
321
|
-
let e = V;
|
|
322
|
-
if (!e || typeof e != "function") {
|
|
323
|
-
const t = await import("./layers.bOjyWNMD.js").then((d) => d.M);
|
|
324
|
-
e = t.exportToSvg || ((O = t.default) == null ? void 0 : O.exportToSvg) || t.default, e && typeof e == "function" && (V = e);
|
|
325
|
-
}
|
|
326
|
-
if (!e || typeof e != "function") {
|
|
327
|
-
const t = await import("./layers.bOjyWNMD.js").then((m) => m.M), d = t ? Object.keys(t) : [];
|
|
328
|
-
throw console.error("Excalidraw module structure:", {
|
|
329
|
-
keys: d,
|
|
330
|
-
hasExportToSvg: t && "exportToSvg" in t,
|
|
331
|
-
hasDefault: t && "default" in t,
|
|
332
|
-
moduleType: typeof t,
|
|
333
|
-
module: t
|
|
334
|
-
}), new Error(
|
|
335
|
-
`exportToSvg is not available from @excalidraw/excalidraw. Module keys: ${d.join(", ")}. Please ensure @excalidraw/excalidraw is properly installed.`
|
|
336
|
-
);
|
|
337
|
-
}
|
|
338
|
-
const x = ((l = o == null ? void 0 : o.getAppState) == null ? void 0 : l.call(o)) ?? b, s = await e({
|
|
339
|
-
appState: x,
|
|
340
|
-
elements: v,
|
|
341
|
-
files: c
|
|
342
|
-
}), w = (h = s == null ? void 0 : s.firstElementChild) == null ? void 0 : h.firstElementChild, W = s.getAttribute("viewBox");
|
|
343
|
-
if (W != null) {
|
|
344
|
-
const t = W.split(" ");
|
|
345
|
-
s.setAttribute("width", t[2]), s.setAttribute("height", t[3]);
|
|
346
|
-
}
|
|
347
|
-
return w && w.tagName === "style" && w.remove(), s.setAttribute("width", "100%"), s.setAttribute("height", "100%"), s.setAttribute("display", "block"), s.classList.add("excalidraw-svg"), s.outerHTML;
|
|
348
|
-
}, [v, c, o, b]), T = () => {
|
|
349
|
-
if (v && v.filter((e) => !e.isDeleted).length > 0) {
|
|
350
|
-
const e = o == null ? void 0 : o.getAppState(), x = {
|
|
351
|
-
exportBackground: e == null ? void 0 : e.exportBackground,
|
|
352
|
-
exportScale: e == null ? void 0 : e.exportScale,
|
|
353
|
-
exportWithDarkMode: (e == null ? void 0 : e.theme) === "dark",
|
|
354
|
-
isBindingEnabled: e == null ? void 0 : e.isBindingEnabled,
|
|
355
|
-
isLoading: e == null ? void 0 : e.isLoading,
|
|
356
|
-
name: e == null ? void 0 : e.name,
|
|
357
|
-
theme: e == null ? void 0 : e.theme,
|
|
358
|
-
viewBackgroundColor: e == null ? void 0 : e.viewBackgroundColor,
|
|
359
|
-
viewModeEnabled: e == null ? void 0 : e.viewModeEnabled,
|
|
360
|
-
zenModeEnabled: e == null ? void 0 : e.zenModeEnabled,
|
|
361
|
-
zoom: e == null ? void 0 : e.zoom
|
|
362
|
-
};
|
|
363
|
-
(async () => {
|
|
364
|
-
const s = await j();
|
|
365
|
-
r(v, x, c, s);
|
|
366
|
-
})();
|
|
367
|
-
} else
|
|
368
|
-
a();
|
|
369
|
-
}, g = (e, x, s) => {
|
|
370
|
-
(e == null ? void 0 : e.length) !== (i == null ? void 0 : i.length) && (C.current = !0), E(e), A(s);
|
|
371
|
-
};
|
|
372
|
-
return /* @__PURE__ */ n(
|
|
373
|
-
Se,
|
|
374
|
-
{
|
|
375
|
-
opened: f,
|
|
376
|
-
onClose: N,
|
|
377
|
-
onSave: T,
|
|
378
|
-
className: "excaildraw-modal",
|
|
379
|
-
closeOnEscape: !1,
|
|
380
|
-
children: M && /* @__PURE__ */ n(
|
|
381
|
-
le,
|
|
382
|
-
{
|
|
383
|
-
fallback: /* @__PURE__ */ n(
|
|
384
|
-
"div",
|
|
385
|
-
{
|
|
386
|
-
style: {
|
|
387
|
-
display: "flex",
|
|
388
|
-
justifyContent: "center",
|
|
389
|
-
alignItems: "center",
|
|
390
|
-
height: "100%",
|
|
391
|
-
minHeight: "400px"
|
|
392
|
-
},
|
|
393
|
-
children: /* @__PURE__ */ n(De, { size: "sm" })
|
|
394
|
-
}
|
|
395
|
-
),
|
|
396
|
-
children: /* @__PURE__ */ n(
|
|
397
|
-
Be,
|
|
398
|
-
{
|
|
399
|
-
langCode: ve[u.language],
|
|
400
|
-
theme: y,
|
|
401
|
-
onChange: g,
|
|
402
|
-
excalidrawAPI: k,
|
|
403
|
-
initialData: {
|
|
404
|
-
appState: { ...b || { isLoading: !1 } },
|
|
405
|
-
elements: i,
|
|
406
|
-
files: p,
|
|
407
|
-
scrollToContent: !0
|
|
408
|
-
}
|
|
409
|
-
}
|
|
410
|
-
)
|
|
411
|
-
}
|
|
412
|
-
)
|
|
413
|
-
}
|
|
414
|
-
);
|
|
415
|
-
}
|
|
416
|
-
function Xe({
|
|
417
|
-
nodeKey: r,
|
|
418
|
-
data: i,
|
|
419
|
-
width: b,
|
|
420
|
-
height: p,
|
|
421
|
-
alignment: f
|
|
422
|
-
}) {
|
|
423
|
-
var O;
|
|
424
|
-
const [a] = ae(), N = se(), C = re(() => Ee(i), [i]), o = ((O = C == null ? void 0 : C.elements) == null ? void 0 : O.length) === 0 && !C.previewSVG, [k, u] = _(
|
|
425
|
-
o && a.isEditable()
|
|
426
|
-
), [B, y] = _(!1), L = F(null), v = F(null), E = F(null), [c, A, M] = ce(r), D = R(
|
|
427
|
-
(l) => (c && (l.preventDefault(), a.update(() => {
|
|
428
|
-
const h = H(r);
|
|
429
|
-
h && h.remove();
|
|
430
|
-
})), !1),
|
|
431
|
-
[a, c, r]
|
|
432
|
-
);
|
|
433
|
-
z(() => {
|
|
434
|
-
if (!N) {
|
|
435
|
-
c && M();
|
|
436
|
-
return;
|
|
437
|
-
}
|
|
438
|
-
return de(
|
|
439
|
-
a.registerCommand(
|
|
440
|
-
fe,
|
|
441
|
-
(l) => {
|
|
442
|
-
const h = v.current, t = l.target;
|
|
443
|
-
return h !== null && h.contains(t) ? (l.shiftKey || M(), A(!c), l.detail > 1 && u(!0), !0) : !1;
|
|
444
|
-
},
|
|
445
|
-
$
|
|
446
|
-
),
|
|
447
|
-
a.registerCommand(
|
|
448
|
-
me,
|
|
449
|
-
D,
|
|
450
|
-
$
|
|
451
|
-
),
|
|
452
|
-
a.registerCommand(
|
|
453
|
-
ge,
|
|
454
|
-
D,
|
|
455
|
-
$
|
|
456
|
-
)
|
|
457
|
-
);
|
|
458
|
-
}, [M, a, c, D, A, N]);
|
|
459
|
-
const j = R(() => (u(!1), a.update(() => {
|
|
460
|
-
const l = H(r);
|
|
461
|
-
l && l.remove();
|
|
462
|
-
})), [a, r]), T = (l, h, t, d) => a.update(() => {
|
|
463
|
-
const m = H(r);
|
|
464
|
-
ne(m) && (l && l.length > 0 || Object.keys(t).length > 0 ? m.setData(
|
|
465
|
-
JSON.stringify({
|
|
466
|
-
appState: h,
|
|
467
|
-
elements: l,
|
|
468
|
-
files: t,
|
|
469
|
-
previewSVG: d
|
|
470
|
-
})
|
|
471
|
-
) : m.remove());
|
|
472
|
-
}), { elements: g = [], files: e = {}, appState: x = {}, previewSVG: s } = C, w = R(() => {
|
|
473
|
-
u(!1), y(!1), E.current = !1, (g == null ? void 0 : g.length) === 0 && a.update(() => {
|
|
474
|
-
const l = H(r);
|
|
475
|
-
l && l.remove();
|
|
476
|
-
});
|
|
477
|
-
}, [a, r, g == null ? void 0 : g.length]), W = R(() => {
|
|
478
|
-
E.current ? y(!0) : w();
|
|
479
|
-
}, [w]);
|
|
480
|
-
return /* @__PURE__ */ S(oe, { children: [
|
|
481
|
-
/* @__PURE__ */ n(
|
|
482
|
-
_e,
|
|
483
|
-
{
|
|
484
|
-
isCloseModal: B,
|
|
485
|
-
confirmClose: w,
|
|
486
|
-
setCloseModalOpen: y
|
|
487
|
-
}
|
|
488
|
-
),
|
|
489
|
-
/* @__PURE__ */ n(
|
|
490
|
-
Ae,
|
|
491
|
-
{
|
|
492
|
-
initialElements: g,
|
|
493
|
-
isEdited: E,
|
|
494
|
-
initialFiles: e,
|
|
495
|
-
initialAppState: x,
|
|
496
|
-
isShown: k,
|
|
497
|
-
onDelete: j,
|
|
498
|
-
onClose: W,
|
|
499
|
-
onSave: (l, h, t, d) => {
|
|
500
|
-
T(l, h, t, d), u(!1);
|
|
501
|
-
},
|
|
502
|
-
closeOnClickOutside: !1
|
|
503
|
-
}
|
|
504
|
-
),
|
|
505
|
-
(g == null ? void 0 : g.length) && /* @__PURE__ */ n(
|
|
506
|
-
"div",
|
|
507
|
-
{
|
|
508
|
-
style: {
|
|
509
|
-
display: "flex",
|
|
510
|
-
justifyContent: f
|
|
511
|
-
},
|
|
512
|
-
children: /* @__PURE__ */ n(
|
|
513
|
-
Ne,
|
|
514
|
-
{
|
|
515
|
-
imageContainerRef: L,
|
|
516
|
-
className: "image",
|
|
517
|
-
width: b,
|
|
518
|
-
height: p,
|
|
519
|
-
editor: a,
|
|
520
|
-
nodeKey: r,
|
|
521
|
-
alignment: f,
|
|
522
|
-
setModalOpen: u,
|
|
523
|
-
previewSVG: s,
|
|
524
|
-
isModalOpen: k
|
|
525
|
-
}
|
|
526
|
-
)
|
|
527
|
-
}
|
|
528
|
-
)
|
|
529
|
-
] });
|
|
530
|
-
}
|
|
531
|
-
export {
|
|
532
|
-
Xe as default
|
|
533
|
-
};
|
package/dist/layers.hMoxHZrO.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),i=require("react"),z=require("react-i18next"),$=require("@lexical/react/LexicalComposerContext"),y=require("@mantine/core"),w=require("lexical"),q=require("@layers-app/shared"),e=require("./layers.Bu5dgBb_.js"),R=require("@mantine/hooks"),J=()=>{};function Q({nodeKey:t,src:r,id:a}){const{t:l}=z.useTranslation(),[h]=$.useLexicalComposerContext(),[m,f]=i.useState(!1),[c,p]=i.useState(!1),x=i.useCallback(()=>{h.update(()=>{const v=w.$getNodeByKey(t);e.$isImageNode(v)&&v.remove()})},[h,t]),j=i.useCallback(async()=>{if(r)try{await e.downloadImageFromExternalUrl(r,e.inferImageFilenameFromUrl(r))}catch{}},[r]);return n.jsxs("div",{className:"media-actions visible",style:{position:"absolute",top:10,right:10,zIndex:10,pointerEvents:"auto",display:"flex",gap:4},onClick:v=>v.stopPropagation(),children:[n.jsx(e.PreviewImage,{t:l,src:r,setShown:J,id:a}),n.jsx(e.AlignmentImage,{opened:m,setOpened:f,t:l,editor:h,nodeKey:t}),n.jsx(e.MediaActionMenu,{opened:c,onOpenChange:p,t:l,onDownload:()=>void j(),onDelete:x})]})}function K({nodeKey:t,src:r,id:a}){const{t:l}=z.useTranslation(),[h]=$.useLexicalComposerContext(),[m,{open:f,close:c}]=R.useDisclosure(!1),[p,{open:x,close:j}]=R.useDisclosure(!1),v=i.useMemo(()=>[{id:!a||a==="0"?"":a,Url:r??"",contentType:"",originalFileName:"",fileSize:0,storageType:"",storagePath:"",fileName:"",parentType:"",parentId:"",ownerId:"",createdAt:new Date,updatedAt:new Date,version:0,deleted:!1,deletedAt:new Date}],[r,a]),N=()=>{c(),x()},S=i.useCallback(async()=>{if(c(),!!r)try{await e.downloadImageFromExternalUrl(r,e.inferImageFilenameFromUrl(r))}catch{}},[r,c]),C=i.useCallback(()=>{c(),h.update(()=>{const s=w.$getNodeByKey(t);e.$isImageNode(s)&&s.remove()})},[h,t,c]);return n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"image-touch-actions",style:{position:"absolute",top:8,right:8,zIndex:10,pointerEvents:"auto"},onClick:s=>s.stopPropagation(),children:n.jsx(e.ActionIcon,{label:l("editor.toolbar.more"),icon:e.O1,iconColor:"var(--mantine-color-gray-text)","aria-label":l("editor.toolbar.more"),onClick:f})}),n.jsx(q.AttachmentsGalleryModal,{opened:p,onOpenChange:s=>s?x():j(),attachments:v}),n.jsx(e.MobileDrawer,{opened:m,onClose:c,title:l("editor.image.mobileActions"),children:n.jsxs(y.Stack,{gap:4,p:0,children:[n.jsx(y.Button,{type:"button",variant:"subtle",color:"gray",fullWidth:!0,justify:"flex-start",bg:"light-dark(var(--mantine-color-gray-0), var(--mantine-color-gray-outline-hover))",onClick:N,leftSection:n.jsx(e.HugeiconsIcon,{icon:e.gn,size:16,color:"var(--mantine-color-dimmed)"}),children:l("editor.image.previewFullScreen")}),n.jsx(y.Button,{type:"button",variant:"subtle",color:"gray",fullWidth:!0,justify:"flex-start",bg:"light-dark(var(--mantine-color-gray-0), var(--mantine-color-gray-outline-hover))",onClick:()=>void S(),leftSection:n.jsx(e.HugeiconsIcon,{icon:e.Tm,size:16,color:"var(--mantine-color-dimmed)"}),children:l("editor.gallery.download")}),n.jsx(y.Button,{type:"button",variant:"subtle",color:"red",fullWidth:!0,justify:"flex-start",bg:"light-dark(var(--mantine-color-gray-0), var(--mantine-color-gray-outline-hover))",onClick:C,leftSection:n.jsx(e.HugeiconsIcon,{icon:e.lg,size:16,color:"var(--mantine-color-red-6)"}),children:l("editor.actions.delete")})]})})]})}const H=t=>{const{width:r,height:a,isLoading:l,isError:h,src:m,id:f,altText:c,imageRef:p,maxWidth:x}=t;return n.jsxs("div",{className:"media-wrapper",style:{width:r,height:a,display:"inline-flex",position:"relative"},children:[n.jsx(y.LoadingOverlay,{visible:l,zIndex:1e3,overlayProps:{backgroundOpacity:.5},loaderProps:{size:24,color:"black"}}),n.jsx(ee,{className:null,src:m,altText:c,imageRef:p,width:"inherit",height:"inherit",maxWidth:x||"auto",id:f}),e.IS_TOUCH_DEVICE&&n.jsx(K,{nodeKey:t.nodeKey,src:m,id:f}),e.IS_TOUCH_TABLET&&n.jsx(Q,{nodeKey:t.nodeKey,src:m,id:f})]})};function ee({altText:t,className:r,imageRef:a,src:l,width:h,height:m,maxWidth:f,id:c}){const[p,x]=i.useState(!1);return n.jsx("img",{className:`${r||void 0} ${p?"":"loading"}`,src:l,alt:t,ref:a,style:{height:m,maxWidth:f,width:h},onLoad:()=>{l.includes("splash")?setTimeout(()=>{x(!0)},100):x(!0)},draggable:"false","data-id":c})}function te(t){const{disable:r}=i.useContext(e.Context);return r&&e.ImageNode.isPlaceholderSrc(t.src)?null:n.jsx(oe,{...t})}function oe({src:t,altText:r,nodeKey:a,width:l,height:h,maxWidth:m,showCaption:f,caption:c,id:p,create:x,alignment:j,imagePickerTab:v}){var F,B;const N=i.useRef(null),[S,C]=i.useState(!0),[s]=$.useLexicalComposerContext(),[b,E]=i.useState(!0),[I,A]=i.useState({width:0,height:0}),{start:L}=e.useCancelUpload(),[ne,O]=i.useState(0),{fetchUploadMedia:T,fetchDeleteMedia:W,maxFileSize:ie}=i.useContext(e.Context),k=e.mediaMap.has(t)&&(((F=e.mediaMap.get(t))==null?void 0:F.mediaNodeKeys.length)===0||((B=e.mediaMap.get(t))==null?void 0:B.mediaNodeKeys.length)===void 0||t.trim()===""),{t:D}=z.useTranslation(),[ae,V]=i.useState(0);i.useEffect(()=>s.registerDecoratorListener(()=>{V(o=>o+1)}),[k]),i.useEffect(()=>{if(!t||t.startsWith("data:image/")||!t.trim()){C(!1);return}const o=new Image;o.src=t,o.onload=()=>C(!1),o.onerror=()=>{C(!1)}},[t,k]);const G=(o,u)=>{s.update(()=>{w.$setSelection(null);const d=w.$getNodeByKey(a);e.$isImageNode(d)&&d.setWidthAndHeight(o,u)})},{historyState:U}=e.useSharedHistoryContext(),{settings:{showNestedEditorTreeView:_}}=e.useSettings();function X(o){return o.endsWith(".svg")||o.includes("image/svg+xml")}function Y(o){return new Promise((u,d)=>{if(X(o)){u(0);return}const g=new Image;g.src=o,g.onload=()=>{u(g.width)},g.onerror=()=>{d(new Error("Failed to load image"))}})}i.useEffect(()=>{let o=l,u=h,d=100;(t.includes("unsplash")?t.trim():!k&&t.trim()||t.includes("upload-src-editor"))&&t!=="upload"&&Y(t).then(g=>{typeof o=="number"&&o<d&&g<d?(E(!0),A({width:o,height:u})):g<d?(E(!0),A({width:"auto",height:"auto"})):(A({width:g,height:g}),E(!1))}).catch(g=>{console.warn("Ошибка при загрузке изображения:",g.message)})},[t,k]),i.useEffect(()=>{I.width&&I.height&&b&&s.update(()=>{const o=w.$getNodeByKey(a);e.$isImageNode(o)&&o.setWidthAndHeight(I.width,I.height)})},[I.width,I.height,b]);const Z=i.useCallback(o=>e.$writeImagePickerTabToNode(s,a,o),[s,a]),M=i.useCallback((o,u)=>{C(!1),s.update(()=>{const d=w.$getNodeByKey(a);e.$isImageNode(d)&&(d.setSrc(o),d.setId(u))})},[s,a]),P=i.useCallback(o=>{C(!0);const u=L();T&&T(o[0],(d,g)=>{M(d,g),O(0)},d=>{d&&q.showErrorNotification({message:D("editor.gallery.errorFile")}),O(0),M("","")},u,d=>{O(d)})},[T,L,D,M]);return i.useEffect(()=>s.registerCommand(e.UPLOAD_IMAGE_COMMAND,o=>t!=="upload"||o.targetNodeKey!==a?!1:(P(o.files),!0),w.COMMAND_PRIORITY_LOW),[s,P,a,t]),!t||t==="upload"?n.jsx(y.Box,{"data-editor-image-picker-drop-root":!0,w:"100%",children:n.jsx(e.ImagePicker,{inline:!0,nodeKey:a,defaultTabValue:v,onWriteTabToNode:Z,uploading:!1,onUpload:o=>{!T||!o.length||P(o)},popoverProps:{opened:!0,position:"bottom",zIndex:e.EDITOR_UI_MIN_Z_INDEX},onChange:o=>{s.update(()=>{const u=w.$getNodeByKey(a);e.$isImageNode(u)&&u.setSrc(o)})}})}):b?n.jsx(H,{width:I.width,height:I.height,isLoading:S,isError:!1,isIcon:b,src:t,id:p,editor:s,nodeKey:a,fetchDeleteMedia:W,altText:r,imageRef:N,maxWidth:m,showCaption:f,caption:c,isCollabActive:!1,historyState:U,showNestedEditorTreeView:_,t:D}):n.jsx(e.ResizableContainer,{editor:s,isIcon:b,width:e.parseContainerSize(l),height:e.parseContainerSize(h),initialWidth:I.width||"",initialHeight:I.height||"",onResizeEnd:G,alignment:j,children:n.jsx(H,{width:"inherit",height:"inherit",isLoading:S,isError:!1,isIcon:b,src:t,id:p,editor:s,nodeKey:a,fetchDeleteMedia:W,altText:r,imageRef:N,maxWidth:m,showCaption:f,caption:c,isCollabActive:!1,historyState:U,showNestedEditorTreeView:_,t:D})})}exports.default=te;
|