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.
Files changed (315) hide show
  1. package/CONTRIBUTING.md +170 -22
  2. package/{LICENSE.txt → LICENSE} +9 -9
  3. package/README.md +168 -30
  4. package/dist/suneditor.min.css +1 -1
  5. package/dist/suneditor.min.js +1 -1
  6. package/package.json +47 -21
  7. package/src/assets/design/color.css +121 -0
  8. package/src/assets/design/index.css +3 -0
  9. package/src/assets/design/size.css +35 -0
  10. package/src/assets/design/typography.css +37 -0
  11. package/src/assets/icons/defaultIcons.js +232 -0
  12. package/src/assets/suneditor-contents.css +181 -46
  13. package/src/assets/suneditor.css +1403 -650
  14. package/src/core/base/eventHandlers/handler_toolbar.js +35 -14
  15. package/src/core/base/eventHandlers/handler_ww_clipboard.js +23 -4
  16. package/src/core/base/eventHandlers/handler_ww_dragDrop.js +49 -10
  17. package/src/core/base/eventHandlers/handler_ww_key_input.js +422 -224
  18. package/src/core/base/eventHandlers/handler_ww_mouse.js +83 -36
  19. package/src/core/base/eventManager.js +520 -179
  20. package/src/core/base/history.js +95 -41
  21. package/src/core/class/char.js +26 -11
  22. package/src/core/class/component.js +345 -137
  23. package/src/core/class/format.js +683 -519
  24. package/src/core/class/html.js +485 -305
  25. package/src/core/class/menu.js +133 -47
  26. package/src/core/class/nodeTransform.js +90 -71
  27. package/src/core/class/offset.js +408 -92
  28. package/src/core/class/selection.js +216 -106
  29. package/src/core/class/shortcuts.js +68 -8
  30. package/src/core/class/toolbar.js +106 -116
  31. package/src/core/class/ui.js +422 -0
  32. package/src/core/class/viewer.js +178 -74
  33. package/src/core/editor.js +496 -389
  34. package/src/core/section/actives.js +123 -27
  35. package/src/core/section/constructor.js +615 -206
  36. package/src/core/section/context.js +28 -23
  37. package/src/core/section/documentType.js +561 -0
  38. package/src/editorInjector/_classes.js +19 -5
  39. package/src/editorInjector/_core.js +71 -7
  40. package/src/editorInjector/index.js +63 -1
  41. package/src/events.js +622 -0
  42. package/src/helper/clipboard.js +59 -0
  43. package/src/helper/converter.js +202 -26
  44. package/src/helper/dom/domCheck.js +304 -0
  45. package/src/helper/dom/domQuery.js +669 -0
  46. package/src/helper/dom/domUtils.js +557 -0
  47. package/src/helper/dom/index.js +12 -0
  48. package/src/helper/env.js +46 -56
  49. package/src/helper/index.js +10 -4
  50. package/src/helper/keyCodeMap.js +183 -0
  51. package/src/helper/numbers.js +12 -8
  52. package/src/helper/unicode.js +9 -5
  53. package/src/langs/ckb.js +74 -4
  54. package/src/langs/cs.js +72 -2
  55. package/src/langs/da.js +73 -3
  56. package/src/langs/de.js +73 -4
  57. package/src/langs/en.js +23 -3
  58. package/src/langs/es.js +73 -4
  59. package/src/langs/fa.js +75 -3
  60. package/src/langs/fr.js +73 -3
  61. package/src/langs/he.js +73 -4
  62. package/src/langs/hu.js +230 -0
  63. package/src/langs/index.js +7 -3
  64. package/src/langs/it.js +70 -1
  65. package/src/langs/ja.js +72 -4
  66. package/src/langs/km.js +230 -0
  67. package/src/langs/ko.js +22 -2
  68. package/src/langs/lv.js +74 -5
  69. package/src/langs/nl.js +73 -4
  70. package/src/langs/pl.js +73 -4
  71. package/src/langs/pt_br.js +70 -1
  72. package/src/langs/ro.js +74 -5
  73. package/src/langs/ru.js +73 -4
  74. package/src/langs/se.js +73 -4
  75. package/src/langs/tr.js +73 -1
  76. package/src/langs/{ua.js → uk.js} +75 -6
  77. package/src/langs/ur.js +77 -8
  78. package/src/langs/zh_cn.js +74 -5
  79. package/src/modules/ApiManager.js +77 -54
  80. package/src/modules/Browser.js +667 -0
  81. package/src/modules/ColorPicker.js +162 -102
  82. package/src/modules/Controller.js +273 -142
  83. package/src/modules/Figure.js +925 -484
  84. package/src/modules/FileManager.js +121 -69
  85. package/src/modules/HueSlider.js +113 -61
  86. package/src/modules/Modal.js +291 -122
  87. package/src/modules/ModalAnchorEditor.js +383 -234
  88. package/src/modules/SelectMenu.js +270 -168
  89. package/src/modules/_DragHandle.js +2 -1
  90. package/src/modules/index.js +3 -3
  91. package/src/plugins/browser/audioGallery.js +83 -0
  92. package/src/plugins/browser/fileBrowser.js +103 -0
  93. package/src/plugins/browser/fileGallery.js +83 -0
  94. package/src/plugins/browser/imageGallery.js +81 -0
  95. package/src/plugins/browser/videoGallery.js +103 -0
  96. package/src/plugins/command/blockquote.js +40 -27
  97. package/src/plugins/command/exportPDF.js +134 -0
  98. package/src/plugins/command/fileUpload.js +229 -162
  99. package/src/plugins/command/list_bulleted.js +83 -47
  100. package/src/plugins/command/list_numbered.js +83 -47
  101. package/src/plugins/dropdown/align.js +66 -54
  102. package/src/plugins/dropdown/backgroundColor.js +63 -49
  103. package/src/plugins/dropdown/font.js +71 -47
  104. package/src/plugins/dropdown/fontColor.js +63 -48
  105. package/src/plugins/dropdown/formatBlock.js +70 -33
  106. package/src/plugins/dropdown/hr.js +92 -51
  107. package/src/plugins/dropdown/layout.js +37 -26
  108. package/src/plugins/dropdown/lineHeight.js +54 -38
  109. package/src/plugins/dropdown/list.js +60 -45
  110. package/src/plugins/dropdown/paragraphStyle.js +51 -30
  111. package/src/plugins/dropdown/table.js +2003 -813
  112. package/src/plugins/dropdown/template.js +38 -26
  113. package/src/plugins/dropdown/textStyle.js +43 -31
  114. package/src/plugins/field/mention.js +147 -86
  115. package/src/plugins/index.js +32 -6
  116. package/src/plugins/input/fontSize.js +161 -108
  117. package/src/plugins/input/pageNavigator.js +70 -0
  118. package/src/plugins/modal/audio.js +358 -173
  119. package/src/plugins/modal/drawing.js +531 -0
  120. package/src/plugins/modal/embed.js +886 -0
  121. package/src/plugins/modal/image.js +674 -362
  122. package/src/plugins/modal/link.js +100 -71
  123. package/src/plugins/modal/math.js +367 -167
  124. package/src/plugins/modal/video.js +691 -335
  125. package/src/plugins/popup/anchor.js +222 -0
  126. package/src/suneditor.js +50 -13
  127. package/src/themes/dark.css +122 -0
  128. package/src/typedef.js +130 -0
  129. package/types/assets/icons/defaultIcons.d.ts +153 -0
  130. package/types/core/base/eventHandlers/handler_toolbar.d.ts +41 -0
  131. package/types/core/base/eventHandlers/handler_ww_clipboard.d.ts +40 -0
  132. package/types/core/base/eventHandlers/handler_ww_dragDrop.d.ts +35 -0
  133. package/types/core/base/eventHandlers/handler_ww_key_input.d.ts +45 -0
  134. package/types/core/base/eventHandlers/handler_ww_mouse.d.ts +39 -0
  135. package/types/core/base/eventManager.d.ts +385 -0
  136. package/types/core/base/history.d.ts +81 -0
  137. package/types/core/class/char.d.ts +60 -0
  138. package/types/core/class/component.d.ts +212 -0
  139. package/types/core/class/format.d.ts +616 -0
  140. package/types/core/class/html.d.ts +422 -0
  141. package/types/core/class/menu.d.ts +126 -0
  142. package/types/core/class/nodeTransform.d.ts +93 -0
  143. package/types/core/class/offset.d.ts +522 -0
  144. package/types/core/class/selection.d.ts +188 -0
  145. package/types/core/class/shortcuts.d.ts +142 -0
  146. package/types/core/class/toolbar.d.ts +189 -0
  147. package/types/core/class/ui.d.ts +164 -0
  148. package/types/core/class/viewer.d.ts +140 -0
  149. package/types/core/editor.d.ts +610 -0
  150. package/types/core/section/actives.d.ts +46 -0
  151. package/types/core/section/constructor.d.ts +777 -0
  152. package/types/core/section/context.d.ts +45 -0
  153. package/types/core/section/documentType.d.ts +178 -0
  154. package/types/editorInjector/_classes.d.ts +41 -0
  155. package/types/editorInjector/_core.d.ts +92 -0
  156. package/types/editorInjector/index.d.ts +71 -0
  157. package/types/events.d.ts +273 -0
  158. package/types/helper/clipboard.d.ts +12 -0
  159. package/types/helper/converter.d.ts +197 -0
  160. package/types/helper/dom/domCheck.d.ts +189 -0
  161. package/types/helper/dom/domQuery.d.ts +223 -0
  162. package/types/helper/dom/domUtils.d.ts +226 -0
  163. package/types/helper/dom/index.d.ts +9 -0
  164. package/types/helper/env.d.ts +132 -0
  165. package/types/helper/index.d.ts +174 -0
  166. package/types/helper/keyCodeMap.d.ts +110 -0
  167. package/types/helper/numbers.d.ts +46 -0
  168. package/types/helper/unicode.d.ts +28 -0
  169. package/types/index.d.ts +120 -0
  170. package/{typings/Lang.d.ts → types/langs/_Lang.d.ts} +173 -103
  171. package/types/langs/ckb.d.ts +3 -0
  172. package/types/langs/cs.d.ts +3 -0
  173. package/types/langs/da.d.ts +3 -0
  174. package/types/langs/de.d.ts +3 -0
  175. package/types/langs/en.d.ts +3 -0
  176. package/types/langs/es.d.ts +3 -0
  177. package/types/langs/fa.d.ts +3 -0
  178. package/types/langs/fr.d.ts +3 -0
  179. package/types/langs/he.d.ts +3 -0
  180. package/types/langs/hu.d.ts +3 -0
  181. package/types/langs/index.d.ts +54 -0
  182. package/types/langs/it.d.ts +3 -0
  183. package/types/langs/ja.d.ts +3 -0
  184. package/types/langs/km.d.ts +3 -0
  185. package/types/langs/ko.d.ts +3 -0
  186. package/types/langs/lv.d.ts +3 -0
  187. package/types/langs/nl.d.ts +3 -0
  188. package/types/langs/pl.d.ts +3 -0
  189. package/types/langs/pt_br.d.ts +3 -0
  190. package/types/langs/ro.d.ts +3 -0
  191. package/types/langs/ru.d.ts +3 -0
  192. package/types/langs/se.d.ts +3 -0
  193. package/types/langs/tr.d.ts +3 -0
  194. package/types/langs/uk.d.ts +3 -0
  195. package/types/langs/ur.d.ts +3 -0
  196. package/types/langs/zh_cn.d.ts +3 -0
  197. package/types/modules/ApiManager.d.ts +125 -0
  198. package/types/modules/Browser.d.ts +326 -0
  199. package/types/modules/ColorPicker.d.ts +131 -0
  200. package/types/modules/Controller.d.ts +251 -0
  201. package/types/modules/Figure.d.ts +517 -0
  202. package/types/modules/FileManager.d.ts +202 -0
  203. package/types/modules/HueSlider.d.ts +136 -0
  204. package/types/modules/Modal.d.ts +111 -0
  205. package/types/modules/ModalAnchorEditor.d.ts +236 -0
  206. package/types/modules/SelectMenu.d.ts +194 -0
  207. package/types/modules/_DragHandle.d.ts +7 -0
  208. package/types/modules/index.d.ts +26 -0
  209. package/types/plugins/browser/audioGallery.d.ts +55 -0
  210. package/types/plugins/browser/fileBrowser.d.ts +64 -0
  211. package/types/plugins/browser/fileGallery.d.ts +55 -0
  212. package/types/plugins/browser/imageGallery.d.ts +51 -0
  213. package/types/plugins/browser/videoGallery.d.ts +57 -0
  214. package/types/plugins/command/blockquote.d.ts +28 -0
  215. package/types/plugins/command/exportPDF.d.ts +46 -0
  216. package/types/plugins/command/fileUpload.d.ts +156 -0
  217. package/types/plugins/command/list_bulleted.d.ts +46 -0
  218. package/types/plugins/command/list_numbered.d.ts +46 -0
  219. package/types/plugins/dropdown/align.d.ts +60 -0
  220. package/types/plugins/dropdown/backgroundColor.d.ts +63 -0
  221. package/types/plugins/dropdown/font.d.ts +54 -0
  222. package/types/plugins/dropdown/fontColor.d.ts +63 -0
  223. package/types/plugins/dropdown/formatBlock.d.ts +54 -0
  224. package/types/plugins/dropdown/hr.d.ts +71 -0
  225. package/types/plugins/dropdown/layout.d.ts +40 -0
  226. package/types/plugins/dropdown/lineHeight.d.ts +50 -0
  227. package/types/plugins/dropdown/list.d.ts +39 -0
  228. package/types/plugins/dropdown/paragraphStyle.d.ts +54 -0
  229. package/types/plugins/dropdown/table.d.ts +627 -0
  230. package/types/plugins/dropdown/template.d.ts +40 -0
  231. package/types/plugins/dropdown/textStyle.d.ts +41 -0
  232. package/types/plugins/field/mention.d.ts +102 -0
  233. package/types/plugins/index.d.ts +107 -0
  234. package/types/plugins/input/fontSize.d.ts +170 -0
  235. package/types/plugins/input/pageNavigator.d.ts +28 -0
  236. package/types/plugins/modal/audio.d.ts +269 -0
  237. package/types/plugins/modal/drawing.d.ts +246 -0
  238. package/types/plugins/modal/embed.d.ts +387 -0
  239. package/types/plugins/modal/image.d.ts +451 -0
  240. package/types/plugins/modal/link.d.ts +128 -0
  241. package/types/plugins/modal/math.d.ts +193 -0
  242. package/types/plugins/modal/video.d.ts +485 -0
  243. package/types/plugins/popup/anchor.d.ts +56 -0
  244. package/types/suneditor.d.ts +51 -0
  245. package/types/typedef.d.ts +233 -0
  246. package/.eslintignore +0 -7
  247. package/.eslintrc.json +0 -64
  248. package/src/assets/icons/_default.js +0 -194
  249. package/src/core/base/events.js +0 -320
  250. package/src/core/class/notice.js +0 -42
  251. package/src/helper/domUtils.js +0 -1177
  252. package/src/modules/FileBrowser.js +0 -271
  253. package/src/plugins/command/exportPdf.js +0 -168
  254. package/src/plugins/fileBrowser/imageGallery.js +0 -81
  255. package/src/themes/test.css +0 -61
  256. package/typings/CommandPlugin.d.ts +0 -8
  257. package/typings/DialogPlugin.d.ts +0 -20
  258. package/typings/FileBrowserPlugin.d.ts +0 -30
  259. package/typings/Module.d.ts +0 -15
  260. package/typings/Plugin.d.ts +0 -42
  261. package/typings/SubmenuPlugin.d.ts +0 -8
  262. package/typings/_classes.d.ts +0 -17
  263. package/typings/_colorPicker.d.ts +0 -60
  264. package/typings/_core.d.ts +0 -55
  265. package/typings/align.d.ts +0 -5
  266. package/typings/audio.d.ts +0 -5
  267. package/typings/backgroundColor.d.ts +0 -5
  268. package/typings/blockquote.d.ts +0 -5
  269. package/typings/char.d.ts +0 -39
  270. package/typings/component.d.ts +0 -38
  271. package/typings/context.d.ts +0 -39
  272. package/typings/converter.d.ts +0 -33
  273. package/typings/dialog.d.ts +0 -28
  274. package/typings/domUtils.d.ts +0 -361
  275. package/typings/editor.d.ts +0 -7
  276. package/typings/editor.ts +0 -542
  277. package/typings/env.d.ts +0 -70
  278. package/typings/eventManager.d.ts +0 -37
  279. package/typings/events.d.ts +0 -262
  280. package/typings/fileBrowser.d.ts +0 -42
  281. package/typings/fileManager.d.ts +0 -67
  282. package/typings/font.d.ts +0 -5
  283. package/typings/fontColor.d.ts +0 -5
  284. package/typings/fontSize.d.ts +0 -5
  285. package/typings/format.d.ts +0 -191
  286. package/typings/formatBlock.d.ts +0 -5
  287. package/typings/history.d.ts +0 -48
  288. package/typings/horizontalRule.d.ts +0 -5
  289. package/typings/image.d.ts +0 -5
  290. package/typings/imageGallery.d.ts +0 -5
  291. package/typings/index.d.ts +0 -21
  292. package/typings/index.modules.d.ts +0 -11
  293. package/typings/index.plugins.d.ts +0 -58
  294. package/typings/lineHeight.d.ts +0 -5
  295. package/typings/link.d.ts +0 -5
  296. package/typings/list.d.ts +0 -5
  297. package/typings/math.d.ts +0 -5
  298. package/typings/mediaContainer.d.ts +0 -25
  299. package/typings/mention.d.ts +0 -5
  300. package/typings/node.d.ts +0 -57
  301. package/typings/notice.d.ts +0 -16
  302. package/typings/numbers.d.ts +0 -29
  303. package/typings/offset.d.ts +0 -24
  304. package/typings/options.d.ts +0 -589
  305. package/typings/paragraphStyle.d.ts +0 -5
  306. package/typings/resizing.d.ts +0 -141
  307. package/typings/selection.d.ts +0 -94
  308. package/typings/shortcuts.d.ts +0 -13
  309. package/typings/suneditor.d.ts +0 -9
  310. package/typings/table.d.ts +0 -5
  311. package/typings/template.d.ts +0 -5
  312. package/typings/textStyle.d.ts +0 -5
  313. package/typings/toolbar.d.ts +0 -32
  314. package/typings/unicode.d.ts +0 -25
  315. package/typings/video.d.ts +0 -5
