ckeditor_wave 1.0.1 → 2.0.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.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/README.md +5 -2
- data/app/assets/javascripts/ckeditor_wave.js +1 -1
- data/app/assets/javascripts/ckeditor_wave_src.js +17 -7
- data/app/models/ckeditor_wave/ck_image.rb +1 -1
- data/lib/ckeditor_wave/version.rb +1 -1
- metadata +3 -4
- data/.DS_Store +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8206aa6860a27f3e478e6e0d1450b50e279b79a84e7fc104f4bbfce4aa25919c
|
|
4
|
+
data.tar.gz: 342fc1254f476c082913dfe3dc0c4839cde37db2fc84445fbdfb027a71919eb8
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8b13a5c0b24cf4c169bdc9b8ea96b0aa07f77df5e26e0587227af04f9643fab3d025854e603c70aa8d11e286b68fa4877dabb6e718bd68e7e71245953614de92
|
|
7
|
+
data.tar.gz: 9f3287fd2dc39537f28a86898ddedae8ed4b0d59392870d3f544707373b041eb7b93b4f73e97f60b07985c56640a109cca0e4421ab4788b32bd58da95a45f70a
|
data/.gitignore
CHANGED
data/README.md
CHANGED
|
@@ -7,7 +7,7 @@ This gem integrates [CKEditor 5](https://docs.ckeditor.com/ckeditor5/) with [Car
|
|
|
7
7
|
Add this line to your application's Gemfile:
|
|
8
8
|
|
|
9
9
|
```
|
|
10
|
-
gem 'ckeditor_wave', '~>
|
|
10
|
+
gem 'ckeditor_wave', '~> 2.0'
|
|
11
11
|
```
|
|
12
12
|
|
|
13
13
|
And then execute:
|
|
@@ -36,8 +36,11 @@ mount CkeditorWave::Engine => 'ckeditor_wave'
|
|
|
36
36
|
```
|
|
37
37
|
|
|
38
38
|
|
|
39
|
-
To attach [CKEditor 5](https://docs.ckeditor.com/ckeditor5/) to
|
|
39
|
+
To attach [CKEditor 5](https://docs.ckeditor.com/ckeditor5/) to HTML forms, call the initiateCkeditor() function inside your application.js by giving it one or more CSS selectors as arguments. For example:
|
|
40
40
|
|
|
41
|
+
```
|
|
42
|
+
initiateCkeditor('#editor1', '#editor2', '#editor3')
|
|
43
|
+
```
|
|
41
44
|
|
|
42
45
|
## Dependencies
|
|
43
46
|
* [CKEditor 5](https://docs.ckeditor.com/ckeditor5/) - classic editor build 10.0.1
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var _createClass=function(){function a(b,c){for(var e,d=0;d<c.length;d++)e=c[d],e.enumerable=e.enumerable||!1,e.configurable=!0,'value'in e&&(e.writable=!0),Object.defineProperty(b,e.key,e)}return function(b,c,d){return c&&a(b.prototype,c),d&&a(b,d),b}}();function _classCallCheck(a,b){if(!(a instanceof b))throw new TypeError('Cannot call a class as a function')}document.addEventListener('DOMContentLoaded',function(){var a=document.querySelector(
|
|
1
|
+
'use strict';var _createClass=function(){function a(b,c){for(var e,d=0;d<c.length;d++)e=c[d],e.enumerable=e.enumerable||!1,e.configurable=!0,'value'in e&&(e.writable=!0),Object.defineProperty(b,e.key,e)}return function(b,c,d){return c&&a(b.prototype,c),d&&a(b,d),b}}();function _classCallCheck(a,b){if(!(a instanceof b))throw new TypeError('Cannot call a class as a function')}function initiateCkeditor(){var a=Array.from(arguments);document.addEventListener('DOMContentLoaded',function(){a.forEach(function(b){newEditor(b)})})}function newEditor(a){var a=document.querySelector(a);if(null===a)return!1;try{ClassicEditor.create(a).then(function(b){b.plugins.get('FileRepository').createUploadAdapter=function(c){return new UploadAdapter(c)},document.querySelector('.ck-content').addEventListener('DOMNodeRemoved',function(c){var d=c.target,e=d.className.split(' ');e.includes('image')&&server.destroy(id(d.children[0]))})}).catch(function(b){console.error(b)})}catch(b){console.log(b),console.log('Is ckeditor.js included?','https://ckeditor.com/ckeditor-5/download/')}}var UploadAdapter=function(){function a(b){_classCallCheck(this,a),this.loader=b}return _createClass(a,[{key:'upload',value:function(){return server.upload(this.loader.file)}}]),a}(),server={upload:upload,destroy:destroy};function upload(a){return new Promise(function(b,c){var d=new XMLHttpRequest,e=new FormData;d.onreadystatechange=function(){4===d.readyState&&200!==d.status&&c('Image upload failed'),4===d.readyState&&200===d.status&&(b({default:d.responseText}),console.log('Image upload successful'))},e.set('ck_image',a),d.open('POST','/ckeditor_wave/ck_images'),d.send(e)})}function destroy(a){var b=new XMLHttpRequest,c=new FormData;b.onreadystatechange=function(){4===b.readyState&&200!==b.status&&console.log('Image deletion failed'),4===b.readyState&&200===b.status&&console.log(b.responseText)},c.set('method','delete'),b.open('DELETE','/ckeditor_wave/ck_images/'+a),b.send(c)}function id(a){var b=a.src.match(/[^\/]*.$/g).toString();return b.match(/[^.]*/)}
|
|
@@ -1,15 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
function initiateCkeditor() {
|
|
2
|
+
var editors = Array.from(arguments);
|
|
3
|
+
document.addEventListener('DOMContentLoaded', () => {
|
|
4
|
+
editors.forEach(function(editor){
|
|
5
|
+
newEditor(editor)
|
|
6
|
+
});
|
|
7
|
+
});
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
function newEditor(editor) {
|
|
11
|
+
var editor = document.querySelector(editor);
|
|
12
|
+
|
|
13
|
+
if (editor === null) return false
|
|
5
14
|
try{
|
|
6
15
|
ClassicEditor
|
|
7
|
-
.create(
|
|
16
|
+
.create(editor)
|
|
8
17
|
.then(editor => {
|
|
9
18
|
editor.plugins.get('FileRepository').createUploadAdapter = (loader) => {
|
|
10
19
|
return new UploadAdapter(loader);
|
|
11
20
|
};
|
|
12
|
-
document.querySelector('.ck-content').addEventListener(
|
|
21
|
+
document.querySelector('.ck-content').addEventListener(
|
|
22
|
+
'DOMNodeRemoved', (event) => {
|
|
13
23
|
var element = event.target;
|
|
14
24
|
var classes = element.className.split(' ');
|
|
15
25
|
if (classes.includes('image'))
|
|
@@ -23,7 +33,7 @@ document.addEventListener('DOMContentLoaded', () => {
|
|
|
23
33
|
console.log(error);
|
|
24
34
|
console.log('Is ckeditor.js included?', 'https://ckeditor.com/ckeditor-5/download/');
|
|
25
35
|
}
|
|
26
|
-
}
|
|
36
|
+
}
|
|
27
37
|
|
|
28
38
|
class UploadAdapter {
|
|
29
39
|
constructor(loader) {
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: ckeditor_wave
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 2.0.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Evgeni Radev
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2018-06-
|
|
11
|
+
date: 2018-06-18 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -59,7 +59,6 @@ executables: []
|
|
|
59
59
|
extensions: []
|
|
60
60
|
extra_rdoc_files: []
|
|
61
61
|
files:
|
|
62
|
-
- ".DS_Store"
|
|
63
62
|
- ".gitignore"
|
|
64
63
|
- Gemfile
|
|
65
64
|
- LICENSE
|
|
@@ -99,7 +98,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
99
98
|
version: '0'
|
|
100
99
|
requirements: []
|
|
101
100
|
rubyforge_project:
|
|
102
|
-
rubygems_version: 2.7.
|
|
101
|
+
rubygems_version: 2.7.6
|
|
103
102
|
signing_key:
|
|
104
103
|
specification_version: 4
|
|
105
104
|
summary: This gem integrates CKEditor 5 with CarrierWave to allow image upload.
|
data/.DS_Store
DELETED
|
Binary file
|