suneditor 3.0.0-beta.2 → 3.0.0-beta.20

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 (177) hide show
  1. package/CONTRIBUTING.md +186 -184
  2. package/LICENSE +21 -21
  3. package/README.md +157 -180
  4. package/dist/suneditor.min.css +1 -1
  5. package/dist/suneditor.min.js +1 -1
  6. package/package.json +126 -123
  7. package/src/assets/design/color.css +131 -121
  8. package/src/assets/design/index.css +3 -3
  9. package/src/assets/design/size.css +37 -35
  10. package/src/assets/design/typography.css +37 -37
  11. package/src/assets/icons/defaultIcons.js +247 -232
  12. package/src/assets/suneditor-contents.css +779 -778
  13. package/src/assets/suneditor.css +43 -35
  14. package/src/core/base/eventHandlers/handler_toolbar.js +135 -135
  15. package/src/core/base/eventHandlers/handler_ww_clipboard.js +56 -56
  16. package/src/core/base/eventHandlers/handler_ww_dragDrop.js +115 -113
  17. package/src/core/base/eventHandlers/handler_ww_key_input.js +1200 -1200
  18. package/src/core/base/eventHandlers/handler_ww_mouse.js +194 -194
  19. package/src/core/base/eventManager.js +1550 -1484
  20. package/src/core/base/history.js +355 -355
  21. package/src/core/class/char.js +163 -162
  22. package/src/core/class/component.js +856 -842
  23. package/src/core/class/format.js +3433 -3422
  24. package/src/core/class/html.js +1927 -1890
  25. package/src/core/class/menu.js +357 -346
  26. package/src/core/class/nodeTransform.js +424 -424
  27. package/src/core/class/offset.js +858 -891
  28. package/src/core/class/selection.js +710 -620
  29. package/src/core/class/shortcuts.js +98 -98
  30. package/src/core/class/toolbar.js +438 -430
  31. package/src/core/class/ui.js +424 -422
  32. package/src/core/class/viewer.js +750 -750
  33. package/src/core/editor.js +1810 -1708
  34. package/src/core/section/actives.js +268 -241
  35. package/src/core/section/constructor.js +1348 -1661
  36. package/src/core/section/context.js +102 -102
  37. package/src/core/section/documentType.js +582 -561
  38. package/src/core/section/options.js +367 -0
  39. package/src/core/util/instanceCheck.js +59 -0
  40. package/src/editorInjector/_classes.js +36 -36
  41. package/src/editorInjector/_core.js +92 -92
  42. package/src/editorInjector/index.js +75 -75
  43. package/src/events.js +634 -622
  44. package/src/helper/clipboard.js +59 -59
  45. package/src/helper/converter.js +586 -564
  46. package/src/helper/dom/domCheck.js +304 -304
  47. package/src/helper/dom/domQuery.js +677 -669
  48. package/src/helper/dom/domUtils.js +618 -557
  49. package/src/helper/dom/index.js +12 -12
  50. package/src/helper/env.js +249 -240
  51. package/src/helper/index.js +25 -25
  52. package/src/helper/keyCodeMap.js +183 -183
  53. package/src/helper/numbers.js +72 -72
  54. package/src/helper/unicode.js +47 -47
  55. package/src/langs/ckb.js +231 -231
  56. package/src/langs/cs.js +231 -231
  57. package/src/langs/da.js +231 -231
  58. package/src/langs/de.js +231 -231
  59. package/src/langs/en.js +230 -230
  60. package/src/langs/es.js +231 -231
  61. package/src/langs/fa.js +231 -231
  62. package/src/langs/fr.js +231 -231
  63. package/src/langs/he.js +231 -231
  64. package/src/langs/hu.js +230 -230
  65. package/src/langs/index.js +28 -28
  66. package/src/langs/it.js +231 -231
  67. package/src/langs/ja.js +230 -230
  68. package/src/langs/km.js +230 -230
  69. package/src/langs/ko.js +230 -230
  70. package/src/langs/lv.js +231 -231
  71. package/src/langs/nl.js +231 -231
  72. package/src/langs/pl.js +231 -231
  73. package/src/langs/pt_br.js +231 -231
  74. package/src/langs/ro.js +231 -231
  75. package/src/langs/ru.js +231 -231
  76. package/src/langs/se.js +231 -231
  77. package/src/langs/tr.js +231 -231
  78. package/src/langs/uk.js +231 -231
  79. package/src/langs/ur.js +231 -231
  80. package/src/langs/zh_cn.js +231 -231
  81. package/src/modules/ApiManager.js +191 -191
  82. package/src/modules/Browser.js +669 -667
  83. package/src/modules/ColorPicker.js +364 -362
  84. package/src/modules/Controller.js +474 -454
  85. package/src/modules/Figure.js +1620 -1617
  86. package/src/modules/FileManager.js +359 -359
  87. package/src/modules/HueSlider.js +577 -565
  88. package/src/modules/Modal.js +346 -346
  89. package/src/modules/ModalAnchorEditor.js +643 -643
  90. package/src/modules/SelectMenu.js +549 -549
  91. package/src/modules/_DragHandle.js +17 -17
  92. package/src/modules/index.js +14 -14
  93. package/src/plugins/browser/audioGallery.js +83 -83
  94. package/src/plugins/browser/fileBrowser.js +103 -103
  95. package/src/plugins/browser/fileGallery.js +83 -83
  96. package/src/plugins/browser/imageGallery.js +81 -81
  97. package/src/plugins/browser/videoGallery.js +103 -103
  98. package/src/plugins/command/blockquote.js +61 -60
  99. package/src/plugins/command/exportPDF.js +134 -134
  100. package/src/plugins/command/fileUpload.js +456 -456
  101. package/src/plugins/command/list_bulleted.js +149 -148
  102. package/src/plugins/command/list_numbered.js +152 -151
  103. package/src/plugins/dropdown/align.js +157 -155
  104. package/src/plugins/dropdown/backgroundColor.js +108 -104
  105. package/src/plugins/dropdown/font.js +141 -137
  106. package/src/plugins/dropdown/fontColor.js +109 -105
  107. package/src/plugins/dropdown/formatBlock.js +170 -178
  108. package/src/plugins/dropdown/hr.js +152 -152
  109. package/src/plugins/dropdown/layout.js +83 -83
  110. package/src/plugins/dropdown/lineHeight.js +131 -130
  111. package/src/plugins/dropdown/list.js +123 -122
  112. package/src/plugins/dropdown/paragraphStyle.js +138 -138
  113. package/src/plugins/dropdown/table.js +4110 -4000
  114. package/src/plugins/dropdown/template.js +83 -83
  115. package/src/plugins/dropdown/textStyle.js +149 -149
  116. package/src/plugins/field/mention.js +242 -242
  117. package/src/plugins/index.js +120 -120
  118. package/src/plugins/input/fontSize.js +414 -410
  119. package/src/plugins/input/pageNavigator.js +71 -70
  120. package/src/plugins/modal/audio.js +677 -677
  121. package/src/plugins/modal/drawing.js +537 -531
  122. package/src/plugins/modal/embed.js +886 -886
  123. package/src/plugins/modal/image.js +1377 -1376
  124. package/src/plugins/modal/link.js +248 -240
  125. package/src/plugins/modal/math.js +563 -563
  126. package/src/plugins/modal/video.js +1226 -1226
  127. package/src/plugins/popup/anchor.js +224 -222
  128. package/src/suneditor.js +114 -107
  129. package/src/themes/dark.css +132 -122
  130. package/src/typedef.js +132 -130
  131. package/types/assets/icons/defaultIcons.d.ts +8 -0
  132. package/types/core/base/eventManager.d.ts +29 -4
  133. package/types/core/class/char.d.ts +2 -1
  134. package/types/core/class/component.d.ts +1 -2
  135. package/types/core/class/format.d.ts +8 -1
  136. package/types/core/class/html.d.ts +8 -0
  137. package/types/core/class/menu.d.ts +8 -0
  138. package/types/core/class/offset.d.ts +24 -26
  139. package/types/core/class/selection.d.ts +2 -0
  140. package/types/core/class/toolbar.d.ts +6 -0
  141. package/types/core/class/ui.d.ts +1 -1
  142. package/types/core/editor.d.ts +34 -12
  143. package/types/core/section/constructor.d.ts +5 -638
  144. package/types/core/section/documentType.d.ts +12 -2
  145. package/types/core/section/options.d.ts +740 -0
  146. package/types/core/util/instanceCheck.d.ts +50 -0
  147. package/types/editorInjector/_core.d.ts +5 -5
  148. package/types/editorInjector/index.d.ts +2 -2
  149. package/types/events.d.ts +2 -0
  150. package/types/helper/converter.d.ts +9 -0
  151. package/types/helper/dom/domQuery.d.ts +5 -5
  152. package/types/helper/dom/domUtils.d.ts +8 -0
  153. package/types/helper/env.d.ts +6 -1
  154. package/types/helper/index.d.ts +4 -1
  155. package/types/index.d.ts +122 -120
  156. package/types/langs/_Lang.d.ts +194 -194
  157. package/types/modules/ColorPicker.d.ts +5 -1
  158. package/types/modules/Controller.d.ts +8 -4
  159. package/types/modules/Figure.d.ts +2 -1
  160. package/types/modules/HueSlider.d.ts +4 -1
  161. package/types/modules/SelectMenu.d.ts +1 -1
  162. package/types/plugins/command/blockquote.d.ts +1 -0
  163. package/types/plugins/command/list_bulleted.d.ts +1 -0
  164. package/types/plugins/command/list_numbered.d.ts +1 -0
  165. package/types/plugins/dropdown/align.d.ts +1 -0
  166. package/types/plugins/dropdown/backgroundColor.d.ts +1 -0
  167. package/types/plugins/dropdown/font.d.ts +1 -0
  168. package/types/plugins/dropdown/fontColor.d.ts +1 -0
  169. package/types/plugins/dropdown/formatBlock.d.ts +3 -2
  170. package/types/plugins/dropdown/lineHeight.d.ts +1 -0
  171. package/types/plugins/dropdown/list.d.ts +1 -0
  172. package/types/plugins/dropdown/table.d.ts +6 -0
  173. package/types/plugins/input/fontSize.d.ts +1 -0
  174. package/types/plugins/modal/drawing.d.ts +4 -0
  175. package/types/plugins/modal/link.d.ts +32 -15
  176. package/types/suneditor.d.ts +13 -9
  177. package/types/typedef.d.ts +8 -0