@@ -0,0 +1,56 @@
1
+ export default Anchor;
2
+ /**
3
+ * @class
4
+ * @description Anchor plugin
5
+ * - Allows you to create, edit, and delete elements that act as anchors (bookmarks) within a document.
6
+ */
7
+ declare class Anchor extends EditorInjector {
8
+ static key: string;
9
+ static type: string;
10
+ static className: string;
11
+ /**
12
+ * @this {Anchor}
13
+ * @param {HTMLElement} node - The node to check.
14
+ * @returns {HTMLElement|null} Returns a node if the node is a valid component.
15
+ */
16
+ static component(this: Anchor, node: HTMLElement): HTMLElement | null;
17
+ title: any;
18
+ icon: string;
19
+ bookmarkIcon: HTMLElement;
20
+ _element: HTMLElement;
21
+ _range: Range;
22
+ displayId: Element;
23
+ controllerSelect: Controller;
24
+ inputEl: HTMLInputElement;
25
+ controller: Controller;
26
+ /**
27
+ * @editorMethod Editor.Plugin<popup>
28
+ * @description Displays a popup and gives focus to the input field.
29
+ */
30
+ show(): void;
31
+ /**
32
+ * @editorMethod Editor.component
33
+ * @description Executes the method that is called when a component of a plugin is selected.
34
+ * @param {HTMLElement} target Target component element
35
+ */
36
+ select(target: HTMLElement): void;
37
+ /**
38
+ * @editorMethod Editor.Component
39
+ * @description Called when a container is deselected.
40
+ */
41
+ deselect(): void;
42
+ /**
43
+ * @editorMethod Modules.Controller
44
+ * @description Executes the method that is called when a button is clicked in the "controller".
45
+ * @param {HTMLButtonElement} target Target button element
46
+ */
47
+ controllerAction(target: HTMLButtonElement): void;
48
+ /**
49
+ * @private
50
+ * @description Initializes state variables.
51
+ * - called when the popup is closed
52
+ */
53
+ private _init;
54
+ }
55
+ import EditorInjector from '../../editorInjector';
56
+ import { Controller } from '../../modules';
@@ -0,0 +1,51 @@
1
+ declare namespace _default {
2
+ /**
3
+ * Returns the create function with preset options.
4
+ * If the options overlap, the options of the 'create' function take precedence.
5
+ * @param {EditorInitOptions_suneditor} init_options - Initialization options
6
+ * @returns {{create: (targets: Element|Object<string, {target: Element, options: EditorFrameOptions_suneditor}>, options: EditorInitOptions_suneditor) => Editor}}}
7
+ */
8
+ function init(init_options: EditorInitOptions_suneditor): {
9
+ create: (
10
+ targets:
11
+ | Element
12
+ | {
13
+ [x: string]: {
14
+ target: Element;
15
+ options: EditorFrameOptions_suneditor;
16
+ };
17
+ },
18
+ options: EditorInitOptions_suneditor
19
+ ) => Editor;
20
+ };
21
+ /**
22
+ * Creates a new instance of the SunEditor
23
+ * @param {Element|Object<string, {target: Element, options: EditorFrameOptions_suneditor}>} target - Target element or multi-root object
24
+ * @param {EditorInitOptions_suneditor} options - Initialization options
25
+ * @param {EditorInitOptions_suneditor} [_init_options] - Optional preset initialization options
26
+ * @returns {Editor} - Instance of the SunEditor
27
+ * @throws {Error} If the target element is not provided or is invalid
28
+ */
29
+ function create(
30
+ target:
31
+ | Element
32
+ | {
33
+ [x: string]: {
34
+ target: Element;
35
+ options: EditorFrameOptions_suneditor;
36
+ };
37
+ },
38
+ options: EditorInitOptions_suneditor,
39
+ _init_options?: EditorInitOptions_suneditor
40
+ ): Editor;
41
+ }
42
+ export default _default;
43
+ export type EditorFrameOptions_suneditor = import('./core/section/constructor').EditorFrameOptions;
44
+ export type EditorInitOptions_suneditor = import('./core/section/constructor').EditorInitOptions;
45
+ import EditorInjector from './editorInjector';
46
+ import Plugins from './plugins';
47
+ import Modules from './modules';
48
+ import Langs from './langs';
49
+ import Helper from './helper';
50
+ import Editor from './core/editor';
51
+ export { EditorInjector, Plugins, Modules, Langs, Helper };
@@ -0,0 +1,233 @@
1
+ export {};
2
+
3
+ declare global {
4
+ type __se__NodeCollection = Array<Node> | HTMLCollection | NodeList;
5
+ type __se__EditorCore = import('./core/editor').default;
6
+ type __se__EditorInjector = import('./editorInjector').default;
7
+ type __se__CoreInjector = import('./editorInjector/_core').default;
8
+ type __se__ComponentInfo = {
9
+ /**
10
+ * - The target element associated with the component.
11
+ */
12
+ target: HTMLElement;
13
+ /**
14
+ * - The name of the plugin related to the component.
15
+ */
16
+ pluginName: string;
17
+ /**
18
+ * - Options related to the component.
19
+ */
20
+ options: {
21
+ [x: string]: any;
22
+ };
23
+ /**
24
+ * - The main container element for the component.
25
+ */
26
+ container: HTMLElement;
27
+ /**
28
+ * - The cover element, if applicable.
29
+ */
30
+ cover: HTMLElement | null;
31
+ /**
32
+ * - The inline cover element, if applicable.
33
+ */
34
+ inlineCover: HTMLElement | null;
35
+ /**
36
+ * - The caption element, if applicable.
37
+ */
38
+ caption: HTMLElement | null;
39
+ /**
40
+ * - Whether the component is a file-related component.
41
+ */
42
+ isFile: boolean;
43
+ /**
44
+ * - The element that triggered the component, if applicable.
45
+ */
46
+ launcher: HTMLElement | null;
47
+ /**
48
+ * - Whether the component is an input component (e.g., table).
49
+ */
50
+ isInputType: boolean;
51
+ };
52
+ type __se__EditorStatus = {
53
+ /**
54
+ * Boolean value of whether the editor has focus
55
+ */
56
+ hasFocus: boolean;
57
+ /**
58
+ * Indent size of tab (4)
59
+ */
60
+ tabSize: number;
61
+ /**
62
+ * Indent size (25)px
63
+ */
64
+ indentSize: number;
65
+ /**
66
+ * Indent size of Code view mode (2)
67
+ */
68
+ codeIndentSize: number;
69
+ /**
70
+ * An element array of the current cursor's node structure
71
+ */
72
+ currentNodes: Array<string>;
73
+ /**
74
+ * An element name array of the current cursor's node structure
75
+ */
76
+ currentNodesMap: Array<string>;
77
+ /**
78
+ * Boolean value of whether component is selected
79
+ */
80
+ onSelected: boolean;
81
+ /**
82
+ * Current root key
83
+ */
84
+ rootKey: number;
85
+ /**
86
+ * Current range object
87
+ */
88
+ _range: Range;
89
+ /**
90
+ * Mouse down event status
91
+ */
92
+ _onMousedown: boolean;
93
+ };
94
+ type __se__EventInfo = {
95
+ /**
96
+ * Target element
97
+ */
98
+ target: any;
99
+ /**
100
+ * Event type
101
+ */
102
+ type: string;
103
+ /**
104
+ * Event listener
105
+ */
106
+ listener: (...args: any) => any;
107
+ /**
108
+ * Event useCapture option
109
+ */
110
+ useCapture?: (boolean | AddEventListenerOptions) | undefined;
111
+ };
112
+ type __se__GlobalEventInfo = {
113
+ /**
114
+ * Event type
115
+ */
116
+ type: string;
117
+ /**
118
+ * Event listener
119
+ */
120
+ listener: (...args: any) => any;
121
+ /**
122
+ * Use event capture
123
+ */
124
+ useCapture?: (boolean | AddEventListenerOptions) | undefined;
125
+ };
126
+ type __se__PluginMouseEventInfo = {
127
+ /**
128
+ * Frame context
129
+ */
130
+ frameContext: __se__FrameContext;
131
+ /**
132
+ * Event object
133
+ */
134
+ event: MouseEvent;
135
+ };
136
+ type __se__PluginKeyEventInfo = {
137
+ /**
138
+ * Frame context
139
+ */
140
+ frameContext: __se__FrameContext;
141
+ /**
142
+ * Event object
143
+ */
144
+ event: KeyboardEvent;
145
+ /**
146
+ * range object
147
+ */
148
+ range: Range;
149
+ /**
150
+ * Current line element
151
+ */
152
+ line: HTMLElement;
153
+ };
154
+ type __se__PluginToolbarInputChangeEventInfo = {
155
+ /**
156
+ * Input element
157
+ */
158
+ target: HTMLElement;
159
+ /**
160
+ * Event object
161
+ */
162
+ event: Event;
163
+ /**
164
+ * Input value
165
+ */
166
+ value: string;
167
+ };
168
+ /**
169
+ * Information of the "shortcut" plugin
170
+ */
171
+ type __se__PluginShortcutInfo = {
172
+ /**
173
+ * - Range object
174
+ */
175
+ range: Range;
176
+ /**
177
+ * - The line element of the current range
178
+ */
179
+ line: HTMLElement;
180
+ /**
181
+ * - Information of the shortcut
182
+ */
183
+ info: import('./core/class/shortcuts').ShortcutInfo;
184
+ /**
185
+ * - Key event object
186
+ */
187
+ event: KeyboardEvent;
188
+ /**
189
+ * - KeyBoardEvent.code
190
+ */
191
+ keyCode: string;
192
+ /**
193
+ * - The root editor instance
194
+ */
195
+ editor: __se__EditorCore;
196
+ };
197
+ type __se__PluginPasteParams = {
198
+ /**
199
+ * Frame context
200
+ */
201
+ frameContext: __se__FrameContext;
202
+ /**
203
+ * Clipboard event object
204
+ */
205
+ event: ClipboardEvent;
206
+ /**
207
+ * Format cleaned paste data (HTML string)
208
+ */
209
+ data: string;
210
+ /**
211
+ * DomParser data (new DOMParser().parseFromString(data, 'text/html');)
212
+ */
213
+ doc: Document;
214
+ };
215
+ type __se__PluginCopyComponentParams = {
216
+ /**
217
+ * Clipboard event object
218
+ */
219
+ event: ClipboardEvent;
220
+ /**
221
+ * Cloned component container
222
+ */
223
+ cloneContainer: HTMLElement;
224
+ /**
225
+ * Component information
226
+ */
227
+ info: __se__ComponentInfo;
228
+ };
229
+ type __se__FrameOptions = Map<string, any>;
230
+ type __se__FrameContext = Map<string, any>;
231
+ type __se__Context = Map<string, any>;
232
+ type __se__Class_OffsetGlobalInfo = import('./core/class/offset').OffsetGlobalInfo;
233
+ }
package/.eslintignore DELETED
@@ -1,7 +0,0 @@
1
- node_modules
2
- dist
3
- sample
4
- test
5
- karma.conf.js
6
- webpack/**/*
7
- **/*.css
package/.eslintrc.json DELETED
@@ -1,64 +0,0 @@
1
- {
2
- "plugins": ["prettier", "@typescript-eslint"],
3
- "extends": ["eslint:recommended", "plugin:prettier/recommended", "plugin:@typescript-eslint/eslint-recommended", "plugin:@typescript-eslint/recommended"],
4
- "parser": "@typescript-eslint/parser",
5
- "parserOptions": {
6
- "ecmaVersion": 2020,
7
- "sourceType": "module"
8
- },
9
- "env": {
10
- "browser": true,
11
- "node": true,
12
- "es6": true
13
- },
14
- "globals": {
15
- "ActiveXObject": "writable",
16
- "Selection": "writable",
17
- "Node": "writable",
18
- "Range": "writable"
19
- },
20
- "rules": {
21
- "eqeqeq": "error",
22
- "strict": ["error", "safe"],
23
- "no-undef": "error",
24
- "no-unused-vars": "warn",
25
- "no-loop-func": "off",
26
- "no-shadow": "error",
27
- "no-unused-expressions": "off",
28
- "curly": "off",
29
- "prefer-const": "error",
30
- "no-var": "error",
31
- "no-console": ["warn", { "allow": ["warn", "error"] }],
32
- "prettier/prettier": [
33
- "error",
34
- {
35
- "arrowParens": "always",
36
- "bracketSpacing": true,
37
- "endOfLine": "auto",
38
- "htmlWhitespaceSensitivity": "css",
39
- "insertPragma": false,
40
- "jsxBracketSameLine": false,
41
- "jsxSingleQuote": true,
42
- "printWidth": 240,
43
- "proseWrap": "preserve",
44
- "quoteProps": "as-needed",
45
- "requirePragma": false,
46
- "semi": true,
47
- "singleQuote": true,
48
- "tabWidth": 4,
49
- "trailingComma": "none",
50
- "useTabs": true,
51
- "vueIndentScriptAndStyle": false
52
- }
53
- ]
54
- },
55
- "overrides": [
56
- {
57
- "files": ["*.d.ts"],
58
- "rules": {
59
- "no-unused-vars": "off",
60
- "@typescript-eslint/no-unused-vars": "off"
61
- }
62
- }
63
- ]
64
- }