@layers-app/editor 0.5.10-optimization → 0.6.0-specific.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +2 -252
  2. package/dist/index.cjs +2 -2
  3. package/dist/index.d.ts +3 -4
  4. package/dist/index.js +11 -12
  5. package/dist/layers.BAh77n3h.js +53500 -0
  6. package/dist/layers.BR_PAAvW.js +319 -0
  7. package/dist/layers.BVrvmVeX.js +343 -0
  8. package/dist/layers.BeZDS7Yo.js +1 -0
  9. package/dist/layers.C9DRKDGJ.js +1 -0
  10. package/dist/layers.Dawun4Ev.js +44715 -0
  11. package/dist/layers.DwBS80Kn.js +285 -0
  12. package/dist/layers.Zo4c9OM_.js +161 -0
  13. package/package.json +23 -66
  14. package/dist/ExcalidrawComponent-D7Z_2awF.cjs +0 -1
  15. package/dist/ExcalidrawComponent-Re4zFgLg.js +0 -283
  16. package/dist/InlineImageComponent-DHgCaPNk.cjs +0 -1
  17. package/dist/InlineImageComponent-kXhZcmF6.js +0 -265
  18. package/dist/collaboration-C7xVk0Zj.cjs +0 -4
  19. package/dist/collaboration-Cn7KizEJ.js +0 -5997
  20. package/dist/excalidraw-C-6bid_P.js +0 -16497
  21. package/dist/excalidraw-DpwKTNBz.cjs +0 -574
  22. package/dist/index-B4yOqKUQ.cjs +0 -1
  23. package/dist/index-BZu8Qnrg.cjs +0 -1
  24. package/dist/index-CFA9Drk2.cjs +0 -16
  25. package/dist/index-CX5msaMB.js +0 -296
  26. package/dist/index-CbQX0N2c.js +0 -136
  27. package/dist/index-DEC5JR_F.js +0 -60
  28. package/dist/index-Dan3tqoj.cjs +0 -1
  29. package/dist/index-WCOc4LNL.js +0 -16600
  30. package/dist/lexical-2rxs76dr.cjs +0 -41
  31. package/dist/lexical-C60GkwxR.js +0 -13122
  32. package/dist/lexical-code-DKIWiZdJ.js +0 -604
  33. package/dist/lexical-code-VafvPacU.cjs +0 -9
  34. package/dist/lexical-collab-1tX9tFVC.js +0 -1025
  35. package/dist/lexical-collab-Nk2LVpJv.cjs +0 -1
  36. package/dist/lexical-file-C52Mze5k.cjs +0 -1
  37. package/dist/lexical-file-DjHP4vVw.js +0 -43
  38. package/dist/lexical-markdown-BSl_ahWw.cjs +0 -12
  39. package/dist/lexical-markdown-DcEwQQba.js +0 -488
  40. package/dist/lodash-3PEMjFQT.cjs +0 -1
  41. package/dist/lodash-jftOdrxX.js +0 -711
  42. package/dist/stats.html +0 -4949
  43. package/dist/vendor-BrXDSyZX.js +0 -136433
  44. package/dist/vendor-Bt6Lma3y.cjs +0 -2469
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react/jsx-runtime"),n=require("react"),F=require("react-i18next"),i=require("./layers.Zo4c9OM_.js"),B=require("@mantine/core"),G=require("@layers-app/shared"),k=t=>{const{width:c,height:r,isLoading:h,isError:w,src:f,id:m,altText:p,imageRef:I,maxWidth:g}=t;return u.jsxs("div",{className:"media-wrapper",style:{width:c,height:r,display:"inline-flex",position:"relative"},children:[u.jsx(B.LoadingOverlay,{visible:h,zIndex:1e3,overlayProps:{backgroundOpacity:.5},loaderProps:{size:24,color:"black"}}),u.jsx(V,{className:null,src:f,altText:p,imageRef:I,width:"inherit",height:"inherit",maxWidth:g||"auto",id:m})]})};function V({altText:t,className:c,imageRef:r,src:h,width:w,height:f,maxWidth:m,id:p}){const[I,g]=n.useState(!1);return u.jsx("img",{className:`${c||void 0} ${I?"":"loading"}`,src:h,alt:t,ref:r,style:{height:f,maxWidth:m,width:w},onLoad:()=>{h.includes("splash")?setTimeout(()=>{g(!0)},100):g(!0)},draggable:"false","data-id":p})}function J({src:t,altText:c,nodeKey:r,width:h,height:w,maxWidth:f,showCaption:m,caption:p,id:I,create:g,alignment:H}){var A,$;const M=n.useRef(null),[v,S]=n.useState(!0),{isCollabActive:W}=i.l(),[l]=i.o(),[x,j]=n.useState(!0),[d,y]=n.useState({width:0,height:0}),{fetchUploadMedia:L,fetchDeleteMedia:z,maxFileSize:Q}=n.useContext(i.Context),N=i.mediaMap.has(t)&&(((A=i.mediaMap.get(t))==null?void 0:A.mediaNodeKeys.length)===0||(($=i.mediaMap.get(t))==null?void 0:$.mediaNodeKeys.length)===void 0||t.trim()===""),{t:C}=F.useTranslation(),[X,U]=n.useState(0);n.useEffect(()=>l.registerDecoratorListener(()=>{U(e=>e+1)}),[N]),n.useEffect(()=>{if(!t||t.startsWith("data:image/")||!t.trim()){S(!1);return}const e=new Image;e.src=t,e.onload=()=>S(!1),e.onerror=()=>{S(!1)}},[t,N]);const D=(e,o)=>{l.update(()=>{i.ms(null);const s=i.us(r);i.$isImageNode(s)&&s.setWidthAndHeight(e,o)})},{historyState:P}=i.useSharedHistoryContext(),{settings:{showNestedEditorTreeView:R}}=i.useSettings(),[b,E]=n.useState(!1);function T(e){return e.endsWith(".svg")||e.includes("image/svg+xml")}function _(e){return new Promise((o,s)=>{if(T(e)){o(0);return}const a=new Image;a.src=e,a.onload=()=>{o(a.width)},a.onerror=()=>{s(new Error("Failed to load image"))}})}n.useEffect(()=>{g&&E(!0)},[g]),n.useEffect(()=>{let e=h,o=w,s=100;(t.includes("unsplash")?t.trim():!N&&t.trim()||t.includes("upload-src-editor"))&&t!=="upload"&&_(t).then(a=>{typeof e=="number"&&e<s&&a<s?(j(!0),y({width:e,height:o})):a<s?(j(!0),y({width:"auto",height:"auto"})):(y({width:a,height:a}),j(!1))}).catch(a=>{console.warn("Ошибка при загрузке изображения:",a.message)})},[t,N]),n.useEffect(()=>{d.width&&d.height&&x&&l.update(()=>{const e=i.us(r);i.$isImageNode(e)&&e.setWidthAndHeight(d.width,d.height)})},[d.width,d.height,x]),n.useEffect(()=>{const e=document.documentElement;i.toggleLockScroll(b,e)},[b]),n.useEffect(()=>l.registerCommand(i.UPLOAD_IMAGE_COMMAND,e=>(t==="upload"&&q(e),!1),i.Ii),[t,v]);const O=(e,o)=>{S(!1),l.update(()=>{const s=i.us(r);i.$isImageNode(s)&&(s.setSrc(e),s.setId(o))})},q=e=>{S(!0),L&&L(e[0],(o,s)=>{O(o,s)},o=>{o&&G.showErrorNotification({message:C("editor.gallery.errorFile")}),O("","")})};return!t||t==="upload"?u.jsx(i.ImagePicker,{uploading:!1,onUpload:e=>{!L||!e.length||(q(e),E(!1))},popoverProps:{opened:b,position:"bottom",onChange:E},onChange:e=>{E(!1),l.update(()=>{const o=i.us(r);i.$isImageNode(o)&&o.setSrc(e)})},children:u.jsx(i.EmptyNodeButton,{title:C("editor.image.add_photo"),icon:"photo",onClick:()=>E(!b),isLoading:v})}):x?u.jsx(k,{width:d.width,height:d.height,isLoading:v,isError:!1,isIcon:x,src:t,id:I,editor:l,nodeKey:r,fetchDeleteMedia:z,altText:c,imageRef:M,maxWidth:f,showCaption:m,caption:p,isCollabActive:W,historyState:P,showNestedEditorTreeView:R,t:C}):u.jsx(i.ResizableContainer,{editor:l,isIcon:x,width:i.parseContainerSize(h),height:i.parseContainerSize(w),initialWidth:d.width||"",initialHeight:d.height||"",onResizeEnd:D,alignment:H,children:u.jsx(k,{width:"inherit",height:"inherit",isLoading:v,isError:!1,isIcon:x,src:t,id:I,editor:l,nodeKey:r,fetchDeleteMedia:z,altText:c,imageRef:M,maxWidth:f,showCaption:m,caption:p,isCollabActive:W,historyState:P,showNestedEditorTreeView:R,t:C})})}exports.default=J;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),o=require("react"),e=require("./layers.Zo4c9OM_.js"),M=require("@mantine/core");function R(t){const a=t.transform();return new Set(a?[a]:[])}function P({initialEditor:t,children:a,initialNodes:r,initialTheme:p,skipCollabChecks:i,skipEditableListener:c}){const l=o.useRef(!1),E=o.useContext(e.r);E==null&&(function(g,...s){const v=new URL("https://lexical.dev/docs/error"),j=new URLSearchParams;j.append("code",g);for(const u of s)j.append("v",u);throw v.search=j.toString(),Error(`Minified Lexical error #${g}; visit ${v.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)})(9);const[f,{getTheme:k}]=E,_=o.useMemo((()=>{const g=p||k()||void 0,s=e.t(E,g);g!==void 0&&(t._config.theme=g),t._parentEditor=t._parentEditor||f;const v=t._createEditorArgs,j=v&&v.namespace;if(r){j||(t._config.namespace=f._config.namespace);for(let u of r){let C=null,x=null;if(typeof u!="function"){const N=u;u=N.replace,C=N.with,x=N.withKlass||null}const w=t._nodes.get(u.getType());t._nodes.set(u.getType(),{exportDOM:w?w.exportDOM:void 0,klass:u,replace:C,replaceWithKlass:x,transforms:R(u)})}}else if(v&&v.nodes)j||(t._config.namespace=f._config.namespace);else{const u=t._nodes=new Map(f._nodes);j||(t._config.namespace=f._config.namespace);for(const[C,x]of u)t._nodes.set(C,{exportDOM:x.exportDOM,klass:x.klass,replace:x.replace,replaceWithKlass:x.replaceWithKlass,transforms:R(x.klass)})}return[t,s]}),[]),{isCollabActive:S,yjsDocMap:h}=e.l(),m=i||l.current||h.has(t.getKey());return o.useEffect((()=>{m&&(l.current=!0)}),[m]),o.useEffect((()=>{if(!c){const g=s=>t.setEditable(s);return g(f.isEditable()),f.registerEditableListener(g)}}),[t,f,c]),n.jsx(e.r.Provider,{value:_,children:!S||m?a:null})}function L({"data-test-id":t,children:a,className:r,onClick:p,disabled:i,small:c,title:l}){return n.jsx(M.Button,{onClick:p,disabled:i,variant:"filled",children:a})}function O({children:t,className:a}){return n.jsx("div",{className:a||"Placeholder__root",children:t})}function A({label:t,value:a,onChange:r,placeholder:p="","data-test-id":i,type:c="text"}){return n.jsx(M.TextInput,{type:c,placeholder:p,value:a,onChange:l=>{r(l.target.value)},label:t,"data-test-id":i,mb:10})}const T=new Set;function F(t){if(!T.has(t))throw new Promise(a=>{const r=new Image;r.src=t,r.onload=()=>{T.add(t),a(null)}})}function U({altText:t,className:a,imageRef:r,src:p,width:i,height:c,position:l}){return F(p),n.jsx("img",{className:a||void 0,src:p,alt:t,ref:r,"data-position":l,style:{display:"block",height:c,width:i},draggable:"false"})}function y({activeEditor:t,nodeKey:a,onClose:r}){const i=t.getEditorState().read(()=>e.us(a)),[c,l]=o.useState(i.getAltText()),[E,f]=o.useState(i.getShowCaption()),[k,_]=o.useState(i.getPosition()),S=m=>{f(m.target.checked)},h=()=>{const m={altText:c,position:k,showCaption:E};i&&t.update(()=>{i.update(m)}),r()};return n.jsxs(n.Fragment,{children:[n.jsx("div",{style:{marginBottom:"1em"},children:n.jsx(A,{label:"Alt-текст",placeholder:"Альтернативный текст",onChange:l,value:c,"data-test-id":"image-modal-alt-text-input"})}),n.jsxs("div",{className:"Input__wrapper",children:[n.jsx("input",{id:"caption",type:"checkbox",checked:E,onChange:S}),n.jsx("label",{htmlFor:"caption",children:"Show Caption"})]}),n.jsx(L,{"data-test-id":"image-modal-file-upload-btn",onClick:()=>h(),children:"Применить"})]})}function B({src:t,altText:a,nodeKey:r,width:p,height:i,showCaption:c,caption:l,position:E}){const[f,k]=e.useModal(),_=o.useRef(null),S=o.useRef(null),[h,m,g]=e.u(r),[s]=e.o(),[v,j]=o.useState(null),u=o.useRef(null),C=o.useCallback(b=>{if(h&&e.ur(e.Nr())){b.preventDefault();const d=e.us(r);e.$isInlineImageNode(d)&&d.remove()}return!1},[h,r]),x=o.useCallback(b=>{const I=e.Nr(),d=S.current;if(h&&e.ur(I)&&I.getNodes().length===1){if(c)return e.ms(null),b.preventDefault(),l.focus(),!0;if(d!==null&&d!==document.activeElement)return b.preventDefault(),d.focus(),!0}return!1},[l,h,c]),w=o.useCallback(b=>u.current===l||S.current===b.target?(e.ms(null),s.update(()=>{m(!0);const I=s.getRootElement();I!==null&&I.focus()}),!0):!1,[l,s,m]);o.useEffect(()=>{let b=!0;const I=e.j(s.registerUpdateListener(({editorState:d})=>{b&&j(d.read(()=>e.Nr()))}),s.registerCommand(e.le,(d,D)=>(u.current=D,!1),e.Ii),s.registerCommand(e.ae,d=>{const D=d;return D.target===_.current?(D.shiftKey?m(!h):(g(),m(!0)),!0):!1},e.Ii),s.registerCommand(e.Be,d=>d.target===_.current?(d.preventDefault(),!0):!1,e.Ii),s.registerCommand(e.De,C,e.Ii),s.registerCommand(e.Ae,C,e.Ii),s.registerCommand(e.Ee,x,e.Ii),s.registerCommand(e.Oe,w,e.Ii));return()=>{b=!1,I()}},[g,s,h,r,C,x,w,m]);const N=h;return n.jsxs(o.Suspense,{fallback:null,children:[n.jsxs(n.Fragment,{children:[n.jsxs("div",{draggable:!1,children:[n.jsx("button",{className:"image-edit-button",ref:S,onClick:()=>{k("Update Inline Image",b=>n.jsx(y,{activeEditor:s,nodeKey:r,onClose:b}))},children:"Edit"}),n.jsx(U,{className:N?`focused ${e.ur(v)?"draggable":""}`:null,src:t,altText:a,imageRef:_,width:p,height:i,position:E})]}),c&&n.jsx("div",{className:"image-caption-container",children:n.jsxs(P,{initialEditor:l,children:[n.jsx(e.LinkPlugin,{}),n.jsx(e.FloatingTextFormatToolbarPlugin,{}),n.jsx(e.h,{contentEditable:n.jsx(e.LexicalContentEditable,{className:"InlineImageNode__contentEditable"}),placeholder:n.jsx(O,{className:"InlineImageNode__placeholder",children:"Enter a caption..."}),ErrorBoundary:e.a})]})})]}),f]})}exports.UpdateInlineImageDialog=y;exports.default=B;