@@ -1,12 +1,12 @@
1
1
  export default Editor;
2
- export type EditorInitOptions_editor = import('./section/constructor').EditorInitOptions;
3
- export type EditorFrameOptions_editor = import('./section/constructor').EditorFrameOptions;
2
+ export type EditorInitOptions_editor = import('./section/options').EditorInitOptions;
3
+ export type EditorFrameOptions_editor = import('./section/options').EditorFrameOptions;
4
4
  export type ControllerInfo_editor = import('../modules/Controller').ControllerInfo;
5
5
  /**
6
- * @typedef {import('./section/constructor').EditorInitOptions} EditorInitOptions_editor
6
+ * @typedef {import('./section/options').EditorInitOptions} EditorInitOptions_editor
7
7
  */
8
8
  /**
9
- * @typedef {import('./section/constructor').EditorFrameOptions} EditorFrameOptions_editor
9
+ * @typedef {import('./section/options').EditorFrameOptions} EditorFrameOptions_editor
10
10
  */
11
11
  /**
12
12
  * @typedef {import('../modules/Controller').ControllerInfo} ControllerInfo_editor
@@ -27,10 +27,10 @@ declare function Editor(
27
27
  ): void;
28
28
  declare class Editor {
29
29
  /**
30
- * @typedef {import('./section/constructor').EditorInitOptions} EditorInitOptions_editor
30
+ * @typedef {import('./section/options').EditorInitOptions} EditorInitOptions_editor
31
31
  */
