ckeditor.js 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  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. // The editor creator to use.
  6. import DecoupledEditorBase from '@ckeditor/ckeditor5-editor-decoupled/src/decouplededitor';
  7. import Essentials from '@ckeditor/ckeditor5-essentials/src/essentials';
  8. import Alignment from '@ckeditor/ckeditor5-alignment/src/alignment';
  9. import FontSize from '@ckeditor/ckeditor5-font/src/fontsize';
  10. import FontFamily from '@ckeditor/ckeditor5-font/src/fontfamily';
  11. import Highlight from '@ckeditor/ckeditor5-highlight/src/highlight';
  12. import UploadAdapter from '@ckeditor/ckeditor5-adapter-ckfinder/src/uploadadapter';
  13. import Autoformat from '@ckeditor/ckeditor5-autoformat/src/autoformat';
  14. import Bold from '@ckeditor/ckeditor5-basic-styles/src/bold';
  15. import Italic from '@ckeditor/ckeditor5-basic-styles/src/italic';
  16. import Strikethrough from '@ckeditor/ckeditor5-basic-styles/src/strikethrough';
  17. import Underline from '@ckeditor/ckeditor5-basic-styles/src/underline';
  18. import BlockQuote from '@ckeditor/ckeditor5-block-quote/src/blockquote';
  19. import CKFinder from '@ckeditor/ckeditor5-ckfinder/src/ckfinder';
  20. import EasyImage from '@ckeditor/ckeditor5-easy-image/src/easyimage';
  21. import Heading from '@ckeditor/ckeditor5-heading/src/heading';
  22. import Image from '@ckeditor/ckeditor5-image/src/image';
  23. import ImageCaption from '@ckeditor/ckeditor5-image/src/imagecaption';
  24. import ImageStyle from '@ckeditor/ckeditor5-image/src/imagestyle';
  25. import ImageToolbar from '@ckeditor/ckeditor5-image/src/imagetoolbar';
  26. import ImageUpload from '@ckeditor/ckeditor5-image/src/imageupload';
  27. import Link from '@ckeditor/ckeditor5-link/src/link';
  28. import List from '@ckeditor/ckeditor5-list/src/list';
  29. import MediaEmbed from '@ckeditor/ckeditor5-media-embed/src/mediaembed';
  30. import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph';
  31. import PasteFromOffice from '@ckeditor/ckeditor5-paste-from-office/src/pastefromoffice';
  32. import Table from '@ckeditor/ckeditor5-table/src/table';
  33. import TableToolbar from '@ckeditor/ckeditor5-table/src/tabletoolbar';
  34. export default class DecoupledEditor extends DecoupledEditorBase {}
  35. // Plugins to include in the build.
  36. DecoupledEditor.builtinPlugins = [
  37. Essentials,
  38. Alignment,
  39. FontSize,
  40. FontFamily,
  41. Highlight,
  42. UploadAdapter,
  43. Autoformat,
  44. Bold,
  45. Italic,
  46. Strikethrough,
  47. Underline,
  48. BlockQuote,
  49. CKFinder,
  50. EasyImage,
  51. Heading,
  52. Image,
  53. ImageCaption,
  54. ImageStyle,
  55. ImageToolbar,
  56. ImageUpload,
  57. Link,
  58. List,
  59. MediaEmbed,
  60. Paragraph,
  61. PasteFromOffice,
  62. Table,
  63. TableToolbar
  64. ];
  65. // Editor configuration.
  66. DecoupledEditor.defaultConfig = {
  67. toolbar: {
  68. items: [
  69. 'heading',
  70. '|',
  71. 'fontsize',
  72. 'fontfamily',
  73. '|',
  74. 'bold',
  75. 'italic',
  76. 'underline',
  77. 'strikethrough',
  78. 'highlight',
  79. '|',
  80. 'alignment',
  81. '|',
  82. 'numberedList',
  83. 'bulletedList',
  84. '|',
  85. 'link',
  86. 'blockquote',
  87. 'imageUpload',
  88. 'insertTable',
  89. 'mediaEmbed',
  90. '|',
  91. 'undo',
  92. 'redo'
  93. ]
  94. },
  95. image: {
  96. styles: [
  97. 'full',
  98. 'alignLeft',
  99. 'alignRight'
  100. ],
  101. toolbar: [
  102. 'imageStyle:alignLeft',
  103. 'imageStyle:full',
  104. 'imageStyle:alignRight',
  105. '|',
  106. 'imageTextAlternative'
  107. ]
  108. },
  109. table: {
  110. contentToolbar: [
  111. 'tableColumn',
  112. 'tableRow',
  113. 'mergeTableCells'
  114. ]
  115. },
  116. // This value must be kept in sync with the language defined in webpack.config.js.
  117. language: 'en'
  118. };