@ckeditor/ckeditor5-easy-image 27.1.0 → 29.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE.md CHANGED
@@ -1,7 +1,7 @@
1
1
  Software License Agreement
2
2
  ==========================
3
3
 
4
- **CKEditor 5 Easy Image** – https://github.com/ckeditor/ckeditor5-easy-image <br>
4
+ **CKEditor 5 Easy Image feature** – https://github.com/ckeditor/ckeditor5-easy-image <br>
5
5
  Copyright (c) 2003-2021, [CKSource](http://cksource.com) Frederico Knabben. All rights reserved.
6
6
 
7
7
  Licensed under the terms of [GNU General Public License Version 2 or later](http://www.gnu.org/licenses/gpl.html).
package/README.md CHANGED
@@ -1,19 +1,23 @@
1
- CKEditor 5 Easy Image with Cloud Services
1
+ CKEditor 5 Easy Image feature with Cloud Services
2
2
  =========================================
3
3
 
4
4
  [![npm version](https://badge.fury.io/js/%40ckeditor%2Fckeditor5-easy-image.svg)](https://www.npmjs.com/package/@ckeditor/ckeditor5-easy-image)
5
- [![Dependency Status](https://david-dm.org/ckeditor/ckeditor5-easy-image/status.svg)](https://david-dm.org/ckeditor/ckeditor5-easy-image)
6
- [![devDependency Status](https://david-dm.org/ckeditor/ckeditor5-easy-image/dev-status.svg)](https://david-dm.org/ckeditor/ckeditor5-easy-image?type=dev)
5
+ [![Coverage Status](https://coveralls.io/repos/github/ckeditor/ckeditor5/badge.svg?branch=master)](https://coveralls.io/github/ckeditor/ckeditor5?branch=master)
6
+ [![Build Status](https://travis-ci.com/ckeditor/ckeditor5.svg?branch=master)](https://travis-ci.com/ckeditor/ckeditor5)
7
7
 
8
8
  This package implements the [Easy Image](https://ckeditor.com/docs/ckeditor5/latest/features/easy-image.html) feature for CKEditor 5.
9
9
 
10
10
  Easy Image lets you easily insert images which are automatically rescaled, optimized, responsive and delivered through a blazing-fast CDN. It integrates automatically with the [CKEditor Cloud Services](https://ckeditor.com/ckeditor-cloud-services/).
11
11
 
12
+ ## Demo
13
+
14
+ Check out the [demo in the Easy Image feature guide](https://ckeditor.com/docs/ckeditor5/latest/features/images/image-upload/easy-image.html#demo).
15
+
12
16
  ## Documentation
13
17
 
14
- See the ["Easy Image integration" guide](https://ckeditor.com/docs/ckeditor5/latest/features/easy-image.html) and the [plugin documentation](https://ckeditor.com/docs/ckeditor5/latest/api/easy-image.html) to learn how to enable the integration.
18
+ See the [Easy Image integration](https://ckeditor.com/docs/ckeditor5/latest/features/images/image-upload/easy-image.html) guide and the [plugin documentation](https://ckeditor.com/docs/ckeditor5/latest/api/easy-image.html) to learn how to enable the integration.
15
19
 
16
- Check out the [comprehensive "Image upload" guide](https://ckeditor.com/docs/ckeditor5/latest/features/image-upload.html) to learn about other ways to upload images into CKEditor 5.
20
+ Check out the comprehensive [image upload](https://ckeditor.com/docs/ckeditor5/latest/features/images/image-upload/image-upload.html) guide to learn about other ways to upload images into CKEditor 5.
17
21
 
18
22
  ## License
19
23
 
@@ -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.easyImage=function(e){var t={};function r(o){if(t[o])return t[o].exports;var a=t[o]={i:o,l:!1,exports:{}};return e[o].call(a.exports,a,a.exports,r),a.l=!0,a.exports}return r.m=e,r.c=t,r.d=function(e,t,o){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var a in e)r.d(o,a,function(t){return e[t]}.bind(null,a));return o},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=3)}([function(e,t,r){e.exports=r(2)("./src/core.js")},function(e,t,r){e.exports=r(2)("./src/upload.js")},function(e,t){e.exports=CKEditor5.dll},function(e,t,r){"use strict";r.r(t);var o=r(0),a=r(1);class n extends o.Plugin{static get pluginName(){return"CloudServicesUploadAdapter"}static get requires(){return["CloudServices",a.FileRepository]}init(){const e=this.editor,t=e.plugins.get("CloudServices"),r=t.token,o=t.uploadUrl;r&&(this._uploadGateway=e.plugins.get("CloudServicesCore").createUploadGateway(r,o),e.plugins.get(a.FileRepository).createUploadAdapter=e=>new i(this._uploadGateway,e))}}class i{constructor(e,t){this.uploadGateway=e,this.loader=t}upload(){return this.loader.file.then(e=>(this.fileUploader=this.uploadGateway.upload(e),this.fileUploader.on("progress",(e,t)=>{this.loader.uploadTotal=t.total,this.loader.uploaded=t.uploaded}),this.fileUploader.send()))}abort(){this.fileUploader.abort()}}class l extends o.Plugin{static get requires(){return[n,"Image","ImageUpload"]}static get pluginName(){return"EasyImage"}}t.default={EasyImage:l,CloudServicesUploadAdapter:n}}]).default;
5
+ window.CKEditor5=window.CKEditor5||{},window.CKEditor5.easyImage=function(e){var t={};function r(o){if(t[o])return t[o].exports;var i=t[o]={i:o,l:!1,exports:{}};return e[o].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,o){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)r.d(o,i,function(t){return e[t]}.bind(null,i));return o},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=4)}([function(e,t,r){e.exports=r(1)("./src/core.js")},function(e,t){e.exports=CKEditor5.dll},function(e,t,r){e.exports=r(1)("./src/upload.js")},function(e,t,r){e.exports=r(1)("./src/utils.js")},function(e,t,r){"use strict";r.r(t),r.d(t,"EasyImage",(function(){return u})),r.d(t,"CloudServicesUploadAdapter",(function(){return a}));var o=r(0),i=r(3),n=r(2);class a extends o.Plugin{static get pluginName(){return"CloudServicesUploadAdapter"}static get requires(){return["CloudServices",n.FileRepository]}init(){const e=this.editor,t=e.plugins.get("CloudServices"),r=t.token,o=t.uploadUrl;r&&(this._uploadGateway=e.plugins.get("CloudServicesCore").createUploadGateway(r,o),e.plugins.get(n.FileRepository).createUploadAdapter=e=>new l(this._uploadGateway,e))}}class l{constructor(e,t){this.uploadGateway=e,this.loader=t}upload(){return this.loader.file.then(e=>(this.fileUploader=this.uploadGateway.upload(e),this.fileUploader.on("progress",(e,t)=>{this.loader.uploadTotal=t.total,this.loader.uploaded=t.uploaded}),this.fileUploader.send()))}abort(){this.fileUploader.abort()}}class u extends o.Plugin{static get requires(){return[a,"ImageUpload"]}init(){const e=this.editor;e.plugins.has("ImageBlockEditing")||e.plugins.has("ImageInlineEditing")||Object(i.logWarning)("easy-image-image-feature-missing",e)}static get pluginName(){return"EasyImage"}}}]);
@@ -0,0 +1,16 @@
1
+ {
2
+ "plugins": [
3
+ {
4
+ "name": "Easy Image",
5
+ "className": "EasyImage",
6
+ "description": "An image upload tool with virtually zero server setup. The images are automatically rescaled, optimized, responsive and delivered through a CDN.",
7
+ "docs": "features/images/image-upload/easy-image.html",
8
+ "path": "src/easyimage.js",
9
+ "requires": [
10
+ "CloudServices",
11
+ "Image",
12
+ "ImageUpload"
13
+ ]
14
+ }
15
+ ]
16
+ }
package/package.json CHANGED
@@ -1,29 +1,30 @@
1
1
  {
2
2
  "name": "@ckeditor/ckeditor5-easy-image",
3
- "version": "27.1.0",
3
+ "version": "29.2.0",
4
4
  "description": "Easy Image feature for CKEditor 5.",
5
5
  "keywords": [
6
6
  "ckeditor",
7
7
  "ckeditor5",
8
8
  "ckeditor 5",
9
9
  "ckeditor5-feature",
10
- "ckeditor5-plugin"
10
+ "ckeditor5-plugin",
11
+ "ckeditor5-dll"
11
12
  ],
12
13
  "main": "src/index.js",
13
14
  "dependencies": {
14
- "ckeditor5": "^27.1.0"
15
+ "ckeditor5": "^29.2.0"
15
16
  },
16
17
  "devDependencies": {
17
- "@ckeditor/ckeditor5-clipboard": "^27.1.0",
18
- "@ckeditor/ckeditor5-cloud-services": "^27.1.0",
19
- "@ckeditor/ckeditor5-core": "^27.1.0",
20
- "@ckeditor/ckeditor5-dev-utils": "^24.0.0",
21
- "@ckeditor/ckeditor5-editor-classic": "^27.1.0",
22
- "@ckeditor/ckeditor5-image": "^27.1.0",
23
- "@ckeditor/ckeditor5-paragraph": "^27.1.0",
24
- "@ckeditor/ckeditor5-theme-lark": "^27.1.0",
25
- "@ckeditor/ckeditor5-upload": "^27.1.0",
26
- "@ckeditor/ckeditor5-utils": "^27.1.0",
18
+ "@ckeditor/ckeditor5-clipboard": "^29.2.0",
19
+ "@ckeditor/ckeditor5-cloud-services": "^29.2.0",
20
+ "@ckeditor/ckeditor5-core": "^29.2.0",
21
+ "@ckeditor/ckeditor5-dev-utils": "^25.4.0",
22
+ "@ckeditor/ckeditor5-editor-classic": "^29.2.0",
23
+ "@ckeditor/ckeditor5-image": "^29.2.0",
24
+ "@ckeditor/ckeditor5-paragraph": "^29.2.0",
25
+ "@ckeditor/ckeditor5-theme-lark": "^29.2.0",
26
+ "@ckeditor/ckeditor5-upload": "^29.2.0",
27
+ "@ckeditor/ckeditor5-utils": "^29.2.0",
27
28
  "webpack": "^4.43.0",
28
29
  "webpack-cli": "^3.3.11"
29
30
  },
@@ -44,7 +45,8 @@
44
45
  "lang",
45
46
  "src",
46
47
  "theme",
47
- "build"
48
+ "build",
49
+ "ckeditor5-metadata.json"
48
50
  ],
49
51
  "scripts": {
50
52
  "dll:build": "webpack"
package/src/easyimage.js CHANGED
@@ -8,6 +8,7 @@
8
8
  */
9
9
 
10
10
  import { Plugin } from 'ckeditor5/src/core';
11
+ import { logWarning } from 'ckeditor5/src/utils';
11
12
 
12
13
  import CloudServicesUploadAdapter from './cloudservicesuploadadapter';
13
14
 
@@ -25,10 +26,10 @@ import CloudServicesUploadAdapter from './cloudservicesuploadadapter';
25
26
  * * {@link module:image/image~Image},
26
27
  * * {@link module:image/imageupload~ImageUpload},
27
28
  *
28
- * See the {@glink features/image-upload/easy-image "Easy Image integration" guide} to learn how to configure
29
+ * See the {@glink features/images/image-upload/easy-image "Easy Image integration" guide} to learn how to configure
29
30
  * and use this feature.
30
31
  *
31
- * Check out the {@glink features/image-upload/image-upload comprehensive "Image upload" guide} to learn about
32
+ * Check out the {@glink features/images/image-upload/image-upload comprehensive "Image upload" guide} to learn about
32
33
  * other ways to upload images into CKEditor 5.
33
34
  *
34
35
  * **Note**: After enabling the Easy Image plugin you need to configure the
@@ -42,7 +43,30 @@ export default class EasyImage extends Plugin {
42
43
  * @inheritDoc
43
44
  */
44
45
  static get requires() {
45
- return [ CloudServicesUploadAdapter, 'Image', 'ImageUpload' ];
46
+ return [ CloudServicesUploadAdapter, 'ImageUpload' ];
47
+ }
48
+
49
+ /**
50
+ * @inheritDoc
51
+ */
52
+ init() {
53
+ const editor = this.editor;
54
+
55
+ if ( !editor.plugins.has( 'ImageBlockEditing' ) && !editor.plugins.has( 'ImageInlineEditing' ) ) {
56
+ /**
57
+ * The Easy Image feature requires one of the following plugins to be loaded to work correctly:
58
+ *
59
+ * * {@link module:image/imageblock~ImageBlock},
60
+ * * {@link module:image/imageinline~ImageInline},
61
+ * * {@link module:image/image~Image} (loads both `ImageBlock` and `ImageInline`)
62
+ *
63
+ * Please make sure your editor configuration is correct.
64
+ *
65
+ * @error easy-image-image-feature-missing
66
+ * @param {module:core/editor/editor~Editor} editor
67
+ */
68
+ logWarning( 'easy-image-image-feature-missing', editor );
69
+ }
46
70
  }
47
71
 
48
72
  /**
package/src/index.js CHANGED
@@ -7,10 +7,5 @@
7
7
  * @module easy-image
8
8
  */
9
9
 
10
- import EasyImage from './easyimage';
11
- import CloudServicesUploadAdapter from './cloudservicesuploadadapter';
12
-
13
- export default {
14
- EasyImage,
15
- CloudServicesUploadAdapter
16
- };
10
+ export { default as EasyImage } from './easyimage';
11
+ export { default as CloudServicesUploadAdapter } from './cloudservicesuploadadapter';
@@ -1 +0,0 @@
1
- {"version":3,"sources":["webpack://CKEditor5.easyImage/webpack/bootstrap","webpack://CKEditor5.easyImage/./src/cloudservicesuploadadapter.js","webpack://CKEditor5.easyImage/./src/easyimage.js","webpack://CKEditor5.easyImage/./src/index.js","webpack://CKEditor5.easyImage/delegated ./cloud-services-core.js from dll-reference CKEditor5.dll","webpack://CKEditor5.easyImage/delegated ./core.js from dll-reference CKEditor5.dll","webpack://CKEditor5.easyImage/delegated ./upload.js from dll-reference CKEditor5.dll","webpack://CKEditor5.easyImage/external \"CKEditor5.dll\""],"names":[],"mappings":";;;;;;QAAA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;;;;;;;AClFA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAE4C;AACU;AACY;;AAElE;AACA;AACA;AACA,6BAA6B,4CAA4C;AACzE;AACA;AACA,IAAI,qFAAqF;AACzF;AACA;AACA;AACe,yCAAyC,yDAAM;AAC9D;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,4BAA4B,mEAAc;AAC1C;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA,sBAAsB,mEAAc;AACpC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,4CAA4C,+EAAa;;;;;;;;;;;;;AC3FzD;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAE4C;;AAE0B;;AAEtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,8EAA8E;AACpF;AACA;AACA;AACA,MAAM,+BAA+B;AACrC,MAAM,2CAA2C;AACjD;AACA,YAAY,uEAAuE;AACnF;AACA;AACA,kBAAkB,6EAA6E;AAC/F;AACA;AACA;AACA;AACA,wBAAwB,qFAAqF;AAC7G;AACA;AACA;AACe,wBAAwB,yDAAM;AAC7C;AACA;AACA;AACA;AACA,WAAW,mEAA0B;AACrC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACrDA;AAAA;AAAA;AAAA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEoC;AACkC;;AAEvD;AACf,CAAC,6DAAS;AACV,CAAC,+FAA0B;AAC3B,CAAC,EAAC;;;;;;;;;;;;ACfF,yI;;;;;;;;;;;ACAA,0H;;;;;;;;;;;ACAA,4H;;;;;;;;;;;ACAA,+B","file":"easy-image.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./src/index.js\");\n","/**\n * @license Copyright (c) 2003-2021, CKSource - Frederico Knabben. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n* @module easy-image/cloudservicesuploadadapter\n*/\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport { FileRepository } from 'ckeditor5/src/upload';\nimport { UploadGateway } from 'ckeditor5/src/cloud-services-core';\n\n/**\n * A plugin that enables upload to [CKEditor Cloud Services](https://ckeditor.com/ckeditor-cloud-services/).\n *\n * It is mainly used by the {@link module:easy-image/easyimage~EasyImage} feature.\n *\n * After enabling this adapter you need to configure the CKEditor Cloud Services integration through\n * {@link module:cloud-services/cloudservices~CloudServicesConfig `config.cloudServices`}.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class CloudServicesUploadAdapter extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'CloudServicesUploadAdapter';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get requires() {\n\t\treturn [ 'CloudServices', FileRepository ];\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst editor = this.editor;\n\n\t\tconst cloudServices = editor.plugins.get( 'CloudServices' );\n\n\t\tconst token = cloudServices.token;\n\t\tconst uploadUrl = cloudServices.uploadUrl;\n\n\t\tif ( !token ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._uploadGateway = new CloudServicesUploadAdapter._UploadGateway( token, uploadUrl );\n\n\t\teditor.plugins.get( FileRepository ).createUploadAdapter = loader => {\n\t\t\treturn new Adapter( this._uploadGateway, loader );\n\t\t};\n\t}\n}\n\n/**\n * @private\n */\nclass Adapter {\n\tconstructor( uploadGateway, loader ) {\n\t\tthis.uploadGateway = uploadGateway;\n\n\t\tthis.loader = loader;\n\t}\n\n\tupload() {\n\t\treturn this.loader.file.then( file => {\n\t\t\tthis.fileUploader = this.uploadGateway.upload( file );\n\n\t\t\tthis.fileUploader.on( 'progress', ( evt, data ) => {\n\t\t\t\tthis.loader.uploadTotal = data.total;\n\t\t\t\tthis.loader.uploaded = data.uploaded;\n\t\t\t} );\n\n\t\t\treturn this.fileUploader.send();\n\t\t} );\n\t}\n\n\tabort() {\n\t\tthis.fileUploader.abort();\n\t}\n}\n\n// Store the API in static property to easily overwrite it in tests.\n// Too bad dependency injection does not work in Webpack + ES 6 (const) + Babel.\nCloudServicesUploadAdapter._UploadGateway = UploadGateway;\n","/**\n * @license Copyright (c) 2003-2021, CKSource - Frederico Knabben. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * @module easy-image/easyimage\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\n\nimport CloudServicesUploadAdapter from './cloudservicesuploadadapter';\n\n/**\n * The Easy Image feature, which makes the image upload in CKEditor 5 possible with virtually zero\n * server setup. A part of the [CKEditor Cloud Services](https://ckeditor.com/ckeditor-cloud-services/)\n * family.\n *\n * This is a \"glue\" plugin which enables:\n *\n * * {@link module:easy-image/cloudservicesuploadadapter~CloudServicesUploadAdapter}.\n *\n * This plugin requires plugin to be present in the editor configuration:\n *\n * * {@link module:image/image~Image},\n * * {@link module:image/imageupload~ImageUpload},\n *\n * See the {@glink features/image-upload/easy-image \"Easy Image integration\" guide} to learn how to configure\n * and use this feature.\n *\n * Check out the {@glink features/image-upload/image-upload comprehensive \"Image upload\" guide} to learn about\n * other ways to upload images into CKEditor 5.\n *\n * **Note**: After enabling the Easy Image plugin you need to configure the\n * [CKEditor Cloud Services](https://ckeditor.com/ckeditor-cloud-services/)\n * integration through {@link module:cloud-services/cloudservices~CloudServicesConfig `config.cloudServices`}.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class EasyImage extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get requires() {\n\t\treturn [ CloudServicesUploadAdapter, 'Image', 'ImageUpload' ];\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'EasyImage';\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2021, CKSource - Frederico Knabben. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * @module easy-image\n */\n\nimport EasyImage from './easyimage';\nimport CloudServicesUploadAdapter from './cloudservicesuploadadapter';\n\nexport default {\n\tEasyImage,\n\tCloudServicesUploadAdapter\n};\n","module.exports = (__webpack_require__(/*! dll-reference CKEditor5.dll */ \"dll-reference CKEditor5.dll\"))(\"./src/cloud-services-core.js\");","module.exports = (__webpack_require__(/*! dll-reference CKEditor5.dll */ \"dll-reference CKEditor5.dll\"))(\"./src/core.js\");","module.exports = (__webpack_require__(/*! dll-reference CKEditor5.dll */ \"dll-reference CKEditor5.dll\"))(\"./src/upload.js\");","module.exports = CKEditor5.dll;"],"sourceRoot":""}