32
32
  /**
33
- * @typedef {import('./section/constructor').EditorFrameOptions} EditorFrameOptions_editor
33
+ * @typedef {import('./section/options').EditorFrameOptions} EditorFrameOptions_editor
34
34
  */
35
35
  /**
36
36
  * @typedef {import('../modules/Controller').ControllerInfo} ControllerInfo_editor
@@ -228,6 +228,8 @@ declare class Editor {
228
228
  history: ReturnType<typeof import('./base/history').default>;
229
229
  /** @description EventManager class instance @type {import('./base/eventManager').default} */
230
230
  eventManager: import('./base/eventManager').default;
231
+ /** @description iframe-safe instanceof check utility class @type {import('./util/instanceCheck').default} */
232
+ instanceCheck: import('./util/instanceCheck').default;
231
233
  /** @description Toolbar class instance @type {import('./class/toolbar').default} */
232
234
  toolbar: import('./class/toolbar').default;
233
235
  /** @description Sub-Toolbar class instance @type {import('./class/toolbar').default|null} */
@@ -266,9 +268,11 @@ declare class Editor {
266
268
  _lineBreaker_b: HTMLElement;
267
269
  /**
268
270
  * @description Closest ShadowRoot to editor if found
269
- * @type {ShadowRoot}
271
+ * @type {ShadowRoot & { getSelection?: () => Selection }} - Chromium-based browsers (Chrome, Edge, etc.) has a getSelection method on the ShadowRoot
270
272
  */
271
- _shadowRoot: ShadowRoot;
273
+ _shadowRoot: ShadowRoot & {
274
+ getSelection?: () => Selection;
275
+ };
272
276
  /**
273
277
  * @description Plugin call event map
274
278
  * @type {Map<string, Array<((...args: *) => *) & { index: number }>>}
@@ -333,10 +337,15 @@ declare class Editor {
333
337
  */
334
338
  _notHideToolbar: boolean;
335
339
  /**
336
- * @description Variables for controlling focus and blur events
340
+ * @description Variables for controlling blur events
337
341
  * @type {boolean}
338
342
  */
339
343
  _preventBlur: boolean;
344
+ /**
345
+ * @description Variables for controlling focus events
346
+ * @type {boolean}
347
+ */
348
+ _preventFocus: boolean;
340
349
  /**
341
350
  * @description Variables for controlling selection change events
342
351
  */
@@ -353,9 +362,15 @@ declare class Editor {
353
362
  _componentsInfoReset: boolean;
354
363
  /**
355
364
  * @description plugin retainFormat info Map()
356
- * @type {Map<string, ((...args: *) => *)>}
365
+ * @type {Map<string, { key: string, method: (...args: *) => * }>}
357
366
  */
358
- _MELInfo: Map<string, (...args: any) => any>;
367
+ _MELInfo: Map<
368
+ string,
369
+ {
370
+ key: string;
371
+ method: (...args: any) => any;
372
+ }
373
+ >;
359
374
  /**
360
375
  * @description Properties for managing files in the "FileManager" module
361
376
  * @type {Array<*>}
@@ -456,6 +471,13 @@ declare class Editor {
456
471
  * @param {*} rootKey
457
472
  */
458
473
  changeFrameContext(rootKey: any): void;
474
+ /**
475
+ * @description Sets a CSS variable on the root element of the editor.
476
+ * If the editor is using an iframe or multi root applies it to all iframe roots instead.
477
+ * @param {string} name - The CSS variable name (e.g. `--se-color-primary`)
478
+ * @param {string} value - The CSS variable value
479
+ */
480
+ setRootCssVar(name: string, value: string): void;
459
481
  /**
460
482
  * @description javascript execCommand
461
483
  * @param {string} command javascript execCommand function property
@@ -570,7 +592,7 @@ declare class Editor {
570
592
  __saveCommandButtons(cmdButtons: Map<string, Element>, tray: Element): void;
571
593
  /**
572
594
  * @private
573
- * @description Caches shortcut keys for commands.
595
+ * @description Caches custom(starts with "_") shortcut keys for commands.
574
596
  */
575
597
  __cachingShortcuts(): void;
576
598
  /**