suneditor 3.0.0-alpha.9 → 3.0.0-beta.2
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/CONTRIBUTING.md +170 -22
- package/{LICENSE.txt → LICENSE} +9 -9
- package/README.md +168 -30
- package/dist/suneditor.min.css +1 -1
- package/dist/suneditor.min.js +1 -1
- package/package.json +47 -21
- package/src/assets/design/color.css +121 -0
- package/src/assets/design/index.css +3 -0
- package/src/assets/design/size.css +35 -0
- package/src/assets/design/typography.css +37 -0
- package/src/assets/icons/defaultIcons.js +232 -0
- package/src/assets/suneditor-contents.css +181 -46
- package/src/assets/suneditor.css +1403 -650
- package/src/core/base/eventHandlers/handler_toolbar.js +35 -14
- package/src/core/base/eventHandlers/handler_ww_clipboard.js +23 -4
- package/src/core/base/eventHandlers/handler_ww_dragDrop.js +49 -10
- package/src/core/base/eventHandlers/handler_ww_key_input.js +422 -224
- package/src/core/base/eventHandlers/handler_ww_mouse.js +83 -36
- package/src/core/base/eventManager.js +520 -179
- package/src/core/base/history.js +95 -41
- package/src/core/class/char.js +26 -11
- package/src/core/class/component.js +345 -137
- package/src/core/class/format.js +683 -519
- package/src/core/class/html.js +485 -305
- package/src/core/class/menu.js +133 -47
- package/src/core/class/nodeTransform.js +90 -71
- package/src/core/class/offset.js +408 -92
- package/src/core/class/selection.js +216 -106
- package/src/core/class/shortcuts.js +68 -8
- package/src/core/class/toolbar.js +106 -116
- package/src/core/class/ui.js +422 -0
- package/src/core/class/viewer.js +178 -74
- package/src/core/editor.js +496 -389
- package/src/core/section/actives.js +123 -27
- package/src/core/section/constructor.js +615 -206
- package/src/core/section/context.js +28 -23
- package/src/core/section/documentType.js +561 -0
- package/src/editorInjector/_classes.js +19 -5
- package/src/editorInjector/_core.js +71 -7
- package/src/editorInjector/index.js +63 -1
- package/src/events.js +622 -0
- package/src/helper/clipboard.js +59 -0
- package/src/helper/converter.js +202 -26
- package/src/helper/dom/domCheck.js +304 -0
- package/src/helper/dom/domQuery.js +669 -0
- package/src/helper/dom/domUtils.js +557 -0
- package/src/helper/dom/index.js +12 -0
- package/src/helper/env.js +46 -56
- package/src/helper/index.js +10 -4
- package/src/helper/keyCodeMap.js +183 -0
- package/src/helper/numbers.js +12 -8
- package/src/helper/unicode.js +9 -5
- package/src/langs/ckb.js +74 -4
- package/src/langs/cs.js +72 -2
- package/src/langs/da.js +73 -3
- package/src/langs/de.js +73 -4
- package/src/langs/en.js +23 -3
- package/src/langs/es.js +73 -4
- package/src/langs/fa.js +75 -3
- package/src/langs/fr.js +73 -3
- package/src/langs/he.js +73 -4
- package/src/langs/hu.js +230 -0
- package/src/langs/index.js +7 -3
- package/src/langs/it.js +70 -1
- package/src/langs/ja.js +72 -4
- package/src/langs/km.js +230 -0
- package/src/langs/ko.js +22 -2
- package/src/langs/lv.js +74 -5
- package/src/langs/nl.js +73 -4
- package/src/langs/pl.js +73 -4
- package/src/langs/pt_br.js +70 -1
- package/src/langs/ro.js +74 -5
- package/src/langs/ru.js +73 -4
- package/src/langs/se.js +73 -4
- package/src/langs/tr.js +73 -1
- package/src/langs/{ua.js → uk.js} +75 -6
- package/src/langs/ur.js +77 -8
- package/src/langs/zh_cn.js +74 -5
- package/src/modules/ApiManager.js +77 -54
- package/src/modules/Browser.js +667 -0
- package/src/modules/ColorPicker.js +162 -102
- package/src/modules/Controller.js +273 -142
- package/src/modules/Figure.js +925 -484
- package/src/modules/FileManager.js +121 -69
- package/src/modules/HueSlider.js +113 -61
- package/src/modules/Modal.js +291 -122
- package/src/modules/ModalAnchorEditor.js +383 -234
- package/src/modules/SelectMenu.js +270 -168
- package/src/modules/_DragHandle.js +2 -1
- package/src/modules/index.js +3 -3
- package/src/plugins/browser/audioGallery.js +83 -0
- package/src/plugins/browser/fileBrowser.js +103 -0
- package/src/plugins/browser/fileGallery.js +83 -0
- package/src/plugins/browser/imageGallery.js +81 -0
- package/src/plugins/browser/videoGallery.js +103 -0
- package/src/plugins/command/blockquote.js +40 -27
- package/src/plugins/command/exportPDF.js +134 -0
- package/src/plugins/command/fileUpload.js +229 -162
- package/src/plugins/command/list_bulleted.js +83 -47
- package/src/plugins/command/list_numbered.js +83 -47
- package/src/plugins/dropdown/align.js +66 -54
- package/src/plugins/dropdown/backgroundColor.js +63 -49
- package/src/plugins/dropdown/font.js +71 -47
- package/src/plugins/dropdown/fontColor.js +63 -48
- package/src/plugins/dropdown/formatBlock.js +70 -33
- package/src/plugins/dropdown/hr.js +92 -51
- package/src/plugins/dropdown/layout.js +37 -26
- package/src/plugins/dropdown/lineHeight.js +54 -38
- package/src/plugins/dropdown/list.js +60 -45
- package/src/plugins/dropdown/paragraphStyle.js +51 -30
- package/src/plugins/dropdown/table.js +2003 -813
- package/src/plugins/dropdown/template.js +38 -26
- package/src/plugins/dropdown/textStyle.js +43 -31
- package/src/plugins/field/mention.js +147 -86
- package/src/plugins/index.js +32 -6
- package/src/plugins/input/fontSize.js +161 -108
- package/src/plugins/input/pageNavigator.js +70 -0
- package/src/plugins/modal/audio.js +358 -173
- package/src/plugins/modal/drawing.js +531 -0
- package/src/plugins/modal/embed.js +886 -0
- package/src/plugins/modal/image.js +674 -362
- package/src/plugins/modal/link.js +100 -71
- package/src/plugins/modal/math.js +367 -167
- package/src/plugins/modal/video.js +691 -335
- package/src/plugins/popup/anchor.js +222 -0
- package/src/suneditor.js +50 -13
- package/src/themes/dark.css +122 -0
- package/src/typedef.js +130 -0
- package/types/assets/icons/defaultIcons.d.ts +153 -0
- package/types/core/base/eventHandlers/handler_toolbar.d.ts +41 -0
- package/types/core/base/eventHandlers/handler_ww_clipboard.d.ts +40 -0
- package/types/core/base/eventHandlers/handler_ww_dragDrop.d.ts +35 -0
- package/types/core/base/eventHandlers/handler_ww_key_input.d.ts +45 -0
- package/types/core/base/eventHandlers/handler_ww_mouse.d.ts +39 -0
- package/types/core/base/eventManager.d.ts +385 -0
- package/types/core/base/history.d.ts +81 -0
- package/types/core/class/char.d.ts +60 -0
- package/types/core/class/component.d.ts +212 -0
- package/types/core/class/format.d.ts +616 -0
- package/types/core/class/html.d.ts +422 -0
- package/types/core/class/menu.d.ts +126 -0
- package/types/core/class/nodeTransform.d.ts +93 -0
- package/types/core/class/offset.d.ts +522 -0
- package/types/core/class/selection.d.ts +188 -0
- package/types/core/class/shortcuts.d.ts +142 -0
- package/types/core/class/toolbar.d.ts +189 -0
- package/types/core/class/ui.d.ts +164 -0
- package/types/core/class/viewer.d.ts +140 -0
- package/types/core/editor.d.ts +610 -0
- package/types/core/section/actives.d.ts +46 -0
- package/types/core/section/constructor.d.ts +777 -0
- package/types/core/section/context.d.ts +45 -0
- package/types/core/section/documentType.d.ts +178 -0
- package/types/editorInjector/_classes.d.ts +41 -0
- package/types/editorInjector/_core.d.ts +92 -0
- package/types/editorInjector/index.d.ts +71 -0
- package/types/events.d.ts +273 -0
- package/types/helper/clipboard.d.ts +12 -0
- package/types/helper/converter.d.ts +197 -0
- package/types/helper/dom/domCheck.d.ts +189 -0
- package/types/helper/dom/domQuery.d.ts +223 -0
- package/types/helper/dom/domUtils.d.ts +226 -0
- package/types/helper/dom/index.d.ts +9 -0
- package/types/helper/env.d.ts +132 -0
- package/types/helper/index.d.ts +174 -0
- package/types/helper/keyCodeMap.d.ts +110 -0
- package/types/helper/numbers.d.ts +46 -0
- package/types/helper/unicode.d.ts +28 -0
- package/types/index.d.ts +120 -0
- package/{typings/Lang.d.ts → types/langs/_Lang.d.ts} +173 -103
- package/types/langs/ckb.d.ts +3 -0
- package/types/langs/cs.d.ts +3 -0
- package/types/langs/da.d.ts +3 -0
- package/types/langs/de.d.ts +3 -0
- package/types/langs/en.d.ts +3 -0
- package/types/langs/es.d.ts +3 -0
- package/types/langs/fa.d.ts +3 -0
- package/types/langs/fr.d.ts +3 -0
- package/types/langs/he.d.ts +3 -0
- package/types/langs/hu.d.ts +3 -0
- package/types/langs/index.d.ts +54 -0
- package/types/langs/it.d.ts +3 -0
- package/types/langs/ja.d.ts +3 -0
- package/types/langs/km.d.ts +3 -0
- package/types/langs/ko.d.ts +3 -0
- package/types/langs/lv.d.ts +3 -0
- package/types/langs/nl.d.ts +3 -0
- package/types/langs/pl.d.ts +3 -0
- package/types/langs/pt_br.d.ts +3 -0
- package/types/langs/ro.d.ts +3 -0
- package/types/langs/ru.d.ts +3 -0
- package/types/langs/se.d.ts +3 -0
- package/types/langs/tr.d.ts +3 -0
- package/types/langs/uk.d.ts +3 -0
- package/types/langs/ur.d.ts +3 -0
- package/types/langs/zh_cn.d.ts +3 -0
- package/types/modules/ApiManager.d.ts +125 -0
- package/types/modules/Browser.d.ts +326 -0
- package/types/modules/ColorPicker.d.ts +131 -0
- package/types/modules/Controller.d.ts +251 -0
- package/types/modules/Figure.d.ts +517 -0
- package/types/modules/FileManager.d.ts +202 -0
- package/types/modules/HueSlider.d.ts +136 -0
- package/types/modules/Modal.d.ts +111 -0
- package/types/modules/ModalAnchorEditor.d.ts +236 -0
- package/types/modules/SelectMenu.d.ts +194 -0
- package/types/modules/_DragHandle.d.ts +7 -0
- package/types/modules/index.d.ts +26 -0
- package/types/plugins/browser/audioGallery.d.ts +55 -0
- package/types/plugins/browser/fileBrowser.d.ts +64 -0
- package/types/plugins/browser/fileGallery.d.ts +55 -0
- package/types/plugins/browser/imageGallery.d.ts +51 -0
- package/types/plugins/browser/videoGallery.d.ts +57 -0
- package/types/plugins/command/blockquote.d.ts +28 -0
- package/types/plugins/command/exportPDF.d.ts +46 -0
- package/types/plugins/command/fileUpload.d.ts +156 -0
- package/types/plugins/command/list_bulleted.d.ts +46 -0
- package/types/plugins/command/list_numbered.d.ts +46 -0
- package/types/plugins/dropdown/align.d.ts +60 -0
- package/types/plugins/dropdown/backgroundColor.d.ts +63 -0
- package/types/plugins/dropdown/font.d.ts +54 -0
- package/types/plugins/dropdown/fontColor.d.ts +63 -0
- package/types/plugins/dropdown/formatBlock.d.ts +54 -0
- package/types/plugins/dropdown/hr.d.ts +71 -0
- package/types/plugins/dropdown/layout.d.ts +40 -0
- package/types/plugins/dropdown/lineHeight.d.ts +50 -0
- package/types/plugins/dropdown/list.d.ts +39 -0
- package/types/plugins/dropdown/paragraphStyle.d.ts +54 -0
- package/types/plugins/dropdown/table.d.ts +627 -0
- package/types/plugins/dropdown/template.d.ts +40 -0
- package/types/plugins/dropdown/textStyle.d.ts +41 -0
- package/types/plugins/field/mention.d.ts +102 -0
- package/types/plugins/index.d.ts +107 -0
- package/types/plugins/input/fontSize.d.ts +170 -0
- package/types/plugins/input/pageNavigator.d.ts +28 -0
- package/types/plugins/modal/audio.d.ts +269 -0
- package/types/plugins/modal/drawing.d.ts +246 -0
- package/types/plugins/modal/embed.d.ts +387 -0
- package/types/plugins/modal/image.d.ts +451 -0
- package/types/plugins/modal/link.d.ts +128 -0
- package/types/plugins/modal/math.d.ts +193 -0
- package/types/plugins/modal/video.d.ts +485 -0
- package/types/plugins/popup/anchor.d.ts +56 -0
- package/types/suneditor.d.ts +51 -0
- package/types/typedef.d.ts +233 -0
- package/.eslintignore +0 -7
- package/.eslintrc.json +0 -64
- package/src/assets/icons/_default.js +0 -194
- package/src/core/base/events.js +0 -320
- package/src/core/class/notice.js +0 -42
- package/src/helper/domUtils.js +0 -1177
- package/src/modules/FileBrowser.js +0 -271
- package/src/plugins/command/exportPdf.js +0 -168
- package/src/plugins/fileBrowser/imageGallery.js +0 -81
- package/src/themes/test.css +0 -61
- package/typings/CommandPlugin.d.ts +0 -8
- package/typings/DialogPlugin.d.ts +0 -20
- package/typings/FileBrowserPlugin.d.ts +0 -30
- package/typings/Module.d.ts +0 -15
- package/typings/Plugin.d.ts +0 -42
- package/typings/SubmenuPlugin.d.ts +0 -8
- package/typings/_classes.d.ts +0 -17
- package/typings/_colorPicker.d.ts +0 -60
- package/typings/_core.d.ts +0 -55
- package/typings/align.d.ts +0 -5
- package/typings/audio.d.ts +0 -5
- package/typings/backgroundColor.d.ts +0 -5
- package/typings/blockquote.d.ts +0 -5
- package/typings/char.d.ts +0 -39
- package/typings/component.d.ts +0 -38
- package/typings/context.d.ts +0 -39
- package/typings/converter.d.ts +0 -33
- package/typings/dialog.d.ts +0 -28
- package/typings/domUtils.d.ts +0 -361
- package/typings/editor.d.ts +0 -7
- package/typings/editor.ts +0 -542
- package/typings/env.d.ts +0 -70
- package/typings/eventManager.d.ts +0 -37
- package/typings/events.d.ts +0 -262
- package/typings/fileBrowser.d.ts +0 -42
- package/typings/fileManager.d.ts +0 -67
- package/typings/font.d.ts +0 -5
- package/typings/fontColor.d.ts +0 -5
- package/typings/fontSize.d.ts +0 -5
- package/typings/format.d.ts +0 -191
- package/typings/formatBlock.d.ts +0 -5
- package/typings/history.d.ts +0 -48
- package/typings/horizontalRule.d.ts +0 -5
- package/typings/image.d.ts +0 -5
- package/typings/imageGallery.d.ts +0 -5
- package/typings/index.d.ts +0 -21
- package/typings/index.modules.d.ts +0 -11
- package/typings/index.plugins.d.ts +0 -58
- package/typings/lineHeight.d.ts +0 -5
- package/typings/link.d.ts +0 -5
- package/typings/list.d.ts +0 -5
- package/typings/math.d.ts +0 -5
- package/typings/mediaContainer.d.ts +0 -25
- package/typings/mention.d.ts +0 -5
- package/typings/node.d.ts +0 -57
- package/typings/notice.d.ts +0 -16
- package/typings/numbers.d.ts +0 -29
- package/typings/offset.d.ts +0 -24
- package/typings/options.d.ts +0 -589
- package/typings/paragraphStyle.d.ts +0 -5
- package/typings/resizing.d.ts +0 -141
- package/typings/selection.d.ts +0 -94
- package/typings/shortcuts.d.ts +0 -13
- package/typings/suneditor.d.ts +0 -9
- package/typings/table.d.ts +0 -5
- package/typings/template.d.ts +0 -5
- package/typings/textStyle.d.ts +0 -5
- package/typings/toolbar.d.ts +0 -32
- package/typings/unicode.d.ts +0 -25
- package/typings/video.d.ts +0 -5
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
export default BackgroundColor;
|
|
2
|
+
/**
|
|
3
|
+
* @class
|
|
4
|
+
* @description Text background color plugin
|
|
5
|
+
*/
|
|
6
|
+
declare class BackgroundColor extends EditorInjector {
|
|
7
|
+
static key: string;
|
|
8
|
+
static type: string;
|
|
9
|
+
static className: string;
|
|
10
|
+
/**
|
|
11
|
+
* @constructor
|
|
12
|
+
* @param {__se__EditorCore} editor - The root editor instance
|
|
13
|
+
* @param {Object} pluginOptions
|
|
14
|
+
* @param {Array<string|{value: string, name: string}>} pluginOptions.items - Color list
|
|
15
|
+
* @param {number} pluginOptions.splitNum - Number of colors per line
|
|
16
|
+
* @param {boolean} pluginOptions.disableHEXInput - Disable HEX input
|
|
17
|
+
*/
|
|
18
|
+
constructor(
|
|
19
|
+
editor: __se__EditorCore,
|
|
20
|
+
pluginOptions: {
|
|
21
|
+
items: Array<
|
|
22
|
+
| string
|
|
23
|
+
| {
|
|
24
|
+
value: string;
|
|
25
|
+
name: string;
|
|
26
|
+
}
|
|
27
|
+
>;
|
|
28
|
+
splitNum: number;
|
|
29
|
+
disableHEXInput: boolean;
|
|
30
|
+
}
|
|
31
|
+
);
|
|
32
|
+
title: any;
|
|
33
|
+
icon: string;
|
|
34
|
+
colorPicker: ColorPicker;
|
|
35
|
+
/**
|
|
36
|
+
* @editorMethod Editor.EventManager
|
|
37
|
+
* @description Executes the method that is called whenever the cursor position changes.
|
|
38
|
+
* @param {?HTMLElement=} element - Node element where the cursor is currently located
|
|
39
|
+
* @param {?HTMLElement=} target - The plugin's toolbar button element
|
|
40
|
+
* @returns {boolean} - Whether the plugin is active
|
|
41
|
+
*/
|
|
42
|
+
active(element?: (HTMLElement | null) | undefined, target?: (HTMLElement | null) | undefined): boolean;
|
|
43
|
+
/**
|
|
44
|
+
* @editorMethod Modules.Dropdown
|
|
45
|
+
* @description Executes the method that is called when a plugin's "dropdown" menu is opened.
|
|
46
|
+
* @param {HTMLElement} target Line element at the current cursor position
|
|
47
|
+
*/
|
|
48
|
+
on(target: HTMLElement): void;
|
|
49
|
+
/**
|
|
50
|
+
* @editorMethod Modules.Dropdown
|
|
51
|
+
* @description Executes the method that is called when a plugin's "dropdown" menu is closed.
|
|
52
|
+
*/
|
|
53
|
+
off(): void;
|
|
54
|
+
/**
|
|
55
|
+
* @editorMethod Modules.ColorPicker
|
|
56
|
+
* @description Executes the method called when a button of "ColorPicker" module is clicked.
|
|
57
|
+
* - This plugin is by applying the "ColorPicker" module globally to the "dropdown" menu, the default "action" method is not called.
|
|
58
|
+
* @param {string} color - Color code (hex)
|
|
59
|
+
*/
|
|
60
|
+
colorPickerAction(color: string): void;
|
|
61
|
+
}
|
|
62
|
+
import EditorInjector from '../../editorInjector';
|
|
63
|
+
import ColorPicker from '../../modules/ColorPicker';
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
export default Font;
|
|
2
|
+
/**
|
|
3
|
+
* @class
|
|
4
|
+
* @description Text font plugin
|
|
5
|
+
*/
|
|
6
|
+
declare class Font extends EditorInjector {
|
|
7
|
+
static key: string;
|
|
8
|
+
static type: string;
|
|
9
|
+
static className: string;
|
|
10
|
+
/**
|
|
11
|
+
* @constructor
|
|
12
|
+
* @param {__se__EditorCore} editor - The root editor instance
|
|
13
|
+
* @param {Object} pluginOptions
|
|
14
|
+
* @param {Array<string>} pluginOptions.items - Font list
|
|
15
|
+
* @param {number} pluginOptions.splitNum - Number of colors per line
|
|
16
|
+
* @param {boolean} pluginOptions.disableHEXInput - Disable HEX input
|
|
17
|
+
*/
|
|
18
|
+
constructor(
|
|
19
|
+
editor: __se__EditorCore,
|
|
20
|
+
pluginOptions: {
|
|
21
|
+
items: Array<string>;
|
|
22
|
+
splitNum: number;
|
|
23
|
+
disableHEXInput: boolean;
|
|
24
|
+
}
|
|
25
|
+
);
|
|
26
|
+
title: any;
|
|
27
|
+
inner: string;
|
|
28
|
+
currentFont: string;
|
|
29
|
+
fontList: NodeListOf<Element>;
|
|
30
|
+
fontArray: string[];
|
|
31
|
+
/**
|
|
32
|
+
* @editorMethod Editor.EventManager
|
|
33
|
+
* @description Executes the method that is called whenever the cursor position changes.
|
|
34
|
+
* @param {?HTMLElement=} element - Node element where the cursor is currently located
|
|
35
|
+
* @param {?HTMLElement=} target - The plugin's toolbar button element
|
|
36
|
+
* @returns {boolean} - Whether the plugin is active
|
|
37
|
+
*/
|
|
38
|
+
active(element?: (HTMLElement | null) | undefined, target?: (HTMLElement | null) | undefined): boolean;
|
|
39
|
+
/**
|
|
40
|
+
* @editorMethod Modules.Dropdown
|
|
41
|
+
* @description Executes the method that is called when a plugin's dropdown menu is opened.
|
|
42
|
+
* @param {HTMLElement} target Line element at the current cursor position
|
|
43
|
+
*/
|
|
44
|
+
on(target: HTMLElement): void;
|
|
45
|
+
/**
|
|
46
|
+
* @editorMethod Editor.core
|
|
47
|
+
* @description Executes the main execution method of the plugin.
|
|
48
|
+
* - Called when an item in the "dropdown" menu is clicked.
|
|
49
|
+
* @param {HTMLElement} target - The plugin's toolbar button element
|
|
50
|
+
* @returns {Promise<void>}
|
|
51
|
+
*/
|
|
52
|
+
action(target: HTMLElement): Promise<void>;
|
|
53
|
+
}
|
|
54
|
+
import EditorInjector from '../../editorInjector';
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
export default FontColor;
|
|
2
|
+
/**
|
|
3
|
+
* @class
|
|
4
|
+
* @description Font color plugin
|
|
5
|
+
*/
|
|
6
|
+
declare class FontColor extends EditorInjector {
|
|
7
|
+
static key: string;
|
|
8
|
+
static type: string;
|
|
9
|
+
static className: string;
|
|
10
|
+
/**
|
|
11
|
+
* @constructor
|
|
12
|
+
* @param {__se__EditorCore} editor - The root editor instance
|
|
13
|
+
* @param {Object} pluginOptions
|
|
14
|
+
* @param {Array<string|{value: string, name: string}>} pluginOptions.items - Color list
|
|
15
|
+
* @param {number} pluginOptions.splitNum - Number of colors per line
|
|
16
|
+
* @param {boolean} pluginOptions.disableHEXInput - Disable HEX input
|
|
17
|
+
*/
|
|
18
|
+
constructor(
|
|
19
|
+
editor: __se__EditorCore,
|
|
20
|
+
pluginOptions: {
|
|
21
|
+
items: Array<
|
|
22
|
+
| string
|
|
23
|
+
| {
|
|
24
|
+
value: string;
|
|
25
|
+
name: string;
|
|
26
|
+
}
|
|
27
|
+
>;
|
|
28
|
+
splitNum: number;
|
|
29
|
+
disableHEXInput: boolean;
|
|
30
|
+
}
|
|
31
|
+
);
|
|
32
|
+
title: any;
|
|
33
|
+
icon: string;
|
|
34
|
+
colorPicker: ColorPicker;
|
|
35
|
+
/**
|
|
36
|
+
* @editorMethod Editor.EventManager
|
|
37
|
+
* @description Executes the method that is called whenever the cursor position changes.
|
|
38
|
+
* @param {?HTMLElement=} element - Node element where the cursor is currently located
|
|
39
|
+
* @param {?HTMLElement=} target - The plugin's toolbar button element
|
|
40
|
+
* @returns {boolean} - Whether the plugin is active
|
|
41
|
+
*/
|
|
42
|
+
active(element?: (HTMLElement | null) | undefined, target?: (HTMLElement | null) | undefined): boolean;
|
|
43
|
+
/**
|
|
44
|
+
* @editorMethod Modules.Dropdown
|
|
45
|
+
* @description Executes the method that is called when a plugin's dropdown menu is opened.
|
|
46
|
+
* @param {HTMLElement} target Line element at the current cursor position
|
|
47
|
+
*/
|
|
48
|
+
on(target: HTMLElement): void;
|
|
49
|
+
/**
|
|
50
|
+
* @editorMethod Modules.Dropdown
|
|
51
|
+
* @Override Executes the method that is called when a plugin's dropdown menu is closed.
|
|
52
|
+
*/
|
|
53
|
+
off(): void;
|
|
54
|
+
/**
|
|
55
|
+
* @editorMethod Modules.ColorPicker
|
|
56
|
+
* @description Executes the method called when a button of "ColorPicker" module is clicked.
|
|
57
|
+
* - This plugin is by applying the "ColorPicker" module globally to the "dropdown" menu, the default "action" method is not called.
|
|
58
|
+
* @param {string} color - Color code (hex)
|
|
59
|
+
*/
|
|
60
|
+
colorPickerAction(color: string): void;
|
|
61
|
+
}
|
|
62
|
+
import EditorInjector from '../../editorInjector';
|
|
63
|
+
import ColorPicker from '../../modules/ColorPicker';
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
export default FormatBlock;
|
|
2
|
+
/**
|
|
3
|
+
* @class
|
|
4
|
+
* @description FormatBlock Plugin (P, BLOCKQUOTE, PRE, H1, H2...)
|
|
5
|
+
*/
|
|
6
|
+
declare class FormatBlock extends EditorInjector {
|
|
7
|
+
static key: string;
|
|
8
|
+
static type: string;
|
|
9
|
+
static className: string;
|
|
10
|
+
/**
|
|
11
|
+
* @constructor
|
|
12
|
+
* @param {__se__EditorCore} editor - The root editor instance
|
|
13
|
+
* @param {Object} pluginOptions
|
|
14
|
+
* @param {Array<string>} pluginOptions.items - Format list
|
|
15
|
+
*/
|
|
16
|
+
constructor(
|
|
17
|
+
editor: __se__EditorCore,
|
|
18
|
+
pluginOptions: {
|
|
19
|
+
items: Array<string>;
|
|
20
|
+
}
|
|
21
|
+
);
|
|
22
|
+
title: any;
|
|
23
|
+
inner: string;
|
|
24
|
+
formatList: NodeListOf<Element>;
|
|
25
|
+
currentFormat: string;
|
|
26
|
+
/**
|
|
27
|
+
* @editorMethod Editor.EventManager
|
|
28
|
+
* @description Executes the method that is called whenever the cursor position changes.
|
|
29
|
+
* @param {?HTMLElement=} element - Node element where the cursor is currently located
|
|
30
|
+
* @param {?HTMLElement=} target - The plugin's toolbar button element
|
|
31
|
+
* @returns {boolean} - Whether the plugin is active
|
|
32
|
+
*/
|
|
33
|
+
active(element?: (HTMLElement | null) | undefined, target?: (HTMLElement | null) | undefined): boolean;
|
|
34
|
+
/**
|
|
35
|
+
* @editorMethod Modules.Dropdown
|
|
36
|
+
* @description Executes the method that is called when a plugin's dropdown menu is opened.
|
|
37
|
+
* @param {HTMLElement} target Line element at the current cursor position
|
|
38
|
+
*/
|
|
39
|
+
on(target: HTMLElement): void;
|
|
40
|
+
/**
|
|
41
|
+
* @editorMethod Editor.core
|
|
42
|
+
* @description Executes the main execution method of the plugin.
|
|
43
|
+
* - Called when an item in the "dropdown" menu is clicked.
|
|
44
|
+
* @param {HTMLElement} target - The plugin's toolbar button element
|
|
45
|
+
*/
|
|
46
|
+
action(target: HTMLElement): void;
|
|
47
|
+
/**
|
|
48
|
+
* @description Create a header tag, call by "shortcut" class
|
|
49
|
+
* - (e.g. shortcuts._h1: ['c+s+49+p~formatBlock.createHeader', ''])
|
|
50
|
+
* @param {__se__PluginShortcutInfo} params - Information of the "shortcut" plugin
|
|
51
|
+
*/
|
|
52
|
+
createHeader({ keyCode }: __se__PluginShortcutInfo): void;
|
|
53
|
+
}
|
|
54
|
+
import EditorInjector from '../../editorInjector';
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
export default HR;
|
|
2
|
+
/**
|
|
3
|
+
* @class
|
|
4
|
+
* @description HR Plugin
|
|
5
|
+
*/
|
|
6
|
+
declare class HR extends EditorInjector {
|
|
7
|
+
static key: string;
|
|
8
|
+
static type: string;
|
|
9
|
+
static className: string;
|
|
10
|
+
/**
|
|
11
|
+
* @this {HR}
|
|
12
|
+
* @param {HTMLElement} node - The node to check.
|
|
13
|
+
* @returns {HTMLElement|null} Returns a node if the node is a valid component.
|
|
14
|
+
*/
|
|
15
|
+
static component(this: HR, node: HTMLElement): HTMLElement | null;
|
|
16
|
+
/**
|
|
17
|
+
* @constructor
|
|
18
|
+
* @param {__se__EditorCore} editor - The root editor instance
|
|
19
|
+
* @param {Object} pluginOptions
|
|
20
|
+
* @param {Array<{name: string, class: string}>} pluginOptions.items - HR list
|
|
21
|
+
*/
|
|
22
|
+
constructor(
|
|
23
|
+
editor: __se__EditorCore,
|
|
24
|
+
pluginOptions: {
|
|
25
|
+
items: Array<{
|
|
26
|
+
name: string;
|
|
27
|
+
class: string;
|
|
28
|
+
}>;
|
|
29
|
+
}
|
|
30
|
+
);
|
|
31
|
+
title: any;
|
|
32
|
+
icon: string;
|
|
33
|
+
list: NodeListOf<HTMLButtonElement>;
|
|
34
|
+
/**
|
|
35
|
+
* @editorMethod Editor.Component
|
|
36
|
+
* @description Executes the method that is called when a component of a plugin is selected.
|
|
37
|
+
* @param {HTMLElement} target Target component element
|
|
38
|
+
*/
|
|
39
|
+
select(target: HTMLElement): void;
|
|
40
|
+
/**
|
|
41
|
+
* @editorMethod Editor.Component
|
|
42
|
+
* @description Called when a container is deselected.
|
|
43
|
+
* @param {HTMLElement} element Target element
|
|
44
|
+
*/
|
|
45
|
+
deselect(element: HTMLElement): void;
|
|
46
|
+
/**
|
|
47
|
+
* @editorMethod Editor.Component
|
|
48
|
+
* @description Method to delete a component of a plugin, called by the "FileManager", "Controller" module.
|
|
49
|
+
* @param {HTMLElement} target Target element
|
|
50
|
+
*/
|
|
51
|
+
destroy(target: HTMLElement): void;
|
|
52
|
+
/**
|
|
53
|
+
* @editorMethod Editor.core
|
|
54
|
+
* @description Executes the main execution method of the plugin.
|
|
55
|
+
* - Called when an item in the "dropdown" menu is clicked.
|
|
56
|
+
* @param {HTMLElement} target - The plugin's toolbar button element
|
|
57
|
+
*/
|
|
58
|
+
action(target: HTMLElement): void;
|
|
59
|
+
/**
|
|
60
|
+
* @editorMethod Editor.core
|
|
61
|
+
* @description Executes methods called by shortcut keys.
|
|
62
|
+
* @param {__se__PluginShortcutInfo} params - Information of the "shortcut" plugin
|
|
63
|
+
*/
|
|
64
|
+
shortcut({ line, range }: __se__PluginShortcutInfo): void;
|
|
65
|
+
/**
|
|
66
|
+
* @description Add a hr element
|
|
67
|
+
* @param {string} className HR class name
|
|
68
|
+
*/
|
|
69
|
+
submit(className: string): HTMLElement;
|
|
70
|
+
}
|
|
71
|
+
import EditorInjector from '../../editorInjector';
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
export default Layout;
|
|
2
|
+
/**
|
|
3
|
+
* @class
|
|
4
|
+
* @description Layout Plugin, Apply layout to the entire editor.
|
|
5
|
+
*/
|
|
6
|
+
declare class Layout extends EditorInjector {
|
|
7
|
+
static key: string;
|
|
8
|
+
static type: string;
|
|
9
|
+
static className: string;
|
|
10
|
+
/**
|
|
11
|
+
* @constructor
|
|
12
|
+
* @param {__se__EditorCore} editor - The root editor instance
|
|
13
|
+
* @param {Object} pluginOptions
|
|
14
|
+
* @param {Array<{name: string, html: string}>} pluginOptions.items - Layout list
|
|
15
|
+
*/
|
|
16
|
+
constructor(
|
|
17
|
+
editor: __se__EditorCore,
|
|
18
|
+
pluginOptions: {
|
|
19
|
+
items: Array<{
|
|
20
|
+
name: string;
|
|
21
|
+
html: string;
|
|
22
|
+
}>;
|
|
23
|
+
}
|
|
24
|
+
);
|
|
25
|
+
title: any;
|
|
26
|
+
icon: string;
|
|
27
|
+
selectedIndex: number;
|
|
28
|
+
items: {
|
|
29
|
+
name: string;
|
|
30
|
+
html: string;
|
|
31
|
+
}[];
|
|
32
|
+
/**
|
|
33
|
+
* @editorMethod Editor.core
|
|
34
|
+
* @description Executes the main execution method of the plugin.
|
|
35
|
+
* - Called when an item in the "dropdown" menu is clicked.
|
|
36
|
+
* @param {HTMLElement} target - The plugin's toolbar button element
|
|
37
|
+
*/
|
|
38
|
+
action(target: HTMLElement): void;
|
|
39
|
+
}
|
|
40
|
+
import EditorInjector from '../../editorInjector';
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
export default LineHeight;
|
|
2
|
+
/**
|
|
3
|
+
* @class
|
|
4
|
+
* @description Line height Plugin
|
|
5
|
+
*/
|
|
6
|
+
declare class LineHeight extends EditorInjector {
|
|
7
|
+
static key: string;
|
|
8
|
+
static type: string;
|
|
9
|
+
static className: string;
|
|
10
|
+
/**
|
|
11
|
+
* @constructor
|
|
12
|
+
* @param {__se__EditorCore} editor - The root editor instance
|
|
13
|
+
* @param {Object} pluginOptions
|
|
14
|
+
* @param {Array<{text: string, value: number}>} pluginOptions.items - Line height list
|
|
15
|
+
*/
|
|
16
|
+
constructor(
|
|
17
|
+
editor: __se__EditorCore,
|
|
18
|
+
pluginOptions: {
|
|
19
|
+
items: Array<{
|
|
20
|
+
text: string;
|
|
21
|
+
value: number;
|
|
22
|
+
}>;
|
|
23
|
+
}
|
|
24
|
+
);
|
|
25
|
+
title: any;
|
|
26
|
+
icon: string;
|
|
27
|
+
sizeList: NodeListOf<Element>;
|
|
28
|
+
currentSize: any;
|
|
29
|
+
/**
|
|
30
|
+
* @editorMethod Editor.EventManager
|
|
31
|
+
* @description Executes the method that is called whenever the cursor position changes.
|
|
32
|
+
* @param {?HTMLElement=} element - Node element where the cursor is currently located
|
|
33
|
+
* @param {?HTMLElement=} target - The plugin's toolbar button element
|
|
34
|
+
* @returns {boolean} - Whether the plugin is active
|
|
35
|
+
*/
|
|
36
|
+
active(element?: (HTMLElement | null) | undefined, target?: (HTMLElement | null) | undefined): boolean;
|
|
37
|
+
/**
|
|
38
|
+
* @editorMethod Modules.Dropdown
|
|
39
|
+
* @description Executes the method that is called when a plugin's dropdown menu is opened.
|
|
40
|
+
*/
|
|
41
|
+
on(): void;
|
|
42
|
+
/**
|
|
43
|
+
* @editorMethod Editor.core
|
|
44
|
+
* @description Executes the main execution method of the plugin.
|
|
45
|
+
* - Called when an item in the "dropdown" menu is clicked.
|
|
46
|
+
* @param {HTMLElement} target - The plugin's toolbar button element
|
|
47
|
+
*/
|
|
48
|
+
action(target: HTMLElement): void;
|
|
49
|
+
}
|
|
50
|
+
import EditorInjector from '../../editorInjector';
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export default List;
|
|
2
|
+
/**
|
|
3
|
+
* @class
|
|
4
|
+
* @description List Plugin (OL, UL)
|
|
5
|
+
*/
|
|
6
|
+
declare class List extends EditorInjector {
|
|
7
|
+
static key: string;
|
|
8
|
+
static type: string;
|
|
9
|
+
static className: string;
|
|
10
|
+
title: any;
|
|
11
|
+
icon: string;
|
|
12
|
+
listItems: NodeListOf<Element>;
|
|
13
|
+
icons: {
|
|
14
|
+
bulleted: string;
|
|
15
|
+
numbered: string;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* @editorMethod Editor.EventManager
|
|
19
|
+
* @description Executes the method that is called whenever the cursor position changes.
|
|
20
|
+
* @param {?HTMLElement=} element - Node element where the cursor is currently located
|
|
21
|
+
* @param {?HTMLElement=} target - The plugin's toolbar button element
|
|
22
|
+
* @returns {boolean} - Whether the plugin is active
|
|
23
|
+
*/
|
|
24
|
+
active(element?: (HTMLElement | null) | undefined, target?: (HTMLElement | null) | undefined): boolean;
|
|
25
|
+
/**
|
|
26
|
+
* @editorMethod Modules.Dropdown
|
|
27
|
+
* @description Executes the method that is called when a plugin's dropdown menu is opened.
|
|
28
|
+
* @param {HTMLElement} target Line element at the current cursor position
|
|
29
|
+
*/
|
|
30
|
+
on(target: HTMLElement): void;
|
|
31
|
+
/**
|
|
32
|
+
* @editorMethod Editor.core
|
|
33
|
+
* @description Executes the main execution method of the plugin.
|
|
34
|
+
* - Called when an item in the "dropdown" menu is clicked.
|
|
35
|
+
* @param {HTMLElement} target - The plugin's toolbar button element
|
|
36
|
+
*/
|
|
37
|
+
action(target: HTMLElement): void;
|
|
38
|
+
}
|
|
39
|
+
import EditorInjector from '../../editorInjector';
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
export default ParagraphStyle;
|
|
2
|
+
/**
|
|
3
|
+
* @class
|
|
4
|
+
* @description A plugin to style lines using classes.
|
|
5
|
+
*/
|
|
6
|
+
declare class ParagraphStyle extends EditorInjector {
|
|
7
|
+
static key: string;
|
|
8
|
+
static type: string;
|
|
9
|
+
static className: string;
|
|
10
|
+
/**
|
|
11
|
+
* @constructor
|
|
12
|
+
* @param {__se__EditorCore} editor - The root editor instance
|
|
13
|
+
* @param {Object} pluginOptions
|
|
14
|
+
* @param {Array<string|{name: string, class: string, _class: string}>} pluginOptions.items - Paragraph item list
|
|
15
|
+
* @example
|
|
16
|
+
* use default paragraph styles
|
|
17
|
+
* ['spaced', 'bordered', 'neon']
|
|
18
|
+
* custom paragraph styles
|
|
19
|
+
[
|
|
20
|
+
{ name: 'spaced', class: '__se__p-spaced', _class: '' },
|
|
21
|
+
{ name: 'bordered', class: '__se__p-bordered', _class: '' },
|
|
22
|
+
{ name: 'neon', class: '__se__p-neon', _class: ''}
|
|
23
|
+
]
|
|
24
|
+
*/
|
|
25
|
+
constructor(
|
|
26
|
+
editor: __se__EditorCore,
|
|
27
|
+
pluginOptions: {
|
|
28
|
+
items: Array<
|
|
29
|
+
| string
|
|
30
|
+
| {
|
|
31
|
+
name: string;
|
|
32
|
+
class: string;
|
|
33
|
+
_class: string;
|
|
34
|
+
}
|
|
35
|
+
>;
|
|
36
|
+
}
|
|
37
|
+
);
|
|
38
|
+
title: any;
|
|
39
|
+
icon: string;
|
|
40
|
+
classList: NodeListOf<Element>;
|
|
41
|
+
/**
|
|
42
|
+
* @editorMethod Modules.Dropdown
|
|
43
|
+
* @description Executes the method that is called when a plugin's dropdown menu is opened.
|
|
44
|
+
*/
|
|
45
|
+
on(): void;
|
|
46
|
+
/**
|
|
47
|
+
* @editorMethod Editor.core
|
|
48
|
+
* @description Executes the main execution method of the plugin.
|
|
49
|
+
* - Called when an item in the "dropdown" menu is clicked.
|
|
50
|
+
* @param {HTMLElement} target - The plugin's toolbar button element
|
|
51
|
+
*/
|
|
52
|
+
action(target: HTMLElement): void;
|
|
53
|
+
}
|
|
54
|
+
import EditorInjector from '../../editorInjector';
|