@ckeditor/ckeditor5-paste-from-office 29.2.0 → 30.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.
@@ -2,4 +2,4 @@
2
2
  * @license Copyright (c) 2003-2021, CKSource - Frederico Knabben. All rights reserved.
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
- window.CKEditor5=window.CKEditor5||{},window.CKEditor5.pasteFromOffice=function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=4)}([function(e,t,n){e.exports=n(1)("./src/engine.js")},function(e,t){e.exports=CKEditor5.dll},function(e,t,n){e.exports=n(1)("./src/core.js")},function(e,t,n){e.exports=n(1)("./src/clipboard.js")},function(e,t,n){"use strict";n.r(t),n.d(t,"PasteFromOffice",(function(){return b}));var r=n(2),i=n(3),o=n(0);function s(e,t){if(!e.childCount)return;const n=new o.UpcastWriter(e.document),r=function(e,t){const n=t.createRangeIn(e),r=new o.Matcher({name:/^p|h\d+$/,styles:{"mso-list":/.*/}}),i=[];for(const e of n)if("elementStart"===e.type&&r.match(e.item)){const t=a(e.item);i.push({element:e.item,id:t.id,order:t.order,indent:t.indent})}return i}(e,n);if(!r.length)return;let i=null,s=1;r.forEach((e,a)=>{const u=function(e,t){if(!e)return!0;if(e.id!==t.id)return t.indent-e.indent!=1;const n=t.element.previousSibling;if(!n)return!0;return r=n,!(r.is("element","ol")||r.is("element","ul"));var r}(r[a-1],e),f=u?null:r[a-1],d=(m=e,(p=f)?m.indent-p.indent:m.indent-1);var p,m;if(u&&(i=null,s=1),!i||0!==d){const r=function(e,t){const n=new RegExp(`@list l${e.id}:level${e.indent}\\s*({[^}]*)`,"gi"),r=/mso-level-number-format:([^;]{0,100});/gi,i=n.exec(t);let o="decimal",s="ol";if(i&&i[1]){const t=r.exec(i[1]);if(t&&t[1]&&(o=t[1].trim(),s="bullet"!==o&&"image"!==o?"ol":"ul"),"bullet"===o){const t=function(e){const t=function(e){if(e.getChild(0).is("$text"))return null;for(const t of e.getChildren()){if(!t.is("element","span"))continue;const e=t.getChild(0);return e.is("$text")?e:e.getChild(0)}}(e);if(!t)return null;const n=t._data;if("o"===n)return"circle";if("·"===n)return"disc";if("§"===n)return"square";return null}(e.element);t&&(o=t)}}return{type:s,style:c(o)}}(e,t);if(i){if(e.indent>s){const e=i.getChild(i.childCount-1),t=e.getChild(e.childCount-1);i=l(r,t,n),s+=1}else if(e.indent<s){const t=s-e.indent;i=function(e,t){const n=e.getAncestors({parentFirst:!0});let r=null,i=0;for(const e of n)if("ul"!==e.name&&"ol"!==e.name||i++,i===t){r=e;break}return r}(i,t),s=parseInt(e.indent)}}else i=l(r,e.element,n);e.indent<=s&&(i.is("element",r.type)||(i=n.rename(r.type,i)))}const g=function(e,t){return function(e,t){const n=new o.Matcher({name:"span",styles:{"mso-list":"Ignore"}}),r=t.createRangeIn(e);for(const e of r)"elementStart"===e.type&&n.match(e.item)&&t.remove(e.item)}(e,t),t.rename("li",e)}(e.element,n);n.appendChild(g,i)})}function c(e){switch(e){case"arabic-leading-zero":return"decimal-leading-zero";case"alpha-upper":return"upper-alpha";case"alpha-lower":return"lower-alpha";case"roman-upper":return"upper-roman";case"roman-lower":return"lower-roman";case"circle":case"disc":case"square":return e;default:return null}}function l(e,t,n){const r=t.parent,i=n.createElement(e.type),o=r.getChildIndex(t)+1;return n.insertChild(o,i,r),e.style&&n.setStyle("list-style-type",e.style,i),i}function a(e){const t={},n=e.getStyle("mso-list");if(n){const e=n.match(/(^|\s{1,100})l(\d+)/i),r=n.match(/\s{0,100}lfo(\d+)/i),i=n.match(/\s{0,100}level(\d+)/i);e&&r&&i&&(t.id=e[2],t.order=r[1],t.indent=i[1])}return t}const u=/id=("|')docs-internal-guid-[-0-9a-f]+("|')/i;class f{constructor(e){this.document=e}isActive(e){return u.test(e)}execute(e){const t=new o.UpcastWriter(this.document),{body:n}=e._parsedData;!function(e,t){for(const n of e.getChildren())if(n.is("element","b")&&"normal"===n.getStyle("font-weight")){const r=e.getChildIndex(n);t.remove(n),t.insertChild(r,n.getChildren(),e)}}(n,t),function(e,t){for(const n of t.createRangeIn(e)){const e=n.item;if(e.is("element","li")){const n=e.getChild(0);n&&n.is("element","p")&&t.unwrapElement(n)}}}(n,t),e.content=n}}function d(e,t){if(!e.childCount)return;const n=new o.UpcastWriter;!function(e,t,n){const r=n.createRangeIn(t),i=new o.Matcher({name:"img"}),s=[];for(const t of r)if(i.match(t.item)){const n=t.item,r=n.getAttribute("v:shapes")?n.getAttribute("v:shapes").split(" "):[];r.length&&r.every(t=>e.indexOf(t)>-1)?s.push(n):n.getAttribute("src")||s.push(n)}for(const e of s)n.remove(e)}(function(e,t){const n=t.createRangeIn(e),r=new o.Matcher({name:/v:(.+)/}),i=[];for(const e of n){const t=e.item,n=t.previousSibling&&t.previousSibling.name||null;r.match(t)&&t.getAttribute("o:gfxdata")&&"v:shapetype"!==n&&i.push(e.item.getAttribute("id"))}return i}(e,n),e,n),function(e,t){const n=t.createRangeIn(e),r=new o.Matcher({name:/v:(.+)/}),i=[];for(const e of n)r.match(e.item)&&i.push(e.item);for(const e of i)t.remove(e)}(e,n);const r=function(e,t){const n=t.createRangeIn(e),r=new o.Matcher({name:"img"}),i=[];for(const e of n)r.match(e.item)&&e.item.getAttribute("src").startsWith("file://")&&i.push(e.item);return i}(e,n);r.length&&function(e,t,n){if(e.length===t.length)for(let i=0;i<e.length;i++){const o=`data:${t[i].type};base64,${r=t[i].hex,btoa(r.match(/\w{2}/g).map(e=>String.fromCharCode(parseInt(e,16))).join(""))}`;n.setAttribute("src",o,e[i])}var r}(r,function(e){if(!e)return[];const t=/{\\pict[\s\S]+?\\bliptag-?\d+(\\blipupi-?\d+)?({\\\*\\blipuid\s?[\da-fA-F]+)?[\s}]*?/,n=new RegExp("(?:("+t.source+"))([\\da-fA-F\\s]+)\\}","g"),r=e.match(n),i=[];if(r)for(const e of r){let n=!1;e.includes("\\pngblip")?n="image/png":e.includes("\\jpegblip")&&(n="image/jpeg"),n&&i.push({hex:e.replace(t,"").replace(/[^\da-fA-F]/g,""),type:n})}return i}(t),n)}const p=/<meta\s*name="?generator"?\s*content="?microsoft\s*word\s*\d+"?\/?>/i,m=/xmlns:o="urn:schemas-microsoft-com/i;class g{constructor(e){this.document=e}isActive(e){return p.test(e)||m.test(e)}execute(e){const{body:t,stylesString:n}=e._parsedData;s(t,n),d(t,e.dataTransfer.getData("text/rtf")),e.content=t}}function h(e){return e.replace(/<span(?: class="Apple-converted-space"|)>(\s+)<\/span>/g,(e,t)=>1===t.length?" ":Array(t.length+1).join("  ").substr(0,t.length))}function y(e,t){const n=new DOMParser,r=function(e){return h(h(e)).replace(/(<span\s+style=['"]mso-spacerun:yes['"]>[^\S\r\n]*?)[\r\n]+([^\S\r\n]*<\/span>)/g,"$1$2").replace(/<span\s+style=['"]mso-spacerun:yes['"]><\/span>/g,"").replace(/ <\//g," </").replace(/ <o:p><\/o:p>/g," <o:p></o:p>").replace(/<o:p>(&nbsp;|\u00A0)<\/o:p>/g,"").replace(/>([^\S\r\n]*[\r\n]\s*)</g,"><")}(function(e){const t=e.indexOf("</body>");if(t<0)return e;const n=e.indexOf("</html>",t+"</body>".length);return e.substring(0,t+"</body>".length)+(n>=0?e.substring(n):"")}(e=e.replace(/<!--\[if gte vml 1]>/g,""))),i=n.parseFromString(r,"text/html");!function(e){e.querySelectorAll("span[style*=spacerun]").forEach(e=>{const t=e.innerText.length||0;e.innerHTML=Array(t+1).join("  ").substr(0,t)})}(i);const s=i.body.innerHTML,c=function(e,t){const n=new o.ViewDocument(t),r=new o.DomConverter(n,{blockFillerMode:"nbsp"}),i=e.createDocumentFragment(),s=e.body.childNodes;for(;s.length>0;)i.appendChild(s[0]);return r.domToView(i,{skipComments:!0})}(i,t),l=function(e){const t=[],n=[],r=Array.from(e.getElementsByTagName("style"));for(const e of r)e.sheet&&e.sheet.cssRules&&e.sheet.cssRules.length&&(t.push(e.sheet),n.push(e.innerHTML));return{styles:t,stylesString:n.join(" ")}}(i);return{body:c,bodyString:s,styles:l.styles,stylesString:l.stylesString}}class b extends r.Plugin{static get pluginName(){return"PasteFromOffice"}static get requires(){return[i.ClipboardPipeline]}init(){const e=this.editor,t=e.editing.view.document,n=[];n.push(new g(t)),n.push(new f(t)),e.plugins.get("ClipboardPipeline").on("inputTransformation",(e,r)=>{if(r._isTransformedWithPasteFromOffice)return;const i=r.dataTransfer.getData("text/html"),o=n.find(e=>e.isActive(i));o&&(r._parsedData=y(i,t.stylesProcessor),o.execute(r),r._isTransformedWithPasteFromOffice=!0)},{priority:"high"})}}}]);
5
+ window.CKEditor5=window.CKEditor5||{},window.CKEditor5.pasteFromOffice=function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=4)}([function(e,t,n){e.exports=n(1)("./src/engine.js")},function(e,t){e.exports=CKEditor5.dll},function(e,t,n){e.exports=n(1)("./src/core.js")},function(e,t,n){e.exports=n(1)("./src/clipboard.js")},function(e,t,n){"use strict";n.r(t),n.d(t,"PasteFromOffice",(function(){return b}));var r=n(2),i=n(3),o=n(0);function s(e,t){if(!e.childCount)return;const n=new o.UpcastWriter(e.document),r=function(e,t){const n=t.createRangeIn(e),r=new o.Matcher({name:/^p|h\d+$/,styles:{"mso-list":/.*/}}),i=[];for(const e of n)if("elementStart"===e.type&&r.match(e.item)){const t=a(e.item);i.push({element:e.item,id:t.id,order:t.order,indent:t.indent})}return i}(e,n);if(!r.length)return;let i=null,s=1;r.forEach((e,a)=>{const u=function(e,t){if(!e)return!0;if(e.id!==t.id)return t.indent-e.indent!=1;const n=t.element.previousSibling;if(!n)return!0;return r=n,!(r.is("element","ol")||r.is("element","ul"));var r}(r[a-1],e),f=u?null:r[a-1],p=(m=e,(d=f)?m.indent-d.indent:m.indent-1);var d,m;if(u&&(i=null,s=1),!i||0!==p){const r=function(e,t){const n=new RegExp(`@list l${e.id}:level${e.indent}\\s*({[^}]*)`,"gi"),r=/mso-level-number-format:([^;]{0,100});/gi,i=n.exec(t);let o="decimal",s="ol";if(i&&i[1]){const t=r.exec(i[1]);if(t&&t[1]&&(o=t[1].trim(),s="bullet"!==o&&"image"!==o?"ol":"ul"),"bullet"===o){const t=function(e){const t=function(e){if(e.getChild(0).is("$text"))return null;for(const t of e.getChildren()){if(!t.is("element","span"))continue;const e=t.getChild(0);return e.is("$text")?e:e.getChild(0)}}(e);if(!t)return null;const n=t._data;if("o"===n)return"circle";if("·"===n)return"disc";if("§"===n)return"square";return null}(e.element);t&&(o=t)}}return{type:s,style:c(o)}}(e,t);if(i){if(e.indent>s){const e=i.getChild(i.childCount-1),t=e.getChild(e.childCount-1);i=l(r,t,n),s+=1}else if(e.indent<s){const t=s-e.indent;i=function(e,t){const n=e.getAncestors({parentFirst:!0});let r=null,i=0;for(const e of n)if("ul"!==e.name&&"ol"!==e.name||i++,i===t){r=e;break}return r}(i,t),s=parseInt(e.indent)}}else i=l(r,e.element,n);e.indent<=s&&(i.is("element",r.type)||(i=n.rename(r.type,i)))}const g=function(e,t){return function(e,t){const n=new o.Matcher({name:"span",styles:{"mso-list":"Ignore"}}),r=t.createRangeIn(e);for(const e of r)"elementStart"===e.type&&n.match(e.item)&&t.remove(e.item)}(e,t),t.rename("li",e)}(e.element,n);n.appendChild(g,i)})}function c(e){switch(e){case"arabic-leading-zero":return"decimal-leading-zero";case"alpha-upper":return"upper-alpha";case"alpha-lower":return"lower-alpha";case"roman-upper":return"upper-roman";case"roman-lower":return"lower-roman";case"circle":case"disc":case"square":return e;default:return null}}function l(e,t,n){const r=t.parent,i=n.createElement(e.type),o=r.getChildIndex(t)+1;return n.insertChild(o,i,r),e.style&&n.setStyle("list-style-type",e.style,i),i}function a(e){const t={},n=e.getStyle("mso-list");if(n){const e=n.match(/(^|\s{1,100})l(\d+)/i),r=n.match(/\s{0,100}lfo(\d+)/i),i=n.match(/\s{0,100}level(\d+)/i);e&&r&&i&&(t.id=e[2],t.order=r[1],t.indent=i[1])}return t}const u=/id=("|')docs-internal-guid-[-0-9a-f]+("|')/i;class f{constructor(e){this.document=e}isActive(e){return u.test(e)}execute(e){const t=new o.UpcastWriter(this.document),{body:n}=e._parsedData;!function(e,t){for(const n of e.getChildren())if(n.is("element","b")&&"normal"===n.getStyle("font-weight")){const r=e.getChildIndex(n);t.remove(n),t.insertChild(r,n.getChildren(),e)}}(n,t),function(e,t){for(const n of t.createRangeIn(e)){const e=n.item;if(e.is("element","li")){const n=e.getChild(0);n&&n.is("element","p")&&t.unwrapElement(n)}}}(n,t),e.content=n}}function p(e,t){if(!e.childCount)return;const n=new o.UpcastWriter;!function(e,t,n){const r=n.createRangeIn(t),i=new o.Matcher({name:"img"}),s=[];for(const t of r)if(i.match(t.item)){const n=t.item,r=n.getAttribute("v:shapes")?n.getAttribute("v:shapes").split(" "):[];r.length&&r.every(t=>e.indexOf(t)>-1)?s.push(n):n.getAttribute("src")||s.push(n)}for(const e of s)n.remove(e)}(function(e,t){const n=t.createRangeIn(e),r=new o.Matcher({name:/v:(.+)/}),i=[];for(const e of n){if("elementStart"!=e.type)continue;const t=e.item,n=t.previousSibling&&t.previousSibling.name||null;r.match(t)&&t.getAttribute("o:gfxdata")&&"v:shapetype"!==n&&i.push(e.item.getAttribute("id"))}return i}(e,n),e,n),function(e,t){const n=t.createRangeIn(e),r=new o.Matcher({name:/v:(.+)/}),i=[];for(const e of n)"elementStart"==e.type&&r.match(e.item)&&i.push(e.item);for(const e of i)t.remove(e)}(e,n);const r=function(e,t){const n=t.createRangeIn(e),r=new o.Matcher({name:"img"}),i=[];for(const e of n)r.match(e.item)&&e.item.getAttribute("src").startsWith("file://")&&i.push(e.item);return i}(e,n);r.length&&function(e,t,n){if(e.length===t.length)for(let i=0;i<e.length;i++){const o=`data:${t[i].type};base64,${r=t[i].hex,btoa(r.match(/\w{2}/g).map(e=>String.fromCharCode(parseInt(e,16))).join(""))}`;n.setAttribute("src",o,e[i])}var r}(r,function(e){if(!e)return[];const t=/{\\pict[\s\S]+?\\bliptag-?\d+(\\blipupi-?\d+)?({\\\*\\blipuid\s?[\da-fA-F]+)?[\s}]*?/,n=new RegExp("(?:("+t.source+"))([\\da-fA-F\\s]+)\\}","g"),r=e.match(n),i=[];if(r)for(const e of r){let n=!1;e.includes("\\pngblip")?n="image/png":e.includes("\\jpegblip")&&(n="image/jpeg"),n&&i.push({hex:e.replace(t,"").replace(/[^\da-fA-F]/g,""),type:n})}return i}(t),n)}const d=/<meta\s*name="?generator"?\s*content="?microsoft\s*word\s*\d+"?\/?>/i,m=/xmlns:o="urn:schemas-microsoft-com/i;class g{constructor(e){this.document=e}isActive(e){return d.test(e)||m.test(e)}execute(e){const{body:t,stylesString:n}=e._parsedData;s(t,n),p(t,e.dataTransfer.getData("text/rtf")),e.content=t}}function h(e){return e.replace(/<span(?: class="Apple-converted-space"|)>(\s+)<\/span>/g,(e,t)=>1===t.length?" ":Array(t.length+1).join("  ").substr(0,t.length))}function y(e,t){const n=new DOMParser,r=function(e){return h(h(e)).replace(/(<span\s+style=['"]mso-spacerun:yes['"]>[^\S\r\n]*?)[\r\n]+([^\S\r\n]*<\/span>)/g,"$1$2").replace(/<span\s+style=['"]mso-spacerun:yes['"]><\/span>/g,"").replace(/ <\//g," </").replace(/ <o:p><\/o:p>/g," <o:p></o:p>").replace(/<o:p>(&nbsp;|\u00A0)<\/o:p>/g,"").replace(/>([^\S\r\n]*[\r\n]\s*)</g,"><")}(function(e){const t=e.indexOf("</body>");if(t<0)return e;const n=e.indexOf("</html>",t+"</body>".length);return e.substring(0,t+"</body>".length)+(n>=0?e.substring(n):"")}(e=e.replace(/<!--\[if gte vml 1]>/g,""))),i=n.parseFromString(r,"text/html");!function(e){e.querySelectorAll("span[style*=spacerun]").forEach(e=>{const t=e.innerText.length||0;e.innerHTML=Array(t+1).join("  ").substr(0,t)})}(i);const s=i.body.innerHTML,c=function(e,t){const n=new o.ViewDocument(t),r=new o.DomConverter(n,{blockFillerMode:"nbsp"}),i=e.createDocumentFragment(),s=e.body.childNodes;for(;s.length>0;)i.appendChild(s[0]);return r.domToView(i,{skipComments:!0})}(i,t),l=function(e){const t=[],n=[],r=Array.from(e.getElementsByTagName("style"));for(const e of r)e.sheet&&e.sheet.cssRules&&e.sheet.cssRules.length&&(t.push(e.sheet),n.push(e.innerHTML));return{styles:t,stylesString:n.join(" ")}}(i);return{body:c,bodyString:s,styles:l.styles,stylesString:l.stylesString}}class b extends r.Plugin{static get pluginName(){return"PasteFromOffice"}static get requires(){return[i.ClipboardPipeline]}init(){const e=this.editor,t=e.editing.view.document,n=[];n.push(new g(t)),n.push(new f(t)),e.plugins.get("ClipboardPipeline").on("inputTransformation",(e,r)=>{if(r._isTransformedWithPasteFromOffice)return;const i=r.dataTransfer.getData("text/html"),o=n.find(e=>e.isActive(i));o&&(r._parsedData=y(i,t.stylesProcessor),o.execute(r),r._isTransformedWithPasteFromOffice=!0)},{priority:"high"})}}}]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ckeditor/ckeditor5-paste-from-office",
3
- "version": "29.2.0",
3
+ "version": "30.0.0",
4
4
  "description": "Paste from Office feature for CKEditor 5.",
5
5
  "keywords": [
6
6
  "ckeditor",
@@ -12,28 +12,28 @@
12
12
  ],
13
13
  "main": "src/index.js",
14
14
  "dependencies": {
15
- "ckeditor5": "^29.2.0"
15
+ "ckeditor5": "^30.0.0"
16
16
  },
17
17
  "devDependencies": {
18
- "@ckeditor/ckeditor5-basic-styles": "^29.2.0",
19
- "@ckeditor/ckeditor5-clipboard": "^29.2.0",
20
- "@ckeditor/ckeditor5-cloud-services": "^29.2.0",
21
- "@ckeditor/ckeditor5-core": "^29.2.0",
18
+ "@ckeditor/ckeditor5-basic-styles": "^30.0.0",
19
+ "@ckeditor/ckeditor5-clipboard": "^30.0.0",
20
+ "@ckeditor/ckeditor5-cloud-services": "^30.0.0",
21
+ "@ckeditor/ckeditor5-core": "^30.0.0",
22
22
  "@ckeditor/ckeditor5-dev-utils": "^25.4.0",
23
- "@ckeditor/ckeditor5-easy-image": "^29.2.0",
24
- "@ckeditor/ckeditor5-engine": "^29.2.0",
25
- "@ckeditor/ckeditor5-editor-classic": "^29.2.0",
26
- "@ckeditor/ckeditor5-enter": "^29.2.0",
27
- "@ckeditor/ckeditor5-font": "^29.2.0",
28
- "@ckeditor/ckeditor5-heading": "^29.2.0",
29
- "@ckeditor/ckeditor5-image": "^29.2.0",
30
- "@ckeditor/ckeditor5-link": "^29.2.0",
31
- "@ckeditor/ckeditor5-list": "^29.2.0",
32
- "@ckeditor/ckeditor5-page-break": "^29.2.0",
33
- "@ckeditor/ckeditor5-paragraph": "^29.2.0",
34
- "@ckeditor/ckeditor5-table": "^29.2.0",
35
- "@ckeditor/ckeditor5-theme-lark": "^29.2.0",
36
- "@ckeditor/ckeditor5-utils": "^29.2.0",
23
+ "@ckeditor/ckeditor5-easy-image": "^30.0.0",
24
+ "@ckeditor/ckeditor5-engine": "^30.0.0",
25
+ "@ckeditor/ckeditor5-editor-classic": "^30.0.0",
26
+ "@ckeditor/ckeditor5-enter": "^30.0.0",
27
+ "@ckeditor/ckeditor5-font": "^30.0.0",
28
+ "@ckeditor/ckeditor5-heading": "^30.0.0",
29
+ "@ckeditor/ckeditor5-image": "^30.0.0",
30
+ "@ckeditor/ckeditor5-link": "^30.0.0",
31
+ "@ckeditor/ckeditor5-list": "^30.0.0",
32
+ "@ckeditor/ckeditor5-page-break": "^30.0.0",
33
+ "@ckeditor/ckeditor5-paragraph": "^30.0.0",
34
+ "@ckeditor/ckeditor5-table": "^30.0.0",
35
+ "@ckeditor/ckeditor5-theme-lark": "^30.0.0",
36
+ "@ckeditor/ckeditor5-utils": "^30.0.0",
37
37
  "webpack": "^4.43.0",
38
38
  "webpack-cli": "^3.3.11"
39
39
  },
@@ -66,6 +66,10 @@ function findAllShapesIds( documentFragment, writer ) {
66
66
  const shapesIds = [];
67
67
 
68
68
  for ( const value of range ) {
69
+ if ( value.type != 'elementStart' ) {
70
+ continue;
71
+ }
72
+
69
73
  const el = value.item;
70
74
  const prevSiblingName = el.previousSibling && el.previousSibling.name || null;
71
75
 
@@ -125,7 +129,7 @@ function removeAllShapeElements( documentFragment, writer ) {
125
129
  const shapes = [];
126
130
 
127
131
  for ( const value of range ) {
128
- if ( shapeElementsMatcher.match( value.item ) ) {
132
+ if ( value.type == 'elementStart' && shapeElementsMatcher.match( value.item ) ) {
129
133
  shapes.push( value.item );
130
134
  }
131
135
  }
package/CHANGELOG.md DELETED
@@ -1,94 +0,0 @@
1
- Changelog
2
- =========
3
-
4
- All changes in the package are documented in the main repository. See: https://github.com/ckeditor/ckeditor5/blob/master/CHANGELOG.md.
5
-
6
- Changes for the past releases are available below.
7
-
8
- ## [19.0.0](https://github.com/ckeditor/ckeditor5-paste-from-office/compare/v18.0.0...v19.0.0) (2020-04-29)
9
-
10
- Internal changes only (updated dependencies, documentation, etc.).
11
-
12
-
13
- ## [18.0.0](https://github.com/ckeditor/ckeditor5-paste-from-office/compare/v17.0.0...v18.0.0) (2020-03-19)
14
-
15
- ### Features
16
-
17
- * Added support for basic list indentation when pasting from Microsoft Word. Closes [ckeditor/ckeditor5#2518](https://github.com/ckeditor/ckeditor5/issues/2518). ([58ae829](https://github.com/ckeditor/ckeditor5-paste-from-office/commit/58ae829))
18
-
19
- Thanks to [gjhenrique](https://github.com/gjhenrique) for the contribution!
20
-
21
-
22
- ## [17.0.0](https://github.com/ckeditor/ckeditor5-paste-from-office/compare/v16.0.0...v17.0.0) (2020-02-19)
23
-
24
- Internal changes only (updated dependencies, documentation, etc.).
25
-
26
-
27
- ## [16.0.0](https://github.com/ckeditor/ckeditor5-paste-from-office/compare/v15.0.0...v16.0.0) (2019-12-04)
28
-
29
- ### Bug fixes
30
-
31
- * Fixed handling `mso-list:normal`. Closes [ckeditor/ckeditor5#5712](https://github.com/ckeditor/ckeditor5/issues/5712). ([2054e69](https://github.com/ckeditor/ckeditor5-paste-from-office/commit/2054e69))
32
-
33
- Thanks [@bendemboski](https://github.com/bendemboski)!
34
- * Fixed various issues with oddly formatted space run spans. ([2cd7b0f](https://github.com/ckeditor/ckeditor5-paste-from-office/commit/2cd7b0f))
35
-
36
-
37
- ## [15.0.0](https://github.com/ckeditor/ckeditor5-paste-from-office/compare/v11.1.0...v15.0.0) (2019-10-23)
38
-
39
- ### Other changes
40
-
41
- * Remove the `fixListIndentation()` filter in favor of improved list converters fix. See [ckeditor/ckeditor5-list#115](https://github.com/ckeditor/ckeditor5-list/issues/115). ([d594038](https://github.com/ckeditor/ckeditor5-paste-from-office/commit/d594038))
42
-
43
-
44
- ## [11.1.0](https://github.com/ckeditor/ckeditor5-paste-from-office/compare/v11.0.4...v11.1.0) (2019-08-26)
45
-
46
- ### Features
47
-
48
- * Prevent of bolding entire content pasted from Google Docs. Closes [#61](https://github.com/ckeditor/ckeditor5-paste-from-office/issues/61). ([8102de3](https://github.com/ckeditor/ckeditor5-paste-from-office/commit/8102de3))
49
- * Provide support for pasting lists from Google Docs. Closes [#69](https://github.com/ckeditor/ckeditor5-paste-from-office/issues/69). ([6ad2a62](https://github.com/ckeditor/ckeditor5-paste-from-office/commit/6ad2a62))
50
-
51
- ### Other changes
52
-
53
- * The issue tracker for this package was moved to https://github.com/ckeditor/ckeditor5/issues. See [ckeditor/ckeditor5#1988](https://github.com/ckeditor/ckeditor5/issues/1988). ([22edb90](https://github.com/ckeditor/ckeditor5-paste-from-office/commit/22edb90))
54
-
55
-
56
- ## [11.0.4](https://github.com/ckeditor/ckeditor5-paste-from-office/compare/v11.0.3...v11.0.4) (2019-07-10)
57
-
58
- Internal changes only (updated dependencies, documentation, etc.).
59
-
60
-
61
- ## [11.0.3](https://github.com/ckeditor/ckeditor5-paste-from-office/compare/v11.0.2...v11.0.3) (2019-07-04)
62
-
63
- Internal changes only (updated dependencies, documentation, etc.).
64
-
65
-
66
- ## [11.0.2](https://github.com/ckeditor/ckeditor5-paste-from-office/compare/v11.0.1...v11.0.2) (2019-06-05)
67
-
68
- ### Other changes
69
-
70
- * Loosen a dependency of a clipboard plugin in the paste from Office plugin so that it can be overridden. Closes [#56](https://github.com/ckeditor/ckeditor5-paste-from-office/issues/56). ([561f22b](https://github.com/ckeditor/ckeditor5-paste-from-office/commit/561f22b))
71
-
72
-
73
- ## [11.0.1](https://github.com/ckeditor/ckeditor5-paste-from-office/compare/v11.0.0...v11.0.1) (2019-04-10)
74
-
75
- Internal changes only (updated dependencies, documentation, etc.).
76
-
77
-
78
- ## [11.0.0](https://github.com/ckeditor/ckeditor5-paste-from-office/compare/v10.0.0...v11.0.0) (2019-02-28)
79
-
80
- ### Bug fixes
81
-
82
- * Ensured correct lists ordering for separate list items with the same `mso-list` id. Closes [#43](https://github.com/ckeditor/ckeditor5-paste-from-office/issues/43). ([4ebc363](https://github.com/ckeditor/ckeditor5-paste-from-office/commit/4ebc363))
83
- * Handle "spacerun spans" with mixed whitespaces. Closes [#49](https://github.com/ckeditor/ckeditor5-paste-from-office/issues/49). Closes [#50](https://github.com/ckeditor/ckeditor5-paste-from-office/issues/50). ([7fb132f](https://github.com/ckeditor/ckeditor5-paste-from-office/commit/7fb132f))
84
-
85
- Huge thanks to [Matt Kobs](https://github.com/kobsy) for this contribution!
86
-
87
- ### BREAKING CHANGES
88
-
89
- * Upgraded minimal versions of Node to `8.0.0` and npm to `5.7.1`. See: [ckeditor/ckeditor5#1507](https://github.com/ckeditor/ckeditor5/issues/1507). ([612ea3c](https://github.com/ckeditor/ckeditor5-cloud-services/commit/612ea3c))
90
-
91
-
92
- ## [10.0.0](https://github.com/ckeditor/ckeditor5-paste-from-office/tree/v10.0.0) (2018-12-05)
93
-
94
- Initial implementation of the Paste from Office feature.