From bb81c8acfc470df76a70ab74fa8d487216e2d190 Mon Sep 17 00:00:00 2001 From: Aman Harwara Date: Thu, 14 Mar 2024 20:10:35 +0530 Subject: [PATCH] Revert "feat: Markdown text is now parsed correctly when pasted" This reverts commit c5ca4a9857a6e732b8ef51d4652eb7b9cdc5ddc0. --- ...l-markdown-patch-ec1e420fb1-7bf15d4dcf.zip | Bin 22419 -> 0 bytes ...xical-markdown-npm-0.13.1-145f66b44d.patch | 113 ------------------ packages/web/package.json | 1 - .../Components/SuperEditor/BlocksEditor.tsx | 2 - .../Plugins/MarkdownPastePlugin.tsx | 50 -------- yarn.lock | 17 --- 6 files changed, 183 deletions(-) delete mode 100644 .yarn/cache/@lexical-markdown-patch-ec1e420fb1-7bf15d4dcf.zip delete mode 100644 .yarn/patches/@lexical-markdown-npm-0.13.1-145f66b44d.patch delete mode 100644 packages/web/src/javascripts/Components/SuperEditor/Plugins/MarkdownPastePlugin.tsx diff --git a/.yarn/cache/@lexical-markdown-patch-ec1e420fb1-7bf15d4dcf.zip b/.yarn/cache/@lexical-markdown-patch-ec1e420fb1-7bf15d4dcf.zip deleted file mode 100644 index 2bbdc852879514daaaf84595ae5f042fdb267cef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22419 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
vjJa{H`x1>xNOGmH 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 I-j8qp0|OhN_5c6? diff --git a/.yarn/patches/@lexical-markdown-npm-0.13.1-145f66b44d.patch b/.yarn/patches/@lexical-markdown-npm-0.13.1-145f66b44d.patch deleted file mode 100644 index 5f838fcbd..000000000 --- a/.yarn/patches/@lexical-markdown-npm-0.13.1-145f66b44d.patch +++ /dev/null @@ -1,113 +0,0 @@ -diff --git a/LexicalMarkdown.dev.js b/LexicalMarkdown.dev.js -index 779698d3b4de9a8311fb1dd64b654bf655a9f757..e09a4c5179acd8d310df3561eaaf06710d2f0218 100644 ---- a/LexicalMarkdown.dev.js -+++ b/LexicalMarkdown.dev.js -@@ -195,13 +195,14 @@ CAN_USE_DOM && /^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent); - CAN_USE_DOM && 'InputEvent' in window && !documentMode ? 'getTargetRanges' in new window.InputEvent('input') : false; - const IS_SAFARI = CAN_USE_DOM && /Version\/[\d.]+.*Safari/.test(navigator.userAgent); - const IS_IOS = CAN_USE_DOM && /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream; --CAN_USE_DOM && /Android/.test(navigator.userAgent); -+const IS_ANDROID = CAN_USE_DOM && /Android/.test(navigator.userAgent); - - // Keep these in case we need to use them in the future. - // export const IS_WINDOWS: boolean = CAN_USE_DOM && /Win/.test(navigator.platform); - const IS_CHROME = CAN_USE_DOM && /^(?=.*Chrome).*/i.test(navigator.userAgent); - // export const canUseTextInputEvent: boolean = CAN_USE_DOM && 'TextEvent' in window && !documentMode; - -+CAN_USE_DOM && IS_ANDROID && IS_CHROME; - const IS_APPLE_WEBKIT = CAN_USE_DOM && /AppleWebKit\/[\d.]+/.test(navigator.userAgent) && !IS_CHROME; - - /** -@@ -696,8 +697,8 @@ function registerMarkdownShortcuts(editor, transformers = TRANSFORMERS) { - editorState, - prevEditorState - }) => { -- // Ignore updates from undo/redo (as changes already calculated) -- if (tags.has('historic')) { -+ // Ignore updates from collaboration and undo/redo (as changes already calculated) -+ if (tags.has('collaboration') || tags.has('historic')) { - return; - } - -@@ -749,6 +750,18 @@ const createBlockNode = createNode => { - // Amount of spaces that define indentation level - // TODO: should be an option - const LIST_INDENT_SIZE = 4; -+function getIndent(whitespaces) { -+ const tabs = whitespaces.match(/\t/g); -+ const spaces = whitespaces.match(/ /g); -+ let indent = 0; -+ if (tabs) { -+ indent += tabs.length; -+ } -+ if (spaces) { -+ indent += Math.floor(spaces.length / LIST_INDENT_SIZE); -+ } -+ return indent; -+} - const listReplace = listType => { - return (parentNode, children, match) => { - const previousNode = parentNode.getPreviousSibling(); -@@ -773,7 +786,7 @@ const listReplace = listType => { - } - listItem.append(...children); - listItem.select(0, 0); -- const indent = Math.floor(match[1].length / LIST_INDENT_SIZE); -+ const indent = getIndent(match[1]); - if (indent) { - listItem.setIndent(indent); - } -diff --git a/LexicalMarkdown.prod.js b/LexicalMarkdown.prod.js -index 55623c28770a78dfb1b23b7afe76adc694374caa..c62b1decb163bb74fa2b30837f0e4239a5e9a12d 100644 ---- a/LexicalMarkdown.prod.js -+++ b/LexicalMarkdown.prod.js -@@ -9,27 +9,27 @@ function ba(a){let b=I(a),c=b.textFormat.filter(d=>1===d.format.length);return d - function K(a,b,c){let d=[];a=a.getChildren();a:for(let e of a){for(let f of c)if(a=f.export(e,g=>K(g,b,c),(g,l)=>L(g,l,b)),null!=a){d.push(a);continue a}k.$isLineBreakNode(e)?d.push("\n"):k.$isTextNode(e)?d.push(L(e,e.getTextContent(),b)):k.$isElementNode(e)?d.push(K(e,b,c)):k.$isDecoratorNode(e)&&d.push(e.getTextContent())}return d.join("")} - function L(a,b,c){let d=b.trim(),e=d,f=new Set;for(let l of c){c=l.format[0];let r=l.tag;if(M(a,c)&&!f.has(c)){f.add(c);var g=N(a,!0);M(g,c)||(e=r+e);g=N(a,!1);M(g,c)||(e+=r)}}return b.replace(d,()=>e)} - function N(a,b){let c=b?a.getPreviousSibling():a.getNextSibling();c||(a=a.getParentOrThrow(),a.isInline()&&(c=b?a.getPreviousSibling():a.getNextSibling()));for(;c;){if(k.$isElementNode(c)){if(!c.isInline())break;a=b?c.getLastDescendant():c.getFirstDescendant();if(k.$isTextNode(a))return a;c=b?c.getPreviousSibling():c.getNextSibling()}if(k.$isTextNode(c))return c;if(!k.$isElementNode(c))break}return null}function M(a,b){return k.$isTextNode(a)&&a.hasFormat(b)} --let O="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement,da=O&&"documentMode"in document?document.documentMode:null;O&&/Mac|iPod|iPhone|iPad/.test(navigator.platform);O&&/^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent);O&&"InputEvent"in window&&!da?"getTargetRanges"in new window.InputEvent("input"):!1;let P=O&&/Version\/[\d.]+.*Safari/.test(navigator.userAgent),Q=O&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream; --O&&/Android/.test(navigator.userAgent);let ea=O&&/^(?=.*Chrome).*/i.test(navigator.userAgent),R=O&&/AppleWebKit\/[\d.]+/.test(navigator.userAgent)&&!ea,fa=/^\s{0,3}$/,S=/^```(\w{1,10})?\s?$/; --function ha(a){let b=I(a),c=ia(b.textFormat);return(d,e)=>{d=d.split("\n");var f=d.length;e=e||k.$getRoot();e.clear();for(let h=0;h{d=d.split("\n");var f=d.length;e=e||k.$getRoot();e.clear();for(let h=0;h=d;b--){let e=b-d;if(W(a,e,c,0,d)&&" "!==a[e+d])return e}return-1}function W(a,b,c,d,e){for(let f=0;f(b,c,d)=>{d=a(d);d.append(...c);b.replace(d);d.select(0,0)},X=a=>(b,c,d)=>{var e=b.getPreviousSibling(),f=b.getNextSibling();const g=z.$createListItemNode("check"===a?"x"===d[3]:void 0);z.$isListNode(f)&&f.getListType()===a?(e=f.getFirstChild(),null!==e?e.insertBefore(g):f.append(g),b.remove()):z.$isListNode(e)&&e.getListType()===a?(e.append(g),b.remove()):(f=z.$createListNode(a,"number"===a?Number(d[2]):void 0),f.append(g),b.replace(f));g.append(...c);g.select(0,0);(b=Math.floor(d[1].length/ --4))&&g.setIndent(b)},Y=(a,b,c)=>{const d=[];var e=a.getChildren();let f=0;for(const l of e)if(z.$isListItemNode(l)){if(1===l.getChildrenSize()&&(e=l.getFirstChild(),z.$isListNode(e))){d.push(Y(e,b,c+1));continue}e=" ".repeat(4*c);var g=a.getListType();g="number"===g?`${a.getStart()+f}. `:"check"===g?`- [${l.getChecked()?"x":" "}] `:"- ";d.push(e+g+b(l));f++}return d.join("\n")},la={dependencies:[B.HeadingNode],export:(a,b)=>{if(!B.$isHeadingNode(a))return null;const c=Number(a.getTag().slice(1)); --return"#".repeat(c)+" "+b(a)},regExp:/^(#{1,6})\s/,replace:ka(a=>B.$createHeadingNode("h"+a[1].length)),type:"element"},ma={dependencies:[B.QuoteNode],export:(a,b)=>{if(!B.$isQuoteNode(a))return null;a=b(a).split("\n");b=[];for(const c of a)b.push("> "+c);return b.join("\n")},regExp:/^>\s/,replace:(a,b,c,d)=>{if(d&&(c=a.getPreviousSibling(),B.$isQuoteNode(c))){c.splice(c.getChildrenSize(),0,[k.$createLineBreakNode(),...b]);c.select(0,0);a.remove();return}c=B.$createQuoteNode();c.append(...b);a.replace(c); --c.select(0,0)},type:"element"},na={dependencies:[t.CodeNode],export:a=>{if(!t.$isCodeNode(a))return null;const b=a.getTextContent();return"```"+(a.getLanguage()||"")+(b?"\n"+b:"")+"\n```"},regExp:/^```(\w{1,10})?\s/,replace:ka(a=>t.$createCodeNode(a?a[1]:void 0)),type:"element"},oa={dependencies:[z.ListNode,z.ListItemNode],export:(a,b)=>z.$isListNode(a)?Y(a,b,0):null,regExp:/^(\s*)[-*+]\s/,replace:X("bullet"),type:"element"},pa={dependencies:[z.ListNode,z.ListItemNode],export:(a,b)=>z.$isListNode(a)? --Y(a,b,0):null,regExp:/^(\s*)(?:-\s)?\s?(\[(\s|x)?\])\s/i,replace:X("check"),type:"element"},qa={dependencies:[z.ListNode,z.ListItemNode],export:(a,b)=>z.$isListNode(a)?Y(a,b,0):null,regExp:/^(\s*)(\d{1,})\.\s/,replace:X("number"),type:"element"},ra={format:["code"],tag:"`",type:"text-format"},sa={format:["highlight"],tag:"==",type:"text-format"},ta={format:["bold","italic"],tag:"***",type:"text-format"},va={format:["bold","italic"],intraword:!1,tag:"___",type:"text-format"},wa={format:["bold"],tag:"**", --type:"text-format"},xa={format:["bold"],intraword:!1,tag:"__",type:"text-format"},ya={format:["strikethrough"],tag:"~~",type:"text-format"},za={format:["italic"],tag:"*",type:"text-format"},Aa={format:["italic"],intraword:!1,tag:"_",type:"text-format"},Ba={dependencies:[G.LinkNode],export:(a,b,c)=>{if(!G.$isLinkNode(a))return null;b=(b=a.getTitle())?`[${a.getTextContent()}](${a.getURL()} "${b}")`:`[${a.getTextContent()}](${a.getURL()})`;const d=a.getFirstChild();return 1===a.getChildrenSize()&&k.$isTextNode(d)? --c(d,b):b},importRegExp:/(?:\[([^[]+)\])(?:\((?:([^()\s]+)(?:\s"((?:[^"]*\\")*[^"]*)"\s*)?)\))/,regExp:/(?:\[([^[]+)\])(?:\((?:([^()\s]+)(?:\s"((?:[^"]*\\")*[^"]*)"\s*)?)\))$/,replace:(a,b)=>{const [,c,d,e]=b;b=G.$createLinkNode(d,{title:e});const f=k.$createTextNode(c);f.setFormat(a.getFormat());b.append(f);a.replace(b)},trigger:")",type:"text-match"},Ca=[la,ma,na,oa,qa],Da=[ra,ta,va,wa,xa,sa,za,Aa,ya],Ea=[Ba],Z=[...Ca,...Da,...Ea]; --exports.$convertFromMarkdownString=function(a,b=Z,c){return ha(b)(a,c)};exports.$convertToMarkdownString=function(a=Z,b){return ba(a)(b)};exports.BOLD_ITALIC_STAR=ta;exports.BOLD_ITALIC_UNDERSCORE=va;exports.BOLD_STAR=wa;exports.BOLD_UNDERSCORE=xa;exports.CHECK_LIST=pa;exports.CODE=na;exports.ELEMENT_TRANSFORMERS=Ca;exports.HEADING=la;exports.HIGHLIGHT=sa;exports.INLINE_CODE=ra;exports.ITALIC_STAR=za;exports.ITALIC_UNDERSCORE=Aa;exports.LINK=Ba;exports.ORDERED_LIST=qa;exports.QUOTE=ma; --exports.STRIKETHROUGH=ya;exports.TEXT_FORMAT_TRANSFORMERS=Da;exports.TEXT_MATCH_TRANSFORMERS=Ea;exports.TRANSFORMERS=Z;exports.UNORDERED_LIST=oa; --exports.registerMarkdownShortcuts=function(a,b=Z){let c=I(b),d=H(c.textFormat,({tag:f})=>f[f.length-1]),e=H(c.textMatch,({trigger:f})=>f);for(let f of b)if(b=f.type,"element"===b||"text-match"===b){b=f.dependencies;for(let g of b)if(!a.hasNode(g))throw Error(`MarkdownShortcuts: missing dependency ${g.getType()} for transformer. Ensure node dependency is included in editor initial config.`);}return a.registerUpdateListener(({tags:f,dirtyLeaves:g,editorState:l,prevEditorState:r})=>{if(!f.has("historic")&& --!a.isComposing()){var q=l.read(k.$getSelection);f=r.read(k.$getSelection);if(k.$isRangeSelection(f)&&k.$isRangeSelection(q)&&q.isCollapsed()){r=q.anchor.key;var y=q.anchor.offset,p=l._nodeMap.get(r);!k.$isTextNode(p)||!g.has(r)||1!==y&&y>f.anchor.offset+1||a.update(()=>{if(!p.hasFormat("code")){var m=p.getParent();if(null!==m&&!t.$isCodeNode(m)){var w=q.anchor.offset;b:{var h=c.element,n=m.getParent();if(k.$isRootOrShadowRoot(n)&&m.getFirstChild()===p&&(n=p.getTextContent()," "===n[w-1]))for(let {regExp:D, --replace:E}of h)if((h=n.match(D))&&h[0].length===w){n=p.getNextSiblings();let [F,ua]=p.splitText(w);F.remove();n=ua?[ua,...n]:n;E(m,n,h,!1);m=!0;break b}m=!1}if(!m){b:{h=p.getTextContent();m=e[h[w-1]];if(null!=m){wh&&(A=A.getPreviousSibling())&&!k.$isLineBreakNode(A);)k.$isTextNode(A)&&(h=A.getTextContent(),m=A,h=V(h,h.length,C));if(!(0>h||m===v&&h+x===E||(C=m.getTextContent(),0=d;b--){let e=b-d;if(ka(a,e,c,0,d)&&" "!==a[e+d])return e}return-1}function ka(a,b,c,d,e){for(let f=0;f(b,c,d)=>{d=a(d);d.append(...c);b.replace(d);d.select(0,0)},X=a=>(b,c,d)=>{var e=b.getPreviousSibling(),f=b.getNextSibling();const g=z.$createListItemNode("check"===a?"x"===d[3]:void 0);z.$isListNode(f)&&f.getListType()===a?(e=f.getFirstChild(),null!==e?e.insertBefore(g):f.append(g),b.remove()):z.$isListNode(e)&&e.getListType()===a?(e.append(g),b.remove()):(f=z.$createListNode(a,"number"===a?Number(d[2]):void 0),f.append(g),b.replace(f));g.append(...c);g.select(0,0);c=d[1];b=c.match(/\t/g); -+c=c.match(/ /g);d=0;b&&(d+=b.length);c&&(d+=Math.floor(c.length/4));(b=d)&&g.setIndent(b)},Y=(a,b,c)=>{const d=[];var e=a.getChildren();let f=0;for(const l of e)if(z.$isListItemNode(l)){if(1===l.getChildrenSize()&&(e=l.getFirstChild(),z.$isListNode(e))){d.push(Y(e,b,c+1));continue}e=" ".repeat(4*c);var g=a.getListType();g="number"===g?`${a.getStart()+f}. `:"check"===g?`- [${l.getChecked()?"x":" "}] `:"- ";d.push(e+g+b(l));f++}return d.join("\n")},ma={dependencies:[B.HeadingNode],export:(a,b)=>{if(!B.$isHeadingNode(a))return null; -+const c=Number(a.getTag().slice(1));return"#".repeat(c)+" "+b(a)},regExp:/^(#{1,6})\s/,replace:la(a=>B.$createHeadingNode("h"+a[1].length)),type:"element"},na={dependencies:[B.QuoteNode],export:(a,b)=>{if(!B.$isQuoteNode(a))return null;a=b(a).split("\n");b=[];for(const c of a)b.push("> "+c);return b.join("\n")},regExp:/^>\s/,replace:(a,b,c,d)=>{if(d&&(c=a.getPreviousSibling(),B.$isQuoteNode(c))){c.splice(c.getChildrenSize(),0,[k.$createLineBreakNode(),...b]);c.select(0,0);a.remove();return}c=B.$createQuoteNode(); -+c.append(...b);a.replace(c);c.select(0,0)},type:"element"},oa={dependencies:[t.CodeNode],export:a=>{if(!t.$isCodeNode(a))return null;const b=a.getTextContent();return"```"+(a.getLanguage()||"")+(b?"\n"+b:"")+"\n```"},regExp:/^```(\w{1,10})?\s/,replace:la(a=>t.$createCodeNode(a?a[1]:void 0)),type:"element"},pa={dependencies:[z.ListNode,z.ListItemNode],export:(a,b)=>z.$isListNode(a)?Y(a,b,0):null,regExp:/^(\s*)[-*+]\s/,replace:X("bullet"),type:"element"},qa={dependencies:[z.ListNode,z.ListItemNode], -+export:(a,b)=>z.$isListNode(a)?Y(a,b,0):null,regExp:/^(\s*)(?:-\s)?\s?(\[(\s|x)?\])\s/i,replace:X("check"),type:"element"},ra={dependencies:[z.ListNode,z.ListItemNode],export:(a,b)=>z.$isListNode(a)?Y(a,b,0):null,regExp:/^(\s*)(\d{1,})\.\s/,replace:X("number"),type:"element"},sa={format:["code"],tag:"`",type:"text-format"},ta={format:["highlight"],tag:"==",type:"text-format"},ua={format:["bold","italic"],tag:"***",type:"text-format"},wa={format:["bold","italic"],intraword:!1,tag:"___",type:"text-format"}, -+xa={format:["bold"],tag:"**",type:"text-format"},ya={format:["bold"],intraword:!1,tag:"__",type:"text-format"},za={format:["strikethrough"],tag:"~~",type:"text-format"},Aa={format:["italic"],tag:"*",type:"text-format"},Ba={format:["italic"],intraword:!1,tag:"_",type:"text-format"},Ca={dependencies:[G.LinkNode],export:(a,b,c)=>{if(!G.$isLinkNode(a))return null;b=(b=a.getTitle())?`[${a.getTextContent()}](${a.getURL()} "${b}")`:`[${a.getTextContent()}](${a.getURL()})`;const d=a.getFirstChild();return 1=== -+a.getChildrenSize()&&k.$isTextNode(d)?c(d,b):b},importRegExp:/(?:\[([^[]+)\])(?:\((?:([^()\s]+)(?:\s"((?:[^"]*\\")*[^"]*)"\s*)?)\))/,regExp:/(?:\[([^[]+)\])(?:\((?:([^()\s]+)(?:\s"((?:[^"]*\\")*[^"]*)"\s*)?)\))$/,replace:(a,b)=>{const [,c,d,e]=b;b=G.$createLinkNode(d,{title:e});const f=k.$createTextNode(c);f.setFormat(a.getFormat());b.append(f);a.replace(b)},trigger:")",type:"text-match"},Da=[ma,na,oa,pa,ra],Ea=[sa,ua,wa,xa,ya,ta,Aa,Ba,za],Fa=[Ca],Z=[...Da,...Ea,...Fa]; -+exports.$convertFromMarkdownString=function(a,b=Z,c){return ha(b)(a,c)};exports.$convertToMarkdownString=function(a=Z,b){return ba(a)(b)};exports.BOLD_ITALIC_STAR=ua;exports.BOLD_ITALIC_UNDERSCORE=wa;exports.BOLD_STAR=xa;exports.BOLD_UNDERSCORE=ya;exports.CHECK_LIST=qa;exports.CODE=oa;exports.ELEMENT_TRANSFORMERS=Da;exports.HEADING=ma;exports.HIGHLIGHT=ta;exports.INLINE_CODE=sa;exports.ITALIC_STAR=Aa;exports.ITALIC_UNDERSCORE=Ba;exports.LINK=Ca;exports.ORDERED_LIST=ra;exports.QUOTE=na; -+exports.STRIKETHROUGH=za;exports.TEXT_FORMAT_TRANSFORMERS=Ea;exports.TEXT_MATCH_TRANSFORMERS=Fa;exports.TRANSFORMERS=Z;exports.UNORDERED_LIST=pa; -+exports.registerMarkdownShortcuts=function(a,b=Z){let c=I(b),d=H(c.textFormat,({tag:f})=>f[f.length-1]),e=H(c.textMatch,({trigger:f})=>f);for(let f of b)if(b=f.type,"element"===b||"text-match"===b){b=f.dependencies;for(let g of b)if(!a.hasNode(g))throw Error(`MarkdownShortcuts: missing dependency ${g.getType()} for transformer. Ensure node dependency is included in editor initial config.`);}return a.registerUpdateListener(({tags:f,dirtyLeaves:g,editorState:l,prevEditorState:r})=>{if(!f.has("collaboration")&& -+!f.has("historic")&&!a.isComposing()){var q=l.read(k.$getSelection);f=r.read(k.$getSelection);if(k.$isRangeSelection(f)&&k.$isRangeSelection(q)&&q.isCollapsed()){r=q.anchor.key;var y=q.anchor.offset,p=l._nodeMap.get(r);!k.$isTextNode(p)||!g.has(r)||1!==y&&y>f.anchor.offset+1||a.update(()=>{if(!p.hasFormat("code")){var m=p.getParent();if(null!==m&&!t.$isCodeNode(m)){var w=q.anchor.offset;b:{var h=c.element,n=m.getParent();if(k.$isRootOrShadowRoot(n)&&m.getFirstChild()===p&&(n=p.getTextContent()," "=== -+n[w-1]))for(let {regExp:D,replace:E}of h)if((h=n.match(D))&&h[0].length===w){n=p.getNextSiblings();let [F,va]=p.splitText(w);F.remove();n=va?[va,...n]:n;E(m,n,h,!1);m=!0;break b}m=!1}if(!m){b:{h=p.getTextContent();m=e[h[w-1]];if(null!=m){wh&&(A=A.getPreviousSibling())&&!k.$isLineBreakNode(A);)k.$isTextNode(A)&&(h=A.getTextContent(),m=A,h=W(h,h.length,C));if(!(0>h||m===v&&h+x===E||(C=m.getTextContent(),0 void @@ -143,7 +142,6 @@ export const BlocksEditor: FunctionComponent = ({ - {!readonly && floatingAnchorElem && ( <> diff --git a/packages/web/src/javascripts/Components/SuperEditor/Plugins/MarkdownPastePlugin.tsx b/packages/web/src/javascripts/Components/SuperEditor/Plugins/MarkdownPastePlugin.tsx deleted file mode 100644 index 643b25631..000000000 --- a/packages/web/src/javascripts/Components/SuperEditor/Plugins/MarkdownPastePlugin.tsx +++ /dev/null @@ -1,50 +0,0 @@ -import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext' -import { objectKlassEquals } from '@lexical/utils' -import { COMMAND_PRIORITY_LOW, PASTE_COMMAND, PasteCommandType } from 'lexical' -import { useEffect } from 'react' -import { $convertFromMarkdownString } from '../Lexical/Utils/MarkdownImport' -import { MarkdownTransformers } from '../MarkdownTransformers' - -export function MarkdownPastePlugin() { - const [editor] = useLexicalComposerContext() - - useEffect(() => { - return editor.registerCommand( - PASTE_COMMAND, - (event: PasteCommandType | DragEvent) => { - let dataTransfer: null | DataTransfer = null - if (objectKlassEquals(event, DragEvent)) { - dataTransfer = (event as DragEvent).dataTransfer - } else if (objectKlassEquals(event, ClipboardEvent)) { - dataTransfer = (event as ClipboardEvent).clipboardData - } - - if (dataTransfer === null) { - return false - } - - const hasFiles = dataTransfer.types.includes('Files') - const hasHTML = dataTransfer.types.includes('text/html') - const hasText = dataTransfer.types.includes('text/plain') - - if (hasHTML || hasFiles || !hasText) { - return false - } - - const textContent = dataTransfer.getData('text/plain') - - try { - $convertFromMarkdownString(textContent, MarkdownTransformers, undefined, true) - return true - } catch (error) { - console.error(error) - } - - return false - }, - COMMAND_PRIORITY_LOW, - ) - }, [editor]) - - return null -} diff --git a/yarn.lock b/yarn.lock index 1537874c9..44d55ba47 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3926,22 +3926,6 @@ __metadata: languageName: node linkType: hard -"@lexical/markdown@patch:@lexical/markdown@npm:0.13.1#.yarn/patches/@lexical-markdown-npm-0.13.1-145f66b44d.patch::locator=%40standardnotes%2Fapp-monorepo%40workspace%3A.": - version: 0.13.1 - resolution: "@lexical/markdown@patch:@lexical/markdown@npm%3A0.13.1#.yarn/patches/@lexical-markdown-npm-0.13.1-145f66b44d.patch::version=0.13.1&hash=d07e28&locator=%40standardnotes%2Fapp-monorepo%40workspace%3A." - dependencies: - "@lexical/code": 0.13.1 - "@lexical/link": 0.13.1 - "@lexical/list": 0.13.1 - "@lexical/rich-text": 0.13.1 - "@lexical/text": 0.13.1 - "@lexical/utils": 0.13.1 - peerDependencies: - lexical: 0.13.1 - checksum: 7bf15d4dcfb20c3d408275644cc0c7d1b77d7a3a267f5686f2576990af1c71475f0e0cee36f1e2a74cb756f5cd5faf8d9fc8c8bcf51f3946db94950822004758 - languageName: node - linkType: hard - "@lexical/offset@npm:0.13.1": version: 0.13.1 resolution: "@lexical/offset@npm:0.13.1" @@ -7697,7 +7681,6 @@ __metadata: "@babel/plugin-transform-react-jsx": ^7.19.0 "@babel/preset-env": "*" "@babel/preset-typescript": ^7.21.5 - "@lexical/clipboard": 0.13.1 "@lexical/headless": 0.13.1 "@lexical/list": 0.13.1 "@lexical/react": 0.13.1