8
0

inline-editor.js 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /**
  2. * @license Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
  3. * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
  4. */
  5. /* globals console, window, document */
  6. import InlineEditor from '@ckeditor/ckeditor5-build-inline/src/ckeditor';
  7. import { CS_CONFIG } from '@ckeditor/ckeditor5-cloud-services/tests/_utils/cloud-services-config';
  8. const inlineInjectElements = document.querySelectorAll( '#snippet-inline-editor [data-inline-inject]' );
  9. Array.from( inlineInjectElements ).forEach( inlineElement => {
  10. const config = {
  11. image: {
  12. toolbar: [ 'imageTextAlternative', '|', 'imageStyle:alignLeft', 'imageStyle:full', 'imageStyle:alignRight' ],
  13. styles: [ 'full', 'alignLeft', 'alignRight' ]
  14. },
  15. toolbar: {
  16. viewportTopOffset: window.getViewportTopOffsetConfig()
  17. },
  18. cloudServices: CS_CONFIG
  19. };
  20. if ( inlineElement.tagName.toLowerCase() == 'header' ) {
  21. config.removePlugins = [
  22. 'Blockquote',
  23. 'Image',
  24. 'ImageCaption',
  25. 'ImageStyle',
  26. 'ImageToolbar',
  27. 'ImageUpload',
  28. 'List',
  29. 'EasyImage',
  30. 'CKFinderUploadAdapter'
  31. ];
  32. config.toolbar.items = [ 'heading', '|', 'bold', 'italic', 'link' ];
  33. }
  34. InlineEditor
  35. .create( inlineElement, config )
  36. .then( editor => {
  37. window.editor = editor;
  38. } )
  39. .catch( err => {
  40. console.error( err );
  41. } );
  42. } );