@ckeditor/ckeditor5-import-word 38.2.0-alpha.0 → 38.2.0-alpha.1
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/build/import-word.js +1 -1
- package/package.json +2 -2
- package/src/augmentation.d.ts +1 -1
- package/src/importword.d.ts +3 -3
- package/src/importword.js +1 -1
- package/src/importwordcommand.d.ts +1 -1
- package/src/importwordcommand.js +1 -1
- package/src/importwordediting.d.ts +3 -3
- package/src/importwordediting.js +1 -1
- package/src/importwordui.d.ts +1 -1
- package/src/importwordui.js +1 -1
- package/src/index.d.ts +5 -5
- package/src/index.js +1 -1
package/build/import-word.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
/*!
|
|
3
3
|
* @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
|
|
4
4
|
* For licensing, see LICENSE.md.
|
|
5
|
-
*/(()=>{var t={722:(t,e,r)=>{"use strict";r.d(e,{Z:()=>i});var o=r(758),n=r.n(o)()((function(t){return t[1]}));n.push([t.id,":root{--ck-toolbar-spinner-size:18px}.ck-importword_status-pending{position:relative}.ck.ck-importword__spinner-container{display:none}.ck.ck-importword__spinner{border:2px solid var(--ck-color-text);border-radius:50%;border-top:2px solid transparent;height:var(--ck-toolbar-spinner-size);left:0;margin:0 auto;position:absolute;right:0;top:50%;transform:translateY(-50%);width:var(--ck-toolbar-spinner-size);z-index:1}.ck-importword_status-pending .ck.ck-importword__spinner-container{animation:rotate 1.5s linear infinite;display:block;height:var(--ck-toolbar-spinner-size);position:absolute;width:var(--ck-toolbar-spinner-size)}.ck-importword_status-pending .ck.ck-button__icon{color:transparent}@keyframes rotate{to{transform:rotate(1turn)}}",""]);const i=n},758:t=>{"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var r=t(e);return e[2]?"@media ".concat(e[2]," {").concat(r,"}"):r})).join("")},e.i=function(t,r,o){"string"==typeof t&&(t=[[null,t,""]]);var n={};if(o)for(var i=0;i<this.length;i++){var s=this[i][0];null!=s&&(n[s]=!0)}for(var a=0;a<t.length;a++){var c=[].concat(t[a]);o&&n[c[0]]||(r&&(c[2]?c[2]="".concat(r," and ").concat(c[2]):c[2]=r),e.push(c))}},e}},278:(t,e,r)=>{"use strict";var o,n=function(){return void 0===o&&(o=Boolean(window&&document&&document.all&&!window.atob)),o},i=function(){var t={};return function(e){if(void 0===t[e]){var r=document.querySelector(e);if(window.HTMLIFrameElement&&r instanceof window.HTMLIFrameElement)try{r=r.contentDocument.head}catch(t){r=null}t[e]=r}return t[e]}}(),s=[];function a(t){for(var e=-1,r=0;r<s.length;r++)if(s[r].identifier===t){e=r;break}return e}function c(t,e){for(var r={},o=[],n=0;n<t.length;n++){var i=t[n],c=e.base?i[0]+e.base:i[0],l=r[c]||0,d="".concat(c," ").concat(l);r[c]=l+1;var u=a(d),p={css:i[1],media:i[2],sourceMap:i[3]};-1!==u?(s[u].references++,s[u].updater(p)):s.push({identifier:d,updater:g(p,e),references:1}),o.push(d)}return o}function l(t){var e=document.createElement("style"),o=t.attributes||{};if(void 0===o.nonce){var n=r.nc;n&&(o.nonce=n)}if(Object.keys(o).forEach((function(t){e.setAttribute(t,o[t])})),"function"==typeof t.insert)t.insert(e);else{var s=i(t.insert||"head");if(!s)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");s.appendChild(e)}return e}var d,u=(d=[],function(t,e){return d[t]=e,d.filter(Boolean).join("\n")});function p(t,e,r,o){var n=r?"":o.media?"@media ".concat(o.media," {").concat(o.css,"}"):o.css;if(t.styleSheet)t.styleSheet.cssText=u(e,n);else{var i=document.createTextNode(n),s=t.childNodes;s[e]&&t.removeChild(s[e]),s.length?t.insertBefore(i,s[e]):t.appendChild(i)}}function h(t,e,r){var o=r.css,n=r.media,i=r.sourceMap;if(n?t.setAttribute("media",n):t.removeAttribute("media"),i&&"undefined"!=typeof btoa&&(o+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),t.styleSheet)t.styleSheet.cssText=o;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(o))}}var m=null,f=0;function g(t,e){var r,o,n;if(e.singleton){var i=f++;r=m||(m=l(e)),o=p.bind(null,r,i,!1),n=p.bind(null,r,i,!0)}else r=l(e),o=h.bind(null,r,e),n=function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(r)};return o(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap)return;o(t=e)}else n()}}t.exports=function(t,e){(e=e||{}).singleton||"boolean"==typeof e.singleton||(e.singleton=n());var r=c(t=t||[],e);return function(t){if(t=t||[],"[object Array]"===Object.prototype.toString.call(t)){for(var o=0;o<r.length;o++){var n=a(r[o]);s[n].references--}for(var i=c(t,e),l=0;l<r.length;l++){var d=a(r[l]);0===s[d].references&&(s[d].updater(),s.splice(d,1))}r=i}}}},945:(t,e,r)=>{t.exports=r(79)("./src/clipboard.js")},704:(t,e,r)=>{t.exports=r(79)("./src/core.js")},492:(t,e,r)=>{t.exports=r(79)("./src/engine.js")},273:(t,e,r)=>{t.exports=r(79)("./src/ui.js")},448:(t,e,r)=>{t.exports=r(79)("./src/upload.js")},209:(t,e,r)=>{t.exports=r(79)("./src/utils.js")},79:t=>{"use strict";t.exports=CKEditor5.dll}},e={};function r(o){var n=e[o];if(void 0!==n)return n.exports;var i=e[o]={id:o,exports:{}};return t[o](i,i.exports,r),i.exports}r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var o in e)r.o(e,o)&&!r.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.nc=void 0;var o={};(()=>{"use strict";r.r(o),r.d(o,{ImportWord:()=>x,ImportWordEditing:()=>b,ImportWordUI:()=>l});var t=r(704),e=r(273),n=r(448);var i=r(278),s=r.n(i),a=r(722),c={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};s()(a.Z,c);a.Z.locals;class l extends t.Plugin{static get pluginName(){return"ImportWordUI"}init(){const t=this.editor,r=t.t;t.ui.componentFactory.add("importWord",(o=>{const i=t.commands.get("importWord"),s=new n.FileDialogButtonView(o);s.set({acceptedType:"application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.openxmlformats-officedocument.wordprocessingml.template"}),s.buttonView.set({label:r("Import from Word"),icon:'<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m14 0 5 4.5v8.892l-1.5-1.8V6.5h-5v-5h-8v3H3V0h11Zm0 2v3h3.3L14 2Z"/><path d="M10.74 18a2.76 2.76 0 0 1-.469-.5H3V19h9.25v-.374A2.737 2.737 0 0 1 10.74 18Z"/><path d="M8.5 6a1.5 1.5 0 0 1 1.493 1.356L10 7.5v7a1.5 1.5 0 0 1-1.356 1.493L8.5 16h-7a1.5 1.5 0 0 1-1.493-1.356L0 14.5v-7a1.5 1.5 0 0 1 1.356-1.493L1.5 6h7ZM7.483 8.795l-.042.088-.986 2.534-.947-2.528-.043-.092a.601.601 0 0 0-1.042.008l-.042.093-.883 2.465-.937-2.475-.042-.089a.6.6 0 0 0-1.107.42l.027.093 1.514 4 .044.092a.6.6 0 0 0 1.041-.01l.041-.092.88-2.458.925 2.467.046.096a.602.602 0 0 0 1.032 0l.043-.09 1.554-4 .028-.093a.6.6 0 0 0-1.104-.43v.001ZM11.674 15.407a.75.75 0 1 0 1.152.96L14 14.96V20h1.5v-5.04l1.174 1.408a.75.75 0 1 0 1.152-.96l-2.346-2.816a.95.95 0 0 0-1.46 0l-2.346 2.815Z"/></svg>\n',tooltip:!0}),s.buttonView.bind("isOn","isEnabled").to(i,"isBusy","isEnabled"),s.buttonView.extendTemplate({attributes:{class:[s.buttonView.bindTemplate.if("isOn","ck-importword_status-pending")]}});const a=new e.View;return a.setTemplate({tag:"span",attributes:{class:["ck","ck-importword__spinner-container"]},children:[{tag:"span",attributes:{class:["ck","ck-importword__spinner"]}}]}),s.buttonView.children.add(a),s.on("done",((e,r)=>{t.execute("importWord",r[0],{}),t.editing.view.focus()})),s}))}}var d=r(945),u=r(492),p=r(209);class h extends t.Command{constructor(t){super(t),this.set("isBusy",!1),this._importMarker=null,this._undoStepBatch=null,this._abortController=null,this.on("dataInsert",((e,r)=>{const o=new DataTransfer;o.setData("text/html",r.html);const n=this._importMarker.getRange();this.editor.model.enqueueChange(this._undoStepBatch,(e=>{this._importMarker.stopListening(),e.setSelection(n),t.editing.view.document.fire("clipboardInput",{dataTransfer:o})}))}),{priority:"low"})}refresh(){this.isEnabled=this._checkEnabled()}execute(t,e={}){if(this.isBusy)return Promise.resolve();const r=this.editor.config.get("importWord"),o={url:r.converterUrl,file:t,serviceConfig:{...e,default_styles:r.defaultStyles}};return this._prepareForImport(),this._sendImportRequest(o).then(this._handleImportResponse.bind(this)).catch(this._handleImportFailure.bind(this)).finally(this._cleanUpAfterImport.bind(this))}_checkEnabled(){if(this.isBusy)return!1;const t=this.editor.model,e=t.schema,r=t.document.selection,o=(0,p.first)(r.getSelectedBlocks());return!!o&&e.checkChild(o.parent,"paragraph")}_prepareForImport(){const t=this.editor,e=t.model,r=e.document.selection;this._abortController=new AbortController,this._undoStepBatch=t.model.createBatch({isUndoable:!0}),e.enqueueChange(this._undoStepBatch,(t=>{r.isCollapsed||e.deleteContent(r,{leaveUnmerged:!0});const o=r.getFirstPosition(),n=(0,p.first)(r.getSelectedBlocks());let i;i=n.is("element","paragraph")&&n.isEmpty?o:o.isAtStart?e.createPositionBefore(n):o.isAtEnd?e.createPositionAfter(n):t.split(o).position,this._importMarker=t.addMarker("importWord:"+(0,p.uid)(),{usingOperation:!1,affectsData:!1,range:new u.Range(i)}),this._importMarker.on("change:range",(()=>{"$graveyard"===this._importMarker.getRange().root.rootName&&this._abortController.abort()}))})),this.isBusy=!0,this.refresh()}_cleanUpAfterImport(){const t=this.editor.model;t.markers.has(this._importMarker)&&t.enqueueChange(this._undoStepBatch,(t=>{t.removeMarker(this._importMarker)})),this._importMarker=null,this._undoStepBatch=null,this._abortController=null,this.isBusy=!1,this.refresh()}_sendImportRequest({url:t,file:e,serviceConfig:r}){const o=this.editor.plugins.get("ImportWordEditing").getToken(),n=new FormData;n.set("config",JSON.stringify(r)),n.set("file",e);const i={method:"POST",headers:{},body:n,signal:this._abortController.signal};return o&&(i.headers.Authorization=o.value),fetch(t,i)}_handleImportResponse(t){return t.ok?t.json().then((t=>{this.editor.model.markers.has(this._importMarker)&&"$graveyard"!==this._importMarker.getRange().root.rootName&&this.fire("dataInsert",t)})):Promise.reject()}_handleImportFailure(){if(this._abortController.signal.aborted)return void(0,p.logWarning)("import-word-plugin-import-cancelled");const t=this.editor,e=(0,t.t)("An error occurred while importing the Word file.");t.plugins.get("Notification").showWarning(e),(0,p.logError)("import-word-plugin-conversion-failed")}}const m=["_token","tokenUrl","token","init","requires","add","define","config","get","pluginName","https://docx-converter.cke-cs.com/v2/convert/docx-html","commands","plugins","CloudServices","importWord","registerTokenUrl","cloudServices","getToken"];var f,g;f=m,g=454,function(t){for(;--t;)f.push(f.shift())}(++g);const v=function(t,e){return m[t-=0]};class b extends t.Plugin{static get[v("0x5")](){return"ImportWordEditing"}static get[v("0x0")](){return[e.Notification,d.ClipboardPipeline,v("0x9")]}constructor(t){super(t),this[v("0xe")]=null}async[v("0x11")](){const t=this.editor;t[v("0x3")][v("0x2")](v("0xa"),{converterUrl:v("0x6"),tokenUrl:(t[v("0x3")][v("0x4")]("cloudServices")||{})[v("0xf")],defaultStyles:!1}),t[v("0x7")][v("0x1")](v("0xa"),new h(t));const{tokenUrl:e}=t.config.get("importWord");if(e){const{tokenUrl:r}=t[v("0x3")][v("0x4")](v("0xc"))||{};this[v("0xe")]=e===r?t[v("0x8")].get(v("0x9"))[v("0x10")]:await t[v("0x8")][v("0x4")](v("0x9"))[v("0xb")](e)}}[v("0xd")](){return this._token}}class x extends t.Plugin{static get pluginName(){return"ImportWord"}static get requires(){return[b,l]}}})(),(window.CKEditor5=window.CKEditor5||{}).importWord=o})();
|
|
5
|
+
*/(()=>{var t={847:(t,e,r)=>{"use strict";r.d(e,{Z:()=>i});var o=r(758),n=r.n(o)()((function(t){return t[1]}));n.push([t.id,":root{--ck-toolbar-spinner-size:18px}.ck-importword_status-pending{position:relative}.ck.ck-importword__spinner-container{display:none}.ck.ck-importword__spinner{border:2px solid var(--ck-color-text);border-radius:50%;border-top:2px solid transparent;height:var(--ck-toolbar-spinner-size);left:0;margin:0 auto;position:absolute;right:0;top:50%;transform:translateY(-50%);width:var(--ck-toolbar-spinner-size);z-index:1}.ck-importword_status-pending .ck.ck-importword__spinner-container{animation:rotate 1.5s linear infinite;display:block;height:var(--ck-toolbar-spinner-size);position:absolute;width:var(--ck-toolbar-spinner-size)}.ck-importword_status-pending .ck.ck-button__icon{color:transparent}@keyframes rotate{to{transform:rotate(1turn)}}",""]);const i=n},758:t=>{"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var r=t(e);return e[2]?"@media ".concat(e[2]," {").concat(r,"}"):r})).join("")},e.i=function(t,r,o){"string"==typeof t&&(t=[[null,t,""]]);var n={};if(o)for(var i=0;i<this.length;i++){var s=this[i][0];null!=s&&(n[s]=!0)}for(var a=0;a<t.length;a++){var c=[].concat(t[a]);o&&n[c[0]]||(r&&(c[2]?c[2]="".concat(r," and ").concat(c[2]):c[2]=r),e.push(c))}},e}},278:(t,e,r)=>{"use strict";var o,n=function(){return void 0===o&&(o=Boolean(window&&document&&document.all&&!window.atob)),o},i=function(){var t={};return function(e){if(void 0===t[e]){var r=document.querySelector(e);if(window.HTMLIFrameElement&&r instanceof window.HTMLIFrameElement)try{r=r.contentDocument.head}catch(t){r=null}t[e]=r}return t[e]}}(),s=[];function a(t){for(var e=-1,r=0;r<s.length;r++)if(s[r].identifier===t){e=r;break}return e}function c(t,e){for(var r={},o=[],n=0;n<t.length;n++){var i=t[n],c=e.base?i[0]+e.base:i[0],l=r[c]||0,d="".concat(c," ").concat(l);r[c]=l+1;var u=a(d),p={css:i[1],media:i[2],sourceMap:i[3]};-1!==u?(s[u].references++,s[u].updater(p)):s.push({identifier:d,updater:g(p,e),references:1}),o.push(d)}return o}function l(t){var e=document.createElement("style"),o=t.attributes||{};if(void 0===o.nonce){var n=r.nc;n&&(o.nonce=n)}if(Object.keys(o).forEach((function(t){e.setAttribute(t,o[t])})),"function"==typeof t.insert)t.insert(e);else{var s=i(t.insert||"head");if(!s)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");s.appendChild(e)}return e}var d,u=(d=[],function(t,e){return d[t]=e,d.filter(Boolean).join("\n")});function p(t,e,r,o){var n=r?"":o.media?"@media ".concat(o.media," {").concat(o.css,"}"):o.css;if(t.styleSheet)t.styleSheet.cssText=u(e,n);else{var i=document.createTextNode(n),s=t.childNodes;s[e]&&t.removeChild(s[e]),s.length?t.insertBefore(i,s[e]):t.appendChild(i)}}function h(t,e,r){var o=r.css,n=r.media,i=r.sourceMap;if(n?t.setAttribute("media",n):t.removeAttribute("media"),i&&"undefined"!=typeof btoa&&(o+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),t.styleSheet)t.styleSheet.cssText=o;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(o))}}var m=null,f=0;function g(t,e){var r,o,n;if(e.singleton){var i=f++;r=m||(m=l(e)),o=p.bind(null,r,i,!1),n=p.bind(null,r,i,!0)}else r=l(e),o=h.bind(null,r,e),n=function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(r)};return o(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap)return;o(t=e)}else n()}}t.exports=function(t,e){(e=e||{}).singleton||"boolean"==typeof e.singleton||(e.singleton=n());var r=c(t=t||[],e);return function(t){if(t=t||[],"[object Array]"===Object.prototype.toString.call(t)){for(var o=0;o<r.length;o++){var n=a(r[o]);s[n].references--}for(var i=c(t,e),l=0;l<r.length;l++){var d=a(r[l]);0===s[d].references&&(s[d].updater(),s.splice(d,1))}r=i}}}},945:(t,e,r)=>{t.exports=r(79)("./src/clipboard.js")},704:(t,e,r)=>{t.exports=r(79)("./src/core.js")},492:(t,e,r)=>{t.exports=r(79)("./src/engine.js")},273:(t,e,r)=>{t.exports=r(79)("./src/ui.js")},448:(t,e,r)=>{t.exports=r(79)("./src/upload.js")},209:(t,e,r)=>{t.exports=r(79)("./src/utils.js")},79:t=>{"use strict";t.exports=CKEditor5.dll}},e={};function r(o){var n=e[o];if(void 0!==n)return n.exports;var i=e[o]={id:o,exports:{}};return t[o](i,i.exports,r),i.exports}r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var o in e)r.o(e,o)&&!r.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.nc=void 0;var o={};(()=>{"use strict";r.r(o),r.d(o,{ImportWord:()=>y,ImportWordEditing:()=>b,ImportWordUI:()=>l});var t=r(704),e=r(273),n=r(448);var i=r(278),s=r.n(i),a=r(847),c={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};s()(a.Z,c);a.Z.locals;class l extends t.Plugin{static get pluginName(){return"ImportWordUI"}init(){const t=this.editor,r=t.t;t.ui.componentFactory.add("importWord",(o=>{const i=t.commands.get("importWord"),s=new n.FileDialogButtonView(o);s.set({acceptedType:"application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.openxmlformats-officedocument.wordprocessingml.template"}),s.buttonView.set({label:r("Import from Word"),icon:'<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m14 0 5 4.5v8.892l-1.5-1.8V6.5h-5v-5h-8v3H3V0h11Zm0 2v3h3.3L14 2Z"/><path d="M10.74 18a2.76 2.76 0 0 1-.469-.5H3V19h9.25v-.374A2.737 2.737 0 0 1 10.74 18Z"/><path d="M8.5 6a1.5 1.5 0 0 1 1.493 1.356L10 7.5v7a1.5 1.5 0 0 1-1.356 1.493L8.5 16h-7a1.5 1.5 0 0 1-1.493-1.356L0 14.5v-7a1.5 1.5 0 0 1 1.356-1.493L1.5 6h7ZM7.483 8.795l-.042.088-.986 2.534-.947-2.528-.043-.092a.601.601 0 0 0-1.042.008l-.042.093-.883 2.465-.937-2.475-.042-.089a.6.6 0 0 0-1.107.42l.027.093 1.514 4 .044.092a.6.6 0 0 0 1.041-.01l.041-.092.88-2.458.925 2.467.046.096a.602.602 0 0 0 1.032 0l.043-.09 1.554-4 .028-.093a.6.6 0 0 0-1.104-.43v.001ZM11.674 15.407a.75.75 0 1 0 1.152.96L14 14.96V20h1.5v-5.04l1.174 1.408a.75.75 0 1 0 1.152-.96l-2.346-2.816a.95.95 0 0 0-1.46 0l-2.346 2.815Z"/></svg>\n',tooltip:!0}),s.buttonView.bind("isOn","isEnabled").to(i,"isBusy","isEnabled"),s.buttonView.extendTemplate({attributes:{class:[s.buttonView.bindTemplate.if("isOn","ck-importword_status-pending")]}});const a=new e.View;return a.setTemplate({tag:"span",attributes:{class:["ck","ck-importword__spinner-container"]},children:[{tag:"span",attributes:{class:["ck","ck-importword__spinner"]}}]}),s.buttonView.children.add(a),s.on("done",((e,r)=>{t.execute("importWord",r[0],{}),t.editing.view.focus()})),s}))}}var d=r(945),u=r(492),p=r(209);class h extends t.Command{constructor(t){super(t),this.set("isBusy",!1),this._importMarker=null,this._undoStepBatch=null,this._abortController=null,this.on("dataInsert",((e,r)=>{const o=new DataTransfer;o.setData("text/html",r.html);const n=this._importMarker.getRange();this.editor.model.enqueueChange(this._undoStepBatch,(e=>{this._importMarker.stopListening(),e.setSelection(n),t.editing.view.document.fire("clipboardInput",{dataTransfer:o})}))}),{priority:"low"})}refresh(){this.isEnabled=this._checkEnabled()}execute(t,e={}){if(this.isBusy)return Promise.resolve();const r=this.editor.config.get("importWord"),o={url:r.converterUrl,file:t,serviceConfig:{...e,default_styles:r.defaultStyles}};return this._prepareForImport(),this._sendImportRequest(o).then(this._handleImportResponse.bind(this)).catch(this._handleImportFailure.bind(this)).finally(this._cleanUpAfterImport.bind(this))}_checkEnabled(){if(this.isBusy)return!1;const t=this.editor.model,e=t.schema,r=t.document.selection,o=(0,p.first)(r.getSelectedBlocks());return!!o&&e.checkChild(o.parent,"paragraph")}_prepareForImport(){const t=this.editor,e=t.model,r=e.document.selection;this._abortController=new AbortController,this._undoStepBatch=t.model.createBatch({isUndoable:!0}),e.enqueueChange(this._undoStepBatch,(t=>{r.isCollapsed||e.deleteContent(r,{leaveUnmerged:!0});const o=r.getFirstPosition(),n=(0,p.first)(r.getSelectedBlocks());let i;i=n.is("element","paragraph")&&n.isEmpty?o:o.isAtStart?e.createPositionBefore(n):o.isAtEnd?e.createPositionAfter(n):t.split(o).position,this._importMarker=t.addMarker("importWord:"+(0,p.uid)(),{usingOperation:!1,affectsData:!1,range:new u.Range(i)}),this._importMarker.on("change:range",(()=>{"$graveyard"===this._importMarker.getRange().root.rootName&&this._abortController.abort()}))})),this.isBusy=!0,this.refresh()}_cleanUpAfterImport(){const t=this.editor.model;t.markers.has(this._importMarker)&&t.enqueueChange(this._undoStepBatch,(t=>{t.removeMarker(this._importMarker)})),this._importMarker=null,this._undoStepBatch=null,this._abortController=null,this.isBusy=!1,this.refresh()}_sendImportRequest({url:t,file:e,serviceConfig:r}){const o=this.editor.plugins.get("ImportWordEditing").getToken(),n=new FormData;n.set("config",JSON.stringify(r)),n.set("file",e);const i={method:"POST",headers:{},body:n,signal:this._abortController.signal};return o&&(i.headers.Authorization=o.value),fetch(t,i)}_handleImportResponse(t){return t.ok?t.json().then((t=>{this.editor.model.markers.has(this._importMarker)&&"$graveyard"!==this._importMarker.getRange().root.rootName&&this.fire("dataInsert",t)})):Promise.reject()}_handleImportFailure(){if(this._abortController.signal.aborted)return void(0,p.logWarning)("import-word-plugin-import-cancelled");const t=this.editor,e=(0,t.t)("An error occurred while importing the Word file.");t.plugins.get("Notification").showWarning(e),(0,p.logError)("import-word-plugin-conversion-failed")}}const m=["commands","_token","getToken","config","cloudServices","plugins","editor","get","importWord","CloudServices","ImportWordEditing","add","define","pluginName","token"];var f,g;f=m,g=158,function(t){for(;--t;)f.push(f.shift())}(++g);const v=function(t,e){return m[t-=0]};class b extends t.Plugin{static get[v("0x5")](){return v("0x2")}static get requires(){return[e.Notification,d.ClipboardPipeline,v("0x1")]}constructor(t){super(t),this[v("0x8")]=null}async init(){const t=this[v("0xd")];t.config[v("0x4")](v("0x0"),{converterUrl:"https://docx-converter.cke-cs.com/v2/convert/docx-html",tokenUrl:(t[v("0xa")].get(v("0xb"))||{}).tokenUrl,defaultStyles:!1}),t[v("0x7")][v("0x3")](v("0x0"),new h(t));const{tokenUrl:e}=t[v("0xa")].get(v("0x0"));if(e){const{tokenUrl:r}=t[v("0xa")][v("0xe")](v("0xb"))||{};this[v("0x8")]=e===r?t[v("0xc")][v("0xe")]("CloudServices")[v("0x6")]:await t[v("0xc")][v("0xe")](v("0x1")).registerTokenUrl(e)}}[v("0x9")](){return this[v("0x8")]}}var x,w,_=["pluginName","ImportWord"];x=_,w=481,function(t){for(;--t;)x.push(x.shift())}(++w);var k=function(t,e){return _[t-=0]};class y extends t.Plugin{static get[k("0x1")](){return k("0x0")}static get requires(){return[b,l]}}})(),(window.CKEditor5=window.CKEditor5||{}).importWord=o})();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ckeditor/ckeditor5-import-word",
|
|
3
|
-
"version": "38.2.0-alpha.
|
|
3
|
+
"version": "38.2.0-alpha.1",
|
|
4
4
|
"description": "Import from Word feature for CKEditor 5.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ckeditor",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"main": "src/index.js",
|
|
31
31
|
"type": "module",
|
|
32
32
|
"dependencies": {
|
|
33
|
-
"ckeditor5": "38.2.0-alpha.
|
|
33
|
+
"ckeditor5": "38.2.0-alpha.1"
|
|
34
34
|
},
|
|
35
35
|
"engines": {
|
|
36
36
|
"node": ">=16.0.0",
|
package/src/augmentation.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
4
4
|
*/
|
|
5
|
-
import type { ImportWordConfig, ImportWord, ImportWordEditing, ImportWordUI, ImportWordCommand } from './index';
|
|
5
|
+
import type { ImportWordConfig, ImportWord, ImportWordEditing, ImportWordUI, ImportWordCommand } from './index.js';
|
|
6
6
|
declare module '@ckeditor/ckeditor5-core' {
|
|
7
7
|
interface EditorConfig {
|
|
8
8
|
/**
|
package/src/importword.d.ts
CHANGED
|
@@ -6,10 +6,10 @@
|
|
|
6
6
|
* @module import-word/importword
|
|
7
7
|
* @publicApi
|
|
8
8
|
*/
|
|
9
|
-
import { Plugin } from 'ckeditor5/src/core';
|
|
9
|
+
import { Plugin } from 'ckeditor5/src/core.js';
|
|
10
10
|
import type { TokenUrl } from '@ckeditor/ckeditor5-cloud-services';
|
|
11
|
-
import ImportWordUI from './importwordui';
|
|
12
|
-
import ImportWordEditing from './importwordediting';
|
|
11
|
+
import ImportWordUI from './importwordui.js';
|
|
12
|
+
import ImportWordEditing from './importwordediting.js';
|
|
13
13
|
/**
|
|
14
14
|
* The import from Word feature.
|
|
15
15
|
*
|
package/src/importword.js
CHANGED
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
import{Plugin as
|
|
23
|
+
var _0x45d7=['pluginName','ImportWord'];(function(_0x5ab41f,_0x45d7eb){var _0x29a63c=function(_0x225dee){while(--_0x225dee){_0x5ab41f['push'](_0x5ab41f['shift']());}};_0x29a63c(++_0x45d7eb);}(_0x45d7,0x1e1));var _0x29a6=function(_0x5ab41f,_0x45d7eb){_0x5ab41f=_0x5ab41f-0x0;var _0x29a63c=_0x45d7[_0x5ab41f];return _0x29a63c;};import{Plugin as _0x5a2f56}from'ckeditor5/src/core.js';import _0x34b3a6 from'./importwordui.js';import _0x3a3f2c from'./importwordediting.js';export default class i extends _0x5a2f56{static get[_0x29a6('0x1')](){return _0x29a6('0x0');}static get['requires'](){return[_0x3a3f2c,_0x34b3a6];}}
|
package/src/importwordcommand.js
CHANGED
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
import{Command as
|
|
23
|
+
import{Command as _0x263365}from'ckeditor5/src/core.js';import{Range as _0xa6ac7a}from'ckeditor5/src/engine.js';import{logWarning as _0x40045d,logError as _0x119dfa,first as _0x3f95a9,uid as _0xc546f2}from'ckeditor5/src/utils.js';export default class d extends _0x263365{constructor(_0x5dd5d5){super(_0x5dd5d5),this['set']('isBusy',!0x1),this['_importMarker']=null,this['_undoStepBatch']=null,this['_abortController']=null,this['on']('dataInsert',(_0x719341,_0xf5ffe2)=>{const _0x35c7de=new DataTransfer();_0x35c7de['setData']('text/html',_0xf5ffe2['html']);const _0x43dbcb=this['_importMarker']['getRange']();this['editor']['model']['enqueueChange'](this['_undoStepBatch'],_0x19abf4=>{this['_importMarker']['stopListening'](),_0x19abf4['setSelection'](_0x43dbcb),_0x5dd5d5['editing']['view']['document']['fire']('clipboardInput',{'dataTransfer':_0x35c7de});});},{'priority':'low'});}['refresh'](){this['isEnabled']=this['_checkEnabled']();}['execute'](_0x19a1d9,_0x510675={}){if(this['isBusy'])return Promise['resolve']();const _0x43aad1=this['editor']['config']['get']('importWord'),_0x1d7ca8={'url':_0x43aad1['converterUrl'],'file':_0x19a1d9,'serviceConfig':{..._0x510675,'default_styles':_0x43aad1['defaultStyles']}};return this['_prepareForImport'](),this['_sendImportRequest'](_0x1d7ca8)['then'](this['_handleImportResponse']['bind'](this))['catch'](this['_handleImportFailure']['bind'](this))['finally'](this['_cleanUpAfterImport']['bind'](this));}['_checkEnabled'](){if(this['isBusy'])return!0x1;const _0xbae797=this['editor']['model'],_0x11134d=_0xbae797['schema'],_0x2a9c1a=_0xbae797['document']['selection'],_0x1ccb4d=_0x3f95a9(_0x2a9c1a['getSelectedBlocks']());return!!_0x1ccb4d&&_0x11134d['checkChild'](_0x1ccb4d['parent'],'paragraph');}['_prepareForImport'](){const _0x9f77b5=this['editor'],_0x3316c2=_0x9f77b5['model'],_0x541c46=_0x3316c2['document']['selection'];this['_abortController']=new AbortController(),this['_undoStepBatch']=_0x9f77b5['model']['createBatch']({'isUndoable':!0x0}),_0x3316c2['enqueueChange'](this['_undoStepBatch'],_0x31d6eb=>{_0x541c46['isCollapsed']||_0x3316c2['deleteContent'](_0x541c46,{'leaveUnmerged':!0x0});const _0x305498=_0x541c46['getFirstPosition'](),_0x2f8bcb=_0x3f95a9(_0x541c46['getSelectedBlocks']());let _0x35deb0;_0x35deb0=_0x2f8bcb['is']('element','paragraph')&&_0x2f8bcb['isEmpty']?_0x305498:_0x305498['isAtStart']?_0x3316c2['createPositionBefore'](_0x2f8bcb):_0x305498['isAtEnd']?_0x3316c2['createPositionAfter'](_0x2f8bcb):_0x31d6eb['split'](_0x305498)['position'],this['_importMarker']=_0x31d6eb['addMarker']('importWord:'+_0xc546f2(),{'usingOperation':!0x1,'affectsData':!0x1,'range':new _0xa6ac7a(_0x35deb0)}),this['_importMarker']['on']('change:range',()=>{'$graveyard'===this['_importMarker']['getRange']()['root']['rootName']&&this['_abortController']['abort']();});}),this['isBusy']=!0x0,this['refresh']();}['_cleanUpAfterImport'](){const _0x1d3b73=this['editor']['model'];_0x1d3b73['markers']['has'](this['_importMarker'])&&_0x1d3b73['enqueueChange'](this['_undoStepBatch'],_0x52c113=>{_0x52c113['removeMarker'](this['_importMarker']);}),this['_importMarker']=null,this['_undoStepBatch']=null,this['_abortController']=null,this['isBusy']=!0x1,this['refresh']();}['_sendImportRequest']({url:_0x2315dc,file:_0x9f59d2,serviceConfig:_0x4645cd}){const _0x303dd3=this['editor']['plugins']['get']('ImportWordEditing')['getToken'](),_0x1ecc41=new FormData();_0x1ecc41['set']('config',JSON['stringify'](_0x4645cd)),_0x1ecc41['set']('file',_0x9f59d2);const _0x39a501={'method':'POST','headers':{},'body':_0x1ecc41,'signal':this['_abortController']['signal']};return _0x303dd3&&(_0x39a501['headers']['Authorization']=_0x303dd3['value']),fetch(_0x2315dc,_0x39a501);}['_handleImportResponse'](_0x3da158){return _0x3da158['ok']?_0x3da158['json']()['then'](_0x476399=>{if(!this['editor']['model']['markers']['has'](this['_importMarker']))return;'$graveyard'!==this['_importMarker']['getRange']()['root']['rootName']&&this['fire']('dataInsert',_0x476399);}):Promise['reject']();}['_handleImportFailure'](){if(this['_abortController']['signal']['aborted'])return void _0x40045d('import-word-plugin-import-cancelled');const _0x4f5352=this['editor'],_0x2dbcdd=(0x0,_0x4f5352['t'])('An\x20error\x20occurred\x20while\x20importing\x20the\x20Word\x20file.');_0x4f5352['plugins']['get']('Notification')['showWarning'](_0x2dbcdd),_0x119dfa('import-word-plugin-conversion-failed');}}
|
|
@@ -6,9 +6,9 @@
|
|
|
6
6
|
* @module import-word/importwordediting
|
|
7
7
|
* @publicApi
|
|
8
8
|
*/
|
|
9
|
-
import { Plugin, type Editor } from 'ckeditor5/src/core';
|
|
10
|
-
import { Notification } from 'ckeditor5/src/ui';
|
|
11
|
-
import { ClipboardPipeline } from 'ckeditor5/src/clipboard';
|
|
9
|
+
import { Plugin, type Editor } from 'ckeditor5/src/core.js';
|
|
10
|
+
import { Notification } from 'ckeditor5/src/ui.js';
|
|
11
|
+
import { ClipboardPipeline } from 'ckeditor5/src/clipboard.js';
|
|
12
12
|
import type { InitializedToken } from '@ckeditor/ckeditor5-cloud-services';
|
|
13
13
|
/**
|
|
14
14
|
* The editing part of the import from Word feature.
|
package/src/importwordediting.js
CHANGED
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
const
|
|
23
|
+
const _0x472c=['commands','_token','getToken','config','cloudServices','plugins','editor','get','importWord','CloudServices','ImportWordEditing','add','define','pluginName','token'];(function(_0xded680,_0x472c24){const _0x490473=function(_0x3fa4bc){while(--_0x3fa4bc){_0xded680['push'](_0xded680['shift']());}};_0x490473(++_0x472c24);}(_0x472c,0x9e));const _0x4904=function(_0xded680,_0x472c24){_0xded680=_0xded680-0x0;let _0x490473=_0x472c[_0xded680];return _0x490473;};import{Plugin as _0x2b2913}from'ckeditor5/src/core.js';import{Notification as _0x30d68d}from'ckeditor5/src/ui.js';import{ClipboardPipeline as _0x36c2cd}from'ckeditor5/src/clipboard.js';import _0xa52738 from'./importwordcommand.js';export default class e extends _0x2b2913{static get[_0x4904('0x5')](){return _0x4904('0x2');}static get['requires'](){return[_0x30d68d,_0x36c2cd,_0x4904('0x1')];}constructor(_0x43e0d1){super(_0x43e0d1),this[_0x4904('0x8')]=null;}async['init'](){const _0x408ad8=this[_0x4904('0xd')];_0x408ad8['config'][_0x4904('0x4')](_0x4904('0x0'),{'converterUrl':'https://docx-converter.cke-cs.com/v2/convert/docx-html','tokenUrl':(_0x408ad8[_0x4904('0xa')]['get'](_0x4904('0xb'))||{})['tokenUrl'],'defaultStyles':!0x1}),_0x408ad8[_0x4904('0x7')][_0x4904('0x3')](_0x4904('0x0'),new _0xa52738(_0x408ad8));const {tokenUrl:_0x10b51a}=_0x408ad8[_0x4904('0xa')]['get'](_0x4904('0x0'));if(_0x10b51a){const {tokenUrl:_0x44b61d}=_0x408ad8[_0x4904('0xa')][_0x4904('0xe')](_0x4904('0xb'))||{};this[_0x4904('0x8')]=_0x10b51a===_0x44b61d?_0x408ad8[_0x4904('0xc')][_0x4904('0xe')]('CloudServices')[_0x4904('0x6')]:await _0x408ad8[_0x4904('0xc')][_0x4904('0xe')](_0x4904('0x1'))['registerTokenUrl'](_0x10b51a);}}[_0x4904('0x9')](){return this[_0x4904('0x8')];}}
|
package/src/importwordui.d.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* @module import-word/importwordui
|
|
7
7
|
* @publicApi
|
|
8
8
|
*/
|
|
9
|
-
import { Plugin } from 'ckeditor5/src/core';
|
|
9
|
+
import { Plugin } from 'ckeditor5/src/core.js';
|
|
10
10
|
import '../theme/importword.css';
|
|
11
11
|
/**
|
|
12
12
|
* The ImportWordUI plugin. It introduces the `'importWord'` toolbar button.
|
package/src/importwordui.js
CHANGED
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
import{Plugin as
|
|
23
|
+
import{Plugin as _0x8b90e6}from'ckeditor5/src/core.js';import{View as _0x4a098b}from'ckeditor5/src/ui.js';import{FileDialogButtonView as _0xfa69b2}from'ckeditor5/src/upload.js';import _0x27102f from'../theme/icons/importword.svg';import'../theme/importword.css';export default class o extends _0x8b90e6{static get['pluginName'](){return'ImportWordUI';}['init'](){const _0x467fe5=this['editor'],t=_0x467fe5['t'];_0x467fe5['ui']['componentFactory']['add']('importWord',_0x56324b=>{const _0x3de150=_0x467fe5['commands']['get']('importWord'),_0x18818e=new _0xfa69b2(_0x56324b);_0x18818e['set']({'acceptedType':'application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.openxmlformats-officedocument.wordprocessingml.template'}),_0x18818e['buttonView']['set']({'label':t('Import\x20from\x20Word'),'icon':_0x27102f,'tooltip':!0x0}),_0x18818e['buttonView']['bind']('isOn','isEnabled')['to'](_0x3de150,'isBusy','isEnabled'),_0x18818e['buttonView']['extendTemplate']({'attributes':{'class':[_0x18818e['buttonView']['bindTemplate']['if']('isOn','ck-importword_status-pending')]}});const _0x17ef10=new _0x4a098b();return _0x17ef10['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-importword__spinner-container']},'children':[{'tag':'span','attributes':{'class':['ck','ck-importword__spinner']}}]}),_0x18818e['buttonView']['children']['add'](_0x17ef10),_0x18818e['on']('done',(_0xb982af,_0x2c5b63)=>{_0x467fe5['execute']('importWord',_0x2c5b63[0x0],{}),_0x467fe5['editing']['view']['focus']();}),_0x18818e;});}}
|
package/src/index.d.ts
CHANGED
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* @module import-word
|
|
7
7
|
*/
|
|
8
|
-
export { default as ImportWord, type ImportWordConfig } from './importword';
|
|
9
|
-
export { default as ImportWordEditing } from './importwordediting';
|
|
10
|
-
export { default as ImportWordUI } from './importwordui';
|
|
11
|
-
export type { default as ImportWordCommand } from './importwordcommand';
|
|
12
|
-
import './augmentation';
|
|
8
|
+
export { default as ImportWord, type ImportWordConfig } from './importword.js';
|
|
9
|
+
export { default as ImportWordEditing } from './importwordediting.js';
|
|
10
|
+
export { default as ImportWordUI } from './importwordui.js';
|
|
11
|
+
export type { default as ImportWordCommand } from './importwordcommand.js';
|
|
12
|
+
import './augmentation.js';
|
package/src/index.js
CHANGED
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
export{default as ImportWord}from'./importword';export{default as ImportWordEditing}from'./importwordediting';export{default as ImportWordUI}from'./importwordui';import'./augmentation';
|
|
23
|
+
export{default as ImportWord}from'./importword.js';export{default as ImportWordEditing}from'./importwordediting.js';export{default as ImportWordUI}from'./importwordui.js';import'./augmentation.js';
|