suneditor 3.0.0-beta.9 → 3.0.0-rc.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 (380) hide show
  1. package/README.md +65 -57
  2. package/dist/suneditor-contents.min.css +1 -0
  3. package/dist/suneditor.min.css +1 -1
  4. package/dist/suneditor.min.js +1 -1
  5. package/package.json +110 -61
  6. package/src/assets/design/color.css +36 -17
  7. package/src/assets/design/size.css +2 -0
  8. package/src/assets/icons/defaultIcons.js +17 -2
  9. package/src/assets/suneditor-contents.css +51 -16
  10. package/src/assets/suneditor.css +116 -43
  11. package/src/core/config/contextProvider.js +288 -0
  12. package/src/core/config/eventManager.js +188 -0
  13. package/src/core/config/instanceCheck.js +59 -0
  14. package/src/core/config/optionProvider.js +452 -0
  15. package/src/core/editor.js +166 -1637
  16. package/src/core/event/actions/index.js +229 -0
  17. package/src/core/event/effects/common.registry.js +74 -0
  18. package/src/core/event/effects/keydown.registry.js +573 -0
  19. package/src/core/event/effects/ruleHelpers.js +148 -0
  20. package/src/core/event/eventOrchestrator.js +944 -0
  21. package/src/core/event/executor.js +27 -0
  22. package/src/core/{base/eventHandlers → event/handlers}/handler_toolbar.js +27 -28
  23. package/src/core/{base/eventHandlers → event/handlers}/handler_ww_clipboard.js +10 -8
  24. package/src/core/{base/eventHandlers → event/handlers}/handler_ww_dragDrop.js +22 -23
  25. package/src/core/event/handlers/handler_ww_input.js +75 -0
  26. package/src/core/event/handlers/handler_ww_key.js +228 -0
  27. package/src/core/event/handlers/handler_ww_mouse.js +166 -0
  28. package/src/core/event/ports.js +211 -0
  29. package/src/core/event/reducers/keydown.reducer.js +97 -0
  30. package/src/core/event/rules/keydown.rule.arrow.js +63 -0
  31. package/src/core/event/rules/keydown.rule.backspace.js +208 -0
  32. package/src/core/event/rules/keydown.rule.delete.js +132 -0
  33. package/src/core/event/rules/keydown.rule.enter.js +150 -0
  34. package/src/core/event/rules/keydown.rule.tab.js +35 -0
  35. package/src/core/event/support/defaultLineManager.js +136 -0
  36. package/src/core/event/support/selectionState.js +204 -0
  37. package/src/core/kernel/coreKernel.js +320 -0
  38. package/src/core/kernel/kernelInjector.js +19 -0
  39. package/src/core/kernel/store.js +173 -0
  40. package/src/core/{class → logic/dom}/char.js +42 -45
  41. package/src/core/logic/dom/format.js +1075 -0
  42. package/src/core/{class → logic/dom}/html.js +743 -624
  43. package/src/core/logic/dom/inline.js +1847 -0
  44. package/src/core/logic/dom/listFormat.js +601 -0
  45. package/src/core/{class → logic/dom}/nodeTransform.js +92 -72
  46. package/src/core/{class → logic/dom}/offset.js +254 -317
  47. package/src/core/logic/dom/selection.js +754 -0
  48. package/src/core/logic/panel/menu.js +389 -0
  49. package/src/core/logic/panel/toolbar.js +449 -0
  50. package/src/core/logic/panel/viewer.js +761 -0
  51. package/src/core/logic/shell/_commandExecutor.js +380 -0
  52. package/src/core/logic/shell/commandDispatcher.js +241 -0
  53. package/src/core/logic/shell/component.js +970 -0
  54. package/src/core/logic/shell/focusManager.js +110 -0
  55. package/src/core/{base → logic/shell}/history.js +110 -60
  56. package/src/core/logic/shell/pluginManager.js +363 -0
  57. package/src/core/logic/shell/shortcuts.js +130 -0
  58. package/src/core/logic/shell/ui.js +904 -0
  59. package/src/core/schema/context.js +66 -0
  60. package/src/core/schema/frameContext.js +160 -0
  61. package/src/core/schema/options.js +628 -0
  62. package/src/core/section/constructor.js +194 -500
  63. package/src/core/section/documentType.js +297 -222
  64. package/src/events.js +808 -543
  65. package/src/helper/clipboard.js +27 -16
  66. package/src/helper/converter.js +100 -78
  67. package/src/helper/dom/domCheck.js +56 -30
  68. package/src/helper/dom/domQuery.js +159 -89
  69. package/src/helper/dom/domUtils.js +114 -49
  70. package/src/helper/dom/index.js +5 -1
  71. package/src/helper/env.js +26 -26
  72. package/src/helper/index.js +1 -1
  73. package/src/helper/keyCodeMap.js +25 -28
  74. package/src/helper/numbers.js +4 -8
  75. package/src/helper/unicode.js +4 -8
  76. package/src/hooks/base.js +307 -0
  77. package/src/hooks/params.js +130 -0
  78. package/src/interfaces/contracts.js +227 -0
  79. package/src/interfaces/index.js +7 -0
  80. package/src/interfaces/plugins.js +239 -0
  81. package/src/langs/ckb.js +4 -4
  82. package/src/langs/cs.js +4 -4
  83. package/src/langs/da.js +4 -4
  84. package/src/langs/de.js +4 -4
  85. package/src/langs/en.js +4 -4
  86. package/src/langs/es.js +4 -4
  87. package/src/langs/fa.js +4 -4
  88. package/src/langs/fr.js +4 -4
  89. package/src/langs/he.js +4 -4
  90. package/src/langs/hu.js +4 -4
  91. package/src/langs/it.js +4 -4
  92. package/src/langs/ja.js +4 -4
  93. package/src/langs/km.js +4 -4
  94. package/src/langs/ko.js +4 -4
  95. package/src/langs/lv.js +4 -4
  96. package/src/langs/nl.js +4 -4
  97. package/src/langs/pl.js +4 -4
  98. package/src/langs/pt_br.js +13 -13
  99. package/src/langs/ro.js +4 -4
  100. package/src/langs/ru.js +4 -4
  101. package/src/langs/se.js +4 -4
  102. package/src/langs/tr.js +4 -4
  103. package/src/langs/uk.js +4 -4
  104. package/src/langs/ur.js +4 -4
  105. package/src/langs/zh_cn.js +4 -4
  106. package/src/modules/{Browser.js → contract/Browser.js} +119 -128
  107. package/src/modules/{ColorPicker.js → contract/ColorPicker.js} +132 -142
  108. package/src/modules/contract/Controller.js +589 -0
  109. package/src/modules/{Figure.js → contract/Figure.js} +591 -411
  110. package/src/modules/{HueSlider.js → contract/HueSlider.js} +125 -86
  111. package/src/modules/contract/Modal.js +357 -0
  112. package/src/modules/contract/index.js +9 -0
  113. package/src/modules/manager/ApiManager.js +197 -0
  114. package/src/modules/{FileManager.js → manager/FileManager.js} +128 -160
  115. package/src/modules/manager/index.js +5 -0
  116. package/src/modules/{ModalAnchorEditor.js → ui/ModalAnchorEditor.js} +108 -138
  117. package/src/modules/{SelectMenu.js → ui/SelectMenu.js} +119 -120
  118. package/src/modules/{_DragHandle.js → ui/_DragHandle.js} +1 -1
  119. package/src/modules/ui/index.js +6 -0
  120. package/src/plugins/browser/audioGallery.js +23 -26
  121. package/src/plugins/browser/fileBrowser.js +25 -28
  122. package/src/plugins/browser/fileGallery.js +20 -23
  123. package/src/plugins/browser/imageGallery.js +24 -23
  124. package/src/plugins/browser/videoGallery.js +27 -29
  125. package/src/plugins/command/blockquote.js +11 -17
  126. package/src/plugins/command/exportPDF.js +26 -26
  127. package/src/plugins/command/fileUpload.js +138 -133
  128. package/src/plugins/command/list_bulleted.js +48 -44
  129. package/src/plugins/command/list_numbered.js +48 -44
  130. package/src/plugins/dropdown/align.js +64 -50
  131. package/src/plugins/dropdown/backgroundColor.js +34 -35
  132. package/src/plugins/dropdown/{formatBlock.js → blockStyle.js} +43 -37
  133. package/src/plugins/dropdown/font.js +50 -36
  134. package/src/plugins/dropdown/fontColor.js +34 -35
  135. package/src/plugins/dropdown/hr.js +55 -50
  136. package/src/plugins/dropdown/layout.js +20 -15
  137. package/src/plugins/dropdown/lineHeight.js +46 -30
  138. package/src/plugins/dropdown/list.js +32 -33
  139. package/src/plugins/dropdown/paragraphStyle.js +40 -34
  140. package/src/plugins/dropdown/table/index.js +915 -0
  141. package/src/plugins/dropdown/table/render/table.html.js +308 -0
  142. package/src/plugins/dropdown/table/render/table.menu.js +121 -0
  143. package/src/plugins/dropdown/table/services/table.cell.js +465 -0
  144. package/src/plugins/dropdown/table/services/table.clipboard.js +414 -0
  145. package/src/plugins/dropdown/table/services/table.grid.js +504 -0
  146. package/src/plugins/dropdown/table/services/table.resize.js +463 -0
  147. package/src/plugins/dropdown/table/services/table.selection.js +466 -0
  148. package/src/plugins/dropdown/table/services/table.style.js +844 -0
  149. package/src/plugins/dropdown/table/shared/table.constants.js +109 -0
  150. package/src/plugins/dropdown/table/shared/table.utils.js +219 -0
  151. package/src/plugins/dropdown/template.js +20 -15
  152. package/src/plugins/dropdown/textStyle.js +28 -22
  153. package/src/plugins/field/mention.js +54 -49
  154. package/src/plugins/index.js +5 -5
  155. package/src/plugins/input/fontSize.js +100 -97
  156. package/src/plugins/input/pageNavigator.js +13 -10
  157. package/src/plugins/modal/audio.js +208 -219
  158. package/src/plugins/modal/drawing.js +99 -104
  159. package/src/plugins/modal/embed.js +323 -312
  160. package/src/plugins/modal/image/index.js +942 -0
  161. package/src/plugins/modal/image/render/image.html.js +150 -0
  162. package/src/plugins/modal/image/services/image.size.js +198 -0
  163. package/src/plugins/modal/image/services/image.upload.js +216 -0
  164. package/src/plugins/modal/image/shared/image.constants.js +20 -0
  165. package/src/plugins/modal/link.js +74 -54
  166. package/src/plugins/modal/math.js +126 -119
  167. package/src/plugins/modal/video/index.js +858 -0
  168. package/src/plugins/modal/video/render/video.html.js +131 -0
  169. package/src/plugins/modal/video/services/video.size.js +281 -0
  170. package/src/plugins/modal/video/services/video.upload.js +92 -0
  171. package/src/plugins/popup/anchor.js +57 -49
  172. package/src/suneditor.js +73 -61
  173. package/src/themes/cobalt.css +155 -0
  174. package/src/themes/dark.css +143 -120
  175. package/src/typedef.js +214 -63
  176. package/types/assets/icons/defaultIcons.d.ts +8 -0
  177. package/types/assets/suneditor-contents.css.d.ts +1 -0
  178. package/types/assets/suneditor.css.d.ts +1 -0
  179. package/types/core/config/contextProvider.d.ts +148 -0
  180. package/types/core/config/eventManager.d.ts +68 -0
  181. package/types/core/config/instanceCheck.d.ts +33 -0
  182. package/types/core/config/optionProvider.d.ts +147 -0
  183. package/types/core/editor.d.ts +27 -586
  184. package/types/core/event/actions/index.d.ts +50 -0
  185. package/types/core/event/effects/common.registry.d.ts +56 -0
  186. package/types/core/event/effects/keydown.registry.d.ts +80 -0
  187. package/types/core/event/effects/ruleHelpers.d.ts +36 -0
  188. package/types/core/event/eventOrchestrator.d.ts +191 -0
  189. package/types/core/event/executor.d.ts +13 -0
  190. package/types/core/event/handlers/handler_toolbar.d.ts +38 -0
  191. package/types/core/event/handlers/handler_ww_clipboard.d.ts +36 -0
  192. package/types/core/event/handlers/handler_ww_dragDrop.d.ts +26 -0
  193. package/types/core/event/handlers/handler_ww_input.d.ts +38 -0
  194. package/types/core/event/handlers/handler_ww_key.d.ts +40 -0
  195. package/types/core/event/handlers/handler_ww_mouse.d.ts +47 -0
  196. package/types/core/event/ports.d.ts +256 -0
  197. package/types/core/event/reducers/keydown.reducer.d.ts +84 -0
  198. package/types/core/event/rules/keydown.rule.arrow.d.ts +19 -0
  199. package/types/core/event/rules/keydown.rule.backspace.d.ts +18 -0
  200. package/types/core/event/rules/keydown.rule.delete.d.ts +18 -0
  201. package/types/core/event/rules/keydown.rule.enter.d.ts +18 -0
  202. package/types/core/event/rules/keydown.rule.tab.d.ts +18 -0
  203. package/types/core/event/support/defaultLineManager.d.ts +22 -0
  204. package/types/core/event/support/selectionState.d.ts +29 -0
  205. package/types/core/kernel/coreKernel.d.ts +219 -0
  206. package/types/core/kernel/kernelInjector.d.ts +16 -0
  207. package/types/core/kernel/store.d.ts +170 -0
  208. package/types/core/logic/dom/char.d.ts +46 -0
  209. package/types/core/logic/dom/format.d.ts +234 -0
  210. package/types/core/logic/dom/html.d.ts +290 -0
  211. package/types/core/logic/dom/inline.d.ts +93 -0
  212. package/types/core/logic/dom/listFormat.d.ts +101 -0
  213. package/types/core/logic/dom/nodeTransform.d.ts +110 -0
  214. package/types/core/logic/dom/offset.d.ts +335 -0
  215. package/types/core/logic/dom/selection.d.ts +165 -0
  216. package/types/core/logic/panel/menu.d.ts +93 -0
  217. package/types/core/logic/panel/toolbar.d.ts +128 -0
  218. package/types/core/logic/panel/viewer.d.ts +89 -0
  219. package/types/core/logic/shell/_commandExecutor.d.ts +18 -0
  220. package/types/core/logic/shell/commandDispatcher.d.ts +65 -0
  221. package/types/core/logic/shell/component.d.ts +182 -0
  222. package/types/core/logic/shell/focusManager.d.ts +31 -0
  223. package/types/core/{base → logic/shell}/history.d.ts +13 -12
  224. package/types/core/logic/shell/pluginManager.d.ts +115 -0
  225. package/types/core/logic/shell/shortcuts.d.ts +131 -0
  226. package/types/core/logic/shell/ui.d.ts +261 -0
  227. package/types/core/schema/context.d.ts +104 -0
  228. package/types/core/schema/frameContext.d.ts +320 -0
  229. package/types/core/schema/options.d.ts +1241 -0
  230. package/types/core/section/constructor.d.ts +117 -652
  231. package/types/core/section/documentType.d.ts +43 -61
  232. package/types/events.d.ts +796 -65
  233. package/types/helper/clipboard.d.ts +5 -4
  234. package/types/helper/converter.d.ts +55 -43
  235. package/types/helper/dom/domCheck.d.ts +27 -19
  236. package/types/helper/dom/domQuery.d.ts +76 -57
  237. package/types/helper/dom/domUtils.d.ts +62 -39
  238. package/types/helper/dom/index.d.ts +87 -1
  239. package/types/helper/env.d.ts +16 -13
  240. package/types/helper/index.d.ts +8 -2
  241. package/types/helper/keyCodeMap.d.ts +24 -23
  242. package/types/helper/numbers.d.ts +4 -6
  243. package/types/helper/unicode.d.ts +4 -3
  244. package/types/hooks/base.d.ts +239 -0
  245. package/types/hooks/params.d.ts +65 -0
  246. package/types/index.d.ts +20 -117
  247. package/types/interfaces/contracts.d.ts +183 -0
  248. package/types/interfaces/index.d.ts +3 -0
  249. package/types/interfaces/plugins.d.ts +168 -0
  250. package/types/langs/_Lang.d.ts +2 -2
  251. package/types/langs/index.d.ts +2 -2
  252. package/types/modules/contract/Browser.d.ts +262 -0
  253. package/types/modules/contract/ColorPicker.d.ts +99 -0
  254. package/types/modules/contract/Controller.d.ts +204 -0
  255. package/types/modules/contract/Figure.d.ts +529 -0
  256. package/types/modules/{HueSlider.d.ts → contract/HueSlider.d.ts} +39 -28
  257. package/types/modules/contract/Modal.d.ts +62 -0
  258. package/types/modules/contract/index.d.ts +7 -0
  259. package/types/modules/manager/ApiManager.d.ts +106 -0
  260. package/types/modules/manager/FileManager.d.ts +124 -0
  261. package/types/modules/manager/index.d.ts +3 -0
  262. package/types/modules/ui/ModalAnchorEditor.d.ts +152 -0
  263. package/types/modules/ui/SelectMenu.d.ts +107 -0
  264. package/types/modules/{_DragHandle.d.ts → ui/_DragHandle.d.ts} +1 -0
  265. package/types/modules/ui/index.d.ts +4 -0
  266. package/types/plugins/browser/audioGallery.d.ts +33 -41
  267. package/types/plugins/browser/fileBrowser.d.ts +42 -50
  268. package/types/plugins/browser/fileGallery.d.ts +33 -41
  269. package/types/plugins/browser/imageGallery.d.ts +30 -37
  270. package/types/plugins/browser/videoGallery.d.ts +33 -41
  271. package/types/plugins/command/blockquote.d.ts +4 -21
  272. package/types/plugins/command/exportPDF.d.ts +23 -33
  273. package/types/plugins/command/fileUpload.d.ts +80 -100
  274. package/types/plugins/command/list_bulleted.d.ts +9 -35
  275. package/types/plugins/command/list_numbered.d.ts +9 -35
  276. package/types/plugins/dropdown/align.d.ts +23 -46
  277. package/types/plugins/dropdown/backgroundColor.d.ts +35 -53
  278. package/types/plugins/dropdown/blockStyle.d.ts +45 -0
  279. package/types/plugins/dropdown/font.d.ts +18 -41
  280. package/types/plugins/dropdown/fontColor.d.ts +35 -53
  281. package/types/plugins/dropdown/hr.d.ts +26 -52
  282. package/types/plugins/dropdown/layout.d.ts +19 -25
  283. package/types/plugins/dropdown/lineHeight.d.ts +21 -39
  284. package/types/plugins/dropdown/list.d.ts +6 -34
  285. package/types/plugins/dropdown/paragraphStyle.d.ts +34 -45
  286. package/types/plugins/dropdown/table/index.d.ts +158 -0
  287. package/types/plugins/dropdown/table/render/table.html.d.ts +71 -0
  288. package/types/plugins/dropdown/table/render/table.menu.d.ts +59 -0
  289. package/types/plugins/dropdown/table/services/table.cell.d.ts +76 -0
  290. package/types/plugins/dropdown/table/services/table.clipboard.d.ts +26 -0
  291. package/types/plugins/dropdown/table/services/table.grid.d.ts +77 -0
  292. package/types/plugins/dropdown/table/services/table.resize.d.ts +72 -0
  293. package/types/plugins/dropdown/table/services/table.selection.d.ts +59 -0
  294. package/types/plugins/dropdown/table/services/table.style.d.ts +162 -0
  295. package/types/plugins/dropdown/table/shared/table.constants.d.ts +134 -0
  296. package/types/plugins/dropdown/table/shared/table.utils.d.ts +91 -0
  297. package/types/plugins/dropdown/template.d.ts +19 -25
  298. package/types/plugins/dropdown/textStyle.d.ts +23 -30
  299. package/types/plugins/field/mention.d.ts +66 -72
  300. package/types/plugins/index.d.ts +41 -40
  301. package/types/plugins/input/fontSize.d.ts +57 -96
  302. package/types/plugins/input/pageNavigator.d.ts +5 -8
  303. package/types/plugins/modal/audio.d.ts +60 -153
  304. package/types/plugins/modal/drawing.d.ts +16 -118
  305. package/types/plugins/modal/embed.d.ts +46 -166
  306. package/types/plugins/modal/image/index.d.ts +281 -0
  307. package/types/plugins/modal/image/render/image.html.d.ts +45 -0
  308. package/types/plugins/modal/image/services/image.size.d.ts +55 -0
  309. package/types/plugins/modal/image/services/image.upload.d.ts +24 -0
  310. package/types/plugins/modal/image/shared/image.constants.d.ts +17 -0
  311. package/types/plugins/modal/link.d.ts +46 -66
  312. package/types/plugins/modal/math.d.ts +17 -86
  313. package/types/plugins/modal/{video.d.ts → video/index.d.ts} +89 -221
  314. package/types/plugins/modal/video/render/video.html.d.ts +37 -0
  315. package/types/plugins/modal/video/services/video.size.d.ts +74 -0
  316. package/types/plugins/modal/video/services/video.upload.d.ts +19 -0
  317. package/types/plugins/popup/anchor.d.ts +8 -38
  318. package/types/suneditor.d.ts +55 -24
  319. package/types/typedef.d.ts +344 -228
  320. package/CONTRIBUTING.md +0 -186
  321. package/src/core/base/eventHandlers/handler_ww_key_input.js +0 -1200
  322. package/src/core/base/eventHandlers/handler_ww_mouse.js +0 -194
  323. package/src/core/base/eventManager.js +0 -1523
  324. package/src/core/class/component.js +0 -856
  325. package/src/core/class/format.js +0 -3433
  326. package/src/core/class/menu.js +0 -346
  327. package/src/core/class/selection.js +0 -610
  328. package/src/core/class/shortcuts.js +0 -98
  329. package/src/core/class/toolbar.js +0 -431
  330. package/src/core/class/ui.js +0 -424
  331. package/src/core/class/viewer.js +0 -750
  332. package/src/core/section/actives.js +0 -266
  333. package/src/core/section/context.js +0 -102
  334. package/src/editorInjector/_classes.js +0 -36
  335. package/src/editorInjector/_core.js +0 -87
  336. package/src/editorInjector/index.js +0 -73
  337. package/src/modules/ApiManager.js +0 -191
  338. package/src/modules/Controller.js +0 -474
  339. package/src/modules/Modal.js +0 -346
  340. package/src/modules/index.js +0 -14
  341. package/src/plugins/dropdown/table.js +0 -4034
  342. package/src/plugins/modal/image.js +0 -1376
  343. package/src/plugins/modal/video.js +0 -1226
  344. package/types/core/base/eventHandlers/handler_toolbar.d.ts +0 -41
  345. package/types/core/base/eventHandlers/handler_ww_clipboard.d.ts +0 -40
  346. package/types/core/base/eventHandlers/handler_ww_dragDrop.d.ts +0 -35
  347. package/types/core/base/eventHandlers/handler_ww_key_input.d.ts +0 -45
  348. package/types/core/base/eventHandlers/handler_ww_mouse.d.ts +0 -39
  349. package/types/core/base/eventManager.d.ts +0 -401
  350. package/types/core/class/char.d.ts +0 -61
  351. package/types/core/class/component.d.ts +0 -213
  352. package/types/core/class/format.d.ts +0 -623
  353. package/types/core/class/html.d.ts +0 -430
  354. package/types/core/class/menu.d.ts +0 -126
  355. package/types/core/class/nodeTransform.d.ts +0 -93
  356. package/types/core/class/offset.d.ts +0 -522
  357. package/types/core/class/selection.d.ts +0 -188
  358. package/types/core/class/shortcuts.d.ts +0 -142
  359. package/types/core/class/toolbar.d.ts +0 -189
  360. package/types/core/class/ui.d.ts +0 -164
  361. package/types/core/class/viewer.d.ts +0 -140
  362. package/types/core/section/actives.d.ts +0 -46
  363. package/types/core/section/context.d.ts +0 -45
  364. package/types/editorInjector/_classes.d.ts +0 -41
  365. package/types/editorInjector/_core.d.ts +0 -87
  366. package/types/editorInjector/index.d.ts +0 -69
  367. package/types/modules/ApiManager.d.ts +0 -125
  368. package/types/modules/Browser.d.ts +0 -326
  369. package/types/modules/ColorPicker.d.ts +0 -135
  370. package/types/modules/Controller.d.ts +0 -251
  371. package/types/modules/Figure.d.ts +0 -517
  372. package/types/modules/FileManager.d.ts +0 -202
  373. package/types/modules/Modal.d.ts +0 -111
  374. package/types/modules/ModalAnchorEditor.d.ts +0 -236
  375. package/types/modules/SelectMenu.d.ts +0 -194
  376. package/types/modules/index.d.ts +0 -26
  377. package/types/plugins/dropdown/formatBlock.d.ts +0 -55
  378. package/types/plugins/dropdown/table.d.ts +0 -627
  379. package/types/plugins/modal/image.d.ts +0 -451
  380. /package/{LICENSE → LICENSE.txt} +0 -0
@@ -1,3 +1,4 @@
1
+ import type {} from '../../typedef';
1
2
  /**
2
3
  * @template {Node} T
3
4
  * @description Clones a node while preserving its type.
@@ -9,19 +10,27 @@ export function clone<T extends Node>(node: T, deep?: boolean): T;
9
10
  /**
10
11
  * @template {HTMLElement} T
11
12
  * @description Create Element node
13
+ * @example
14
+ * // Create with attributes
15
+ * const span = dom.utils.createElement('SPAN', { style: 'color:red;', class: 'highlight' });
16
+ *
17
+ * // Create with HTML string content
18
+ * const div = dom.utils.createElement('DIV', null, '<p>Hello</p>');
19
+ *
20
+ * // Create with a child node
21
+ * const br = dom.utils.createElement('BR');
22
+ * const p = dom.utils.createElement('P', null, br);
12
23
  * @param {string} elementName Element name
13
- * @param {?Object<string, string>=} attributes The attributes of the tag. {style: 'font-size:12px;..', class: 'el_class',..}
14
- * @param {?string|Node=} inner A innerHTML string or inner node.
24
+ * @param {?Object<string, string>} [attributes] The attributes of the tag. {style: 'font-size:12px;..', class: 'el_class',..}
25
+ * @param {?string|Node} [inner] A innerHTML string or inner node.
15
26
  * @returns {T}
16
27
  */
17
28
  export function createElement<T extends HTMLElement>(
18
29
  elementName: string,
19
- attributes?:
20
- | ({
21
- [x: string]: string;
22
- } | null)
23
- | undefined,
24
- inner?: ((string | Node) | null) | undefined
30
+ attributes?: {
31
+ [x: string]: string;
32
+ } | null,
33
+ inner?: (string | Node) | null,
25
34
  ): T;
26
35
  /**
27
36
  * @description Create text node
@@ -32,61 +41,61 @@ export function createTextNode(text: string): Text;
32
41
  /**
33
42
  * @description Get attributes of argument element to string ('class="---" name="---" ')
34
43
  * @param {Node} element Element object
35
- * @param {Array<string>|null} exceptAttrs Array of attribute names to exclude from the result
44
+ * @param {?Array<string>} exceptAttrs Array of attribute names to exclude from the result
36
45
  * @returns {string}
37
46
  */
38
47
  export function getAttributesToString(element: Node, exceptAttrs: Array<string> | null): string;
39
48
  /**
40
49
  * @description Get the items array from the array that matches the condition.
41
- * @param {__se__NodeCollection} array Array to get item
50
+ * @param {SunEditor.NodeCollection} array Array to get item
42
51
  * @param {?(current: *) => boolean} validation Conditional function
43
52
  * @returns {Array<Node>|null}
44
53
  */
45
- export function arrayFilter(array: __se__NodeCollection, validation: ((current: any) => boolean) | null): Array<Node> | null;
54
+ export function arrayFilter(array: SunEditor.NodeCollection, validation: ((current: any) => boolean) | null): Array<Node> | null;
46
55
  /**
47
56
  * @description Get the item from the array that matches the condition.
48
- * @param {__se__NodeCollection} array Array to get item
57
+ * @param {SunEditor.NodeCollection} array Array to get item
49
58
  * @param {?(current: *) => boolean} validation Conditional function
50
59
  * @returns {Node|null}
51
60
  */
52
- export function arrayFind(array: __se__NodeCollection, validation: ((current: any) => boolean) | null): Node | null;
61
+ export function arrayFind(array: SunEditor.NodeCollection, validation: ((current: any) => boolean) | null): Node | null;
53
62
  /**
54
63
  * @description Check if an array contains an element
55
- * @param {__se__NodeCollection} array element array
64
+ * @param {SunEditor.NodeCollection} array element array
56
65
  * @param {Node} node The node to check for
57
66
  * @returns {boolean}
58
67
  */
59
- export function arrayIncludes(array: __se__NodeCollection, node: Node): boolean;
68
+ export function arrayIncludes(array: SunEditor.NodeCollection, node: Node): boolean;
60
69
  /**
61
70
  * @description Get the index of the argument value in the element array
62
- * @param {__se__NodeCollection} array element array
71
+ * @param {SunEditor.NodeCollection} array element array
63
72
  * @param {Node} node The element to find index
64
73
  * @returns {number}
65
74
  */
66
- export function getArrayIndex(array: __se__NodeCollection, node: Node): number;
75
+ export function getArrayIndex(array: SunEditor.NodeCollection, node: Node): number;
67
76
  /**
68
77
  * @description Get the next index of the argument value in the element array
69
- * @param {__se__NodeCollection} array element array
78
+ * @param {SunEditor.NodeCollection} array element array
70
79
  * @param {Node} item The element to find index
71
80
  * @returns {number}
72
81
  */
73
- export function nextIndex(array: __se__NodeCollection, item: Node): number;
82
+ export function nextIndex(array: SunEditor.NodeCollection, item: Node): number;
74
83
  /**
75
84
  * @description Get the previous index of the argument value in the element array
76
- * @param {__se__NodeCollection} array Element array
85
+ * @param {SunEditor.NodeCollection} array Element array
77
86
  * @param {Node} item The element to find index
78
87
  * @returns {number}
79
88
  */
80
- export function prevIndex(array: __se__NodeCollection, item: Node): number;
89
+ export function prevIndex(array: SunEditor.NodeCollection, item: Node): number;
81
90
  /**
82
91
  * @description Add style and className of copyEl to originEl
83
92
  * @param {Node} originEl Origin element
84
93
  * @param {Node} copyEl Element to copy
85
- * @param {?Array<string>=} blacklist Blacklist array(LowerCase)
94
+ * @param {?Array<string>} [blacklist] Blacklist array(LowerCase)
86
95
  */
87
- export function copyTagAttributes(originEl: Node, copyEl: Node, blacklist?: (Array<string> | null) | undefined): void;
96
+ export function copyTagAttributes(originEl: Node, copyEl: Node, blacklist?: Array<string> | null): void;
88
97
  /**
89
- * @description Copy and apply attributes of format tag that should be maintained. (style, class) Ignore "__se__format__" class
98
+ * @description Copy and apply attributes of format tag that should be maintained. (style, class) Ignore `__se__format__` class
90
99
  * @param {Node} originEl Origin element
91
100
  * @param {Node} copyEl Element to copy
92
101
  */
@@ -111,24 +120,24 @@ export function changeTxt(node: Node, txt: string): void;
111
120
  /**
112
121
  * @description Set style, if all styles are deleted, the style properties are deleted.
113
122
  * @param {Node|Node[]} elements Element to set style
114
- * @param {string} styleName Style attribute name (marginLeft, textAlign...)
123
+ * @param {string} styleName Style attribute name (`marginLeft`, `textAlign`...)
115
124
  * @param {string|number} value Style value
116
125
  */
117
126
  export function setStyle(elements: Node | Node[], styleName: string, value: string | number): void;
118
127
  /**
119
128
  * @description Gets the style value of the element. If the elements is an array, the style of the first element is returned.
120
129
  * @param {Node} element Element to get style from.
121
- * @param {string} styleName Style attribute name (e.g., 'marginLeft', 'textAlign').
122
- * @returns {string | undefined} The value of the style attribute, or undefined if the element does not exist.
130
+ * @param {string} styleName Style attribute name (e.g., `marginLeft`, `textAlign`).
131
+ * @returns {string | undefined} The value of the style attribute, or `undefined` if the element does not exist.
123
132
  */
124
133
  export function getStyle(element: Node, styleName: string): string | undefined;
125
134
  /**
126
- * @description In the predefined code view mode, the buttons except the executable button are changed to the 'disabled' state.
127
- * @param {Array<HTMLButtonElement|HTMLInputElement>} buttonList (Button | Input) Element array
135
+ * @description In the predefined code view mode, the buttons except the executable button are changed to the `disabled` state.
136
+ * @param {SunEditor.NodeCollection} buttonList (Button | Input) Element array
128
137
  * @param {boolean} disabled Disabled value
129
138
  * @param {boolean} [important=false] If priveleged mode should be used (Necessary to switch importantDisabled buttons)
130
139
  */
131
- export function setDisabled(buttonList: Array<HTMLButtonElement | HTMLInputElement>, disabled: boolean, important?: boolean): void;
140
+ export function setDisabled(buttonList: SunEditor.NodeCollection, disabled: boolean, important?: boolean): void;
132
141
  /**
133
142
  * @description Determine whether any of the matched elements are assigned the given class
134
143
  * @param {?Node} element Elements to search class name
@@ -138,16 +147,16 @@ export function setDisabled(buttonList: Array<HTMLButtonElement | HTMLInputEleme
138
147
  export function hasClass(element: Node | null, className: string): boolean;
139
148
  /**
140
149
  * @description Append the className value of the argument value element
141
- * @param {Node|__se__NodeCollection} element Elements to add class name
150
+ * @param {Node|SunEditor.NodeCollection} element Elements to add class name
142
151
  * @param {string} className Class name to be add
143
152
  */
144
- export function addClass(element: Node | __se__NodeCollection, className: string): void;
153
+ export function addClass(element: Node | SunEditor.NodeCollection, className: string): void;
145
154
  /**
146
155
  * @description Delete the className value of the argument value element
147
- * @param {Node|__se__NodeCollection} element Elements to remove class name
156
+ * @param {Node|SunEditor.NodeCollection} element Elements to remove class name
148
157
  * @param {string} className Class name to be remove
149
158
  */
150
- export function removeClass(element: Node | __se__NodeCollection, className: string): void;
159
+ export function removeClass(element: Node | SunEditor.NodeCollection, className: string): void;
151
160
  /**
152
161
  * @description Argument value If there is no class name, insert it and delete the class name if it exists
153
162
  * @param {Node} element Element to replace class name
@@ -181,13 +190,13 @@ export function getViewportSize(): {
181
190
  scale: number;
182
191
  };
183
192
  /**
184
- * @description Copies the "wwTarget" element and returns it with inline all styles applied.
185
- * @param {Node} wwTarget Target element to copy(.sun-editor.sun-editor-editable)
186
- * @param {boolean} includeWW Include the "wwTarget" element in the copy
187
- * @param {Array<string>} styles Style list - kamel case
193
+ * @description Copies the `wwTarget` element and returns it with inline all styles applied.
194
+ * @param {Node} wwTarget Target element to copy(`.sun-editor.sun-editor-editable`)
195
+ * @param {boolean} includeWW Include the `wwTarget` element in the copy
196
+ * @param {Iterable<string>} styles Style list - kamel case
188
197
  * @returns
189
198
  */
190
- export function applyInlineStylesAll(wwTarget: Node, includeWW: boolean, styles: Array<string>): HTMLElement;
199
+ export function applyInlineStylesAll(wwTarget: Node, includeWW: boolean, styles: Iterable<string>): HTMLElement;
191
200
  /**
192
201
  * @description Wait for media elements to load
193
202
  * @param {Node} target Target element
@@ -195,6 +204,18 @@ export function applyInlineStylesAll(wwTarget: Node, includeWW: boolean, styles:
195
204
  * @returns {Promise<void>}
196
205
  */
197
206
  export function waitForMediaLoad(target: Node, timeout?: number): Promise<void>;
207
+ /**
208
+ * @description Gets a CSS variable on the root element of the editor.
209
+ * @param {string} name - The CSS variable name (e.g. `--se-color-primary`)
210
+ * @return {string} The value of the CSS variable
211
+ */
212
+ export function getRootCssVar(name: string): string;
213
+ /**
214
+ * @description Sets a CSS variable on the root element of the editor.
215
+ * @param {string} name - The CSS variable name (e.g. `--se-color-primary`)
216
+ * @param {string} value - The CSS variable value
217
+ */
218
+ export function setRootCssVar(name: string, value: string): void;
198
219
  /**
199
220
  * @description Create tooltip HTML
200
221
  * @param {string} text Tooltip text
@@ -230,5 +251,7 @@ declare namespace utils {
230
251
  export { getViewportSize };
231
252
  export { applyInlineStylesAll };
232
253
  export { waitForMediaLoad };
254
+ export { getRootCssVar };
255
+ export { setRootCssVar };
233
256
  export { createTooltipInner };
234
257
  }
@@ -1,9 +1,95 @@
1
+ import type {} from '../../typedef';
2
+ export const domQuery: {
3
+ getPositionIndex: typeof import('./domQuery').getPositionIndex;
4
+ getNodePath: typeof import('./domQuery').getNodePath;
5
+ getNodeFromPath: typeof import('./domQuery').getNodeFromPath;
6
+ getChildNode: typeof import('./domQuery').getChildNode;
7
+ getListChildren: typeof import('./domQuery').getListChildren;
8
+ getListChildNodes: typeof import('./domQuery').getListChildNodes;
9
+ getNodeDepth: typeof import('./domQuery').getNodeDepth;
10
+ sortNodeByDepth: typeof import('./domQuery').sortNodeByDepth;
11
+ compareElements: typeof import('./domQuery').compareElements;
12
+ getParentElement: typeof import('./domQuery').getParentElement;
13
+ getParentElements: typeof import('./domQuery').getParentElements;
14
+ getCommandTarget: typeof import('./domQuery').getCommandTarget;
15
+ getEventTarget: typeof import('./domQuery').getEventTarget;
16
+ getEdgeChild: typeof import('./domQuery').getEdgeChild;
17
+ getEdgeChildNodes: typeof import('./domQuery').getEdgeChildNodes;
18
+ getPreviousDeepestNode: typeof import('./domQuery').getPreviousDeepestNode;
19
+ getNextDeepestNode: typeof import('./domQuery').getNextDeepestNode;
20
+ findTextIndexOnLine: typeof import('./domQuery').findTextIndexOnLine;
21
+ findTabEndIndex: typeof import('./domQuery').findTabEndIndex;
22
+ findVisualLastCell: typeof import('./domQuery').findVisualLastCell;
23
+ getScrollParents: typeof import('./domQuery').getScrollParents;
24
+ getIframeDocument: typeof import('./domQuery').getIframeDocument;
25
+ };
26
+ export const domCheck: {
27
+ isZeroWidth: typeof import('./domCheck').isZeroWidth;
28
+ isEdgePoint: typeof import('./domCheck').isEdgePoint;
29
+ isText: typeof import('./domCheck').isText;
30
+ isElement: typeof import('./domCheck').isElement;
31
+ isInputElement: typeof import('./domCheck').isInputElement;
32
+ isButtonElement: typeof import('./domCheck').isButtonElement;
33
+ isList: typeof import('./domCheck').isList;
34
+ isListCell: typeof import('./domCheck').isListCell;
35
+ isTable: typeof import('./domCheck').isTable;
36
+ isTableElements: typeof import('./domCheck').isTableElements;
37
+ isTableCell: typeof import('./domCheck').isTableCell;
38
+ isTableRow: typeof import('./domCheck').isTableRow;
39
+ isBreak: typeof import('./domCheck').isBreak;
40
+ isAnchor: typeof import('./domCheck').isAnchor;
41
+ isMedia: typeof import('./domCheck').isMedia;
42
+ isIFrame: typeof import('./domCheck').isIFrame;
43
+ isFigure: typeof import('./domCheck').isFigure;
44
+ isContentLess: typeof import('./domCheck').isContentLess;
45
+ isEmptyLine: typeof import('./domCheck').isEmptyLine;
46
+ isComponentContainer: typeof import('./domCheck').isComponentContainer;
47
+ isWysiwygFrame: typeof import('./domCheck').isWysiwygFrame;
48
+ isNonEditable: typeof import('./domCheck').isNonEditable;
49
+ isSpanWithoutAttr: typeof import('./domCheck').isSpanWithoutAttr;
50
+ isSameAttributes: typeof import('./domCheck').isSameAttributes;
51
+ isExcludeFormat: typeof import('./domCheck').isExcludeFormat;
52
+ isUneditable: typeof import('./domCheck').isUneditable;
53
+ isImportantDisabled: typeof import('./domCheck').isImportantDisabled;
54
+ };
55
+ export const domUtils: {
56
+ clone: typeof import('./domUtils').clone;
57
+ createElement: typeof import('./domUtils').createElement;
58
+ createTextNode: typeof import('./domUtils').createTextNode;
59
+ getAttributesToString: typeof import('./domUtils').getAttributesToString;
60
+ arrayFilter: typeof import('./domUtils').arrayFilter;
61
+ arrayFind: typeof import('./domUtils').arrayFind;
62
+ arrayIncludes: typeof import('./domUtils').arrayIncludes;
63
+ getArrayIndex: typeof import('./domUtils').getArrayIndex;
64
+ nextIndex: typeof import('./domUtils').nextIndex;
65
+ prevIndex: typeof import('./domUtils').prevIndex;
66
+ copyTagAttributes: typeof import('./domUtils').copyTagAttributes;
67
+ copyFormatAttributes: typeof import('./domUtils').copyFormatAttributes;
68
+ removeItem: typeof import('./domUtils').removeItem;
69
+ changeElement: typeof import('./domUtils').changeElement;
70
+ changeTxt: typeof import('./domUtils').changeTxt;
71
+ setStyle: typeof import('./domUtils').setStyle;
72
+ getStyle: typeof import('./domUtils').getStyle;
73
+ setDisabled: typeof import('./domUtils').setDisabled;
74
+ hasClass: typeof import('./domUtils').hasClass;
75
+ addClass: typeof import('./domUtils').addClass;
76
+ removeClass: typeof import('./domUtils').removeClass;
77
+ toggleClass: typeof import('./domUtils').toggleClass;
78
+ flashClass: typeof import('./domUtils').flashClass;
79
+ getClientSize: typeof import('./domUtils').getClientSize;
80
+ getViewportSize: typeof import('./domUtils').getViewportSize;
81
+ applyInlineStylesAll: typeof import('./domUtils').applyInlineStylesAll;
82
+ waitForMediaLoad: typeof import('./domUtils').waitForMediaLoad;
83
+ getRootCssVar: typeof import('./domUtils').getRootCssVar;
84
+ setRootCssVar: typeof import('./domUtils').setRootCssVar;
85
+ createTooltipInner: typeof import('./domUtils').createTooltipInner;
86
+ };
1
87
  export default dom;
2
88
  declare namespace dom {
3
89
  export { query };
4
90
  export { check };
5
91
  export { utils };
6
92
  }
7
- import query from './domQuery';
8
93
  import check from './domCheck';
94
+ import query from './domQuery';
9
95
  import utils from './domUtils';
@@ -1,12 +1,13 @@
1
+ import type {} from '../typedef';
1
2
  /**
2
- * @description Gets XMLHttpRequest object
3
+ * @description Gets `XMLHttpRequest` object
3
4
  * @returns {XMLHttpRequest}
4
5
  */
5
6
  export function getXMLHttpRequest(): XMLHttpRequest;
6
7
  /**
7
8
  * @deprecated
8
9
  * @description Returns the CSS text that has been applied to the current page.
9
- * @param {Document|null} doc To get the CSS text of an document. If null get the current document.
10
+ * @param {?Document} doc To get the CSS text of an document. If `null` get the current document.
10
11
  * @returns {string} Styles string
11
12
  */
12
13
  export function getPageStyle(doc: Document | null): string;
@@ -15,14 +16,11 @@ export function getPageStyle(doc: Document | null): string;
15
16
  * @description Get the the tag path of the arguments value
16
17
  * @param {Array<string>} nameArray File name array
17
18
  * @param {string} extension js, css
18
- * @returns {string} If not found, return the first found value
19
+ * @returns {string} If not found, return the first found value.
19
20
  */
20
21
  export function getIncludePath(nameArray: Array<string>, extension: string): string;
21
- /**
22
- * @fileoverview Environment helper functions
23
- */
24
- /** @type {Window} */
25
- export const _w: Window;
22
+ /** @type {SunEditor.GlobalWindow} */
23
+ export const _w: SunEditor.GlobalWindow;
26
24
  /** @type {Document} */
27
25
  export const _d: Document;
28
26
  /**
@@ -37,13 +35,13 @@ export const NO_EVENT: symbol;
37
35
  export const ON_OVER_COMPONENT: symbol;
38
36
  /** --- Check browser --- */
39
37
  /**
40
- * @description Check if support ResizeObserver function
41
- * @returns {boolean} Whether support ResizeObserver function or not.
38
+ * @description Check if support `ResizeObserver` function
39
+ * @returns {boolean} Whether support `ResizeObserver` function or not.
42
40
  */
43
41
  export const isResizeObserverSupported: boolean;
44
42
  /**
45
- * @description Check if support navigator.clipboard
46
- * @returns {boolean} Whether support navigator.clipboard or not.
43
+ * @description Check if support `navigator.clipboard`
44
+ * @returns {boolean} Whether support `navigator.clipboard` or not.
47
45
  */
48
46
  export const isClipboardSupported: boolean;
49
47
  /**
@@ -78,10 +76,14 @@ export const isChromium: boolean;
78
76
  export const isSafari: boolean;
79
77
  /**
80
78
  * @description Check if User Agent is Mobile device.
81
- * - when the device is touchable, it is judged as a mobile device.
82
79
  * @type {boolean}
83
80
  */
84
81
  export const isMobile: boolean;
82
+ /**
83
+ * @description Check if the device is touchable.
84
+ * @type {boolean}
85
+ */
86
+ export const isTouchDevice: boolean;
85
87
  /**
86
88
  * @description Check if User Agent is Android mobile device.
87
89
  * @type {boolean}
@@ -124,6 +126,7 @@ declare namespace env {
124
126
  export { isOSX_IOS };
125
127
  export { isAndroid };
126
128
  export { isMobile };
129
+ export { isTouchDevice };
127
130
  export { cmdIcon };
128
131
  export { shiftIcon };
129
132
  export { DPI };
@@ -1,5 +1,6 @@
1
+ import type {} from '../typedef';
1
2
  export const env: {
2
- _w: Window;
3
+ _w: SunEditor.GlobalWindow;
3
4
  _d: Document;
4
5
  NO_EVENT: symbol;
5
6
  ON_OVER_COMPONENT: symbol;
@@ -16,6 +17,7 @@ export const env: {
16
17
  isOSX_IOS: boolean;
17
18
  isAndroid: boolean;
18
19
  isMobile: boolean;
20
+ isTouchDevice: boolean;
19
21
  cmdIcon: string;
20
22
  shiftIcon: string;
21
23
  DPI: number;
@@ -59,6 +61,7 @@ export const dom: {
59
61
  getPositionIndex: typeof import('./dom/domQuery').getPositionIndex;
60
62
  getNodePath: typeof import('./dom/domQuery').getNodePath;
61
63
  getNodeFromPath: typeof import('./dom/domQuery').getNodeFromPath;
64
+ getChildNode: typeof import('./dom/domQuery').getChildNode;
62
65
  getListChildren: typeof import('./dom/domQuery').getListChildren;
63
66
  getListChildNodes: typeof import('./dom/domQuery').getListChildNodes;
64
67
  getNodeDepth: typeof import('./dom/domQuery').getNodeDepth;
@@ -75,7 +78,7 @@ export const dom: {
75
78
  findTextIndexOnLine: typeof import('./dom/domQuery').findTextIndexOnLine;
76
79
  findTabEndIndex: typeof import('./dom/domQuery').findTabEndIndex;
77
80
  findVisualLastCell: typeof import('./dom/domQuery').findVisualLastCell;
78
- getScrollParent: typeof import('./dom/domQuery').getScrollParent;
81
+ getScrollParents: typeof import('./dom/domQuery').getScrollParents;
79
82
  getIframeDocument: typeof import('./dom/domQuery').getIframeDocument;
80
83
  };
81
84
  check: {
@@ -98,6 +101,7 @@ export const dom: {
98
101
  isFigure: typeof import('./dom/domCheck').isFigure;
99
102
  isContentLess: typeof import('./dom/domCheck').isContentLess;
100
103
  isEmptyLine: typeof import('./dom/domCheck').isEmptyLine;
104
+ isComponentContainer: typeof import('./dom/domCheck').isComponentContainer;
101
105
  isWysiwygFrame: typeof import('./dom/domCheck').isWysiwygFrame;
102
106
  isNonEditable: typeof import('./dom/domCheck').isNonEditable;
103
107
  isSpanWithoutAttr: typeof import('./dom/domCheck').isSpanWithoutAttr;
@@ -134,6 +138,8 @@ export const dom: {
134
138
  getViewportSize: typeof import('./dom/domUtils').getViewportSize;
135
139
  applyInlineStylesAll: typeof import('./dom/domUtils').applyInlineStylesAll;
136
140
  waitForMediaLoad: typeof import('./dom/domUtils').waitForMediaLoad;
141
+ getRootCssVar: typeof import('./dom/domUtils').getRootCssVar;
142
+ setRootCssVar: typeof import('./dom/domUtils').setRootCssVar;
137
143
  createTooltipInner: typeof import('./dom/domUtils').createTooltipInner;
138
144
  };
139
145
  };
@@ -1,92 +1,93 @@
1
+ import type {} from '../typedef';
1
2
  /** ------------------------------------------------------- [meta] ------------------------------------------------------- */
2
3
  /**
3
- * @description Shift check
4
+ * @description `Shift` check
4
5
  * @param {KeyboardEvent} e Event object
5
6
  * @returns {boolean}
6
7
  */
7
8
  export function isShift(e: KeyboardEvent): boolean;
8
9
  /**
9
- * @description [Ctrl|Meta] check
10
+ * @description [`Ctrl`|`Meta`] check
10
11
  * @param {KeyboardEvent} e Event object
11
12
  * @returns {boolean}
12
13
  */
13
14
  export function isCtrl(e: KeyboardEvent): boolean;
14
15
  /**
15
- * @description Alt check
16
+ * @description `Alt` check
16
17
  * @param {KeyboardEvent} e Event object
17
18
  * @returns {boolean}
18
19
  */
19
20
  export function isAlt(e: KeyboardEvent): boolean;
20
21
  /**
21
- * @description event.isComposing check
22
- * @param {KeyboardEvent} e Event object
22
+ * @description Check if the event is related to IME composition (in-progress or commit).
23
+ * @param {KeyboardEvent|InputEvent} e Event object
23
24
  * @returns {boolean}
24
25
  */
25
- export function isComposing(e: KeyboardEvent): boolean;
26
+ export function isComposing(e: KeyboardEvent | InputEvent): boolean;
26
27
  /**
27
- * @description Backspace key check
28
- * @param {string} code Event.code
28
+ * @description `Backspace` key check
29
+ * @param {string} code `Event.code`
29
30
  * @returns {boolean}
30
31
  */
31
32
  export function isBackspace(code: string): boolean;
32
33
  /**
33
- * @description Tab key check
34
- * @param {string} code Event.code
34
+ * @description `Tab` key check
35
+ * @param {string} code `Event.code`
35
36
  * @returns {boolean}
36
37
  */
37
38
  export function isTab(code: string): boolean;
38
39
  /**
39
- * @description Enter key check
40
- * @param {string} code Event.code
40
+ * @description `Enter` key check
41
+ * @param {string} code `Event.code`
41
42
  * @returns {boolean}
42
43
  */
43
44
  export function isEnter(code: string): boolean;
44
45
  /**
45
- * @description ESC key check
46
- * @param {string} code Event.code
46
+ * @description `ESC` key check
47
+ * @param {string} code `Event.code`
47
48
  * @returns {boolean}
48
49
  */
49
50
  export function isEsc(code: string): boolean;
50
51
  /**
51
- * @description Space key check
52
- * @param {string} code Event.code
52
+ * @description `Space` key check
53
+ * @param {string} code `Event.code`
53
54
  * @returns {boolean}
54
55
  */
55
56
  export function isSpace(code: string): boolean;
56
57
  /** ------------------------------------------------------- [key] ------------------------------------------------------- */
57
58
  /**
58
59
  * @description Direction key check
59
- * @param {string} code Event.code
60
+ * @param {string} code `Event.code`
60
61
  * @returns {boolean}
61
62
  */
62
63
  export function isDirectionKey(code: string): boolean;
63
64
  /**
64
- * @description [delete, backspace] key check
65
- * @param {string} code Event.code
65
+ * @description [`delete`, `backspace`] key check
66
+ * @param {string} code `Event.code`
66
67
  * @returns {boolean}
67
68
  */
68
69
  export function isRemoveKey(code: string): boolean;
69
70
  /**
70
71
  * @description Non-text key check
71
- * @param {string} code Event.code
72
+ * @param {string} code `Event.code`
72
73
  * @returns {boolean}
73
74
  */
74
75
  export function isNonTextKey(code: string): boolean;
75
76
  /**
76
77
  * @description Check if the given key is relevant for history push
77
- * @param {string} code - Event.code
78
+ * @param {string} code - `Event.code`
78
79
  * @returns {boolean}
79
80
  */
80
81
  export function isHistoryRelevantKey(code: string): boolean;
81
82
  /**
82
83
  * @description Document type observer key check
83
- * @param {string} code Event.code
84
+ * @param {string} code `Event.code`
84
85
  * @returns {boolean}
85
86
  */
86
87
  export function isDocumentTypeObserverKey(code: string): boolean;
87
88
  /**
88
89
  * @description Non-response key check
89
- * @param {string} code Event.code
90
+ * @param {string} code `Event.code`
90
91
  * @returns {boolean}
91
92
  */
92
93
  export function isNonResponseKey(code: string): boolean;
@@ -1,6 +1,4 @@
1
- /**
2
- * @fileoverview Number-related helper functions
3
- */
1
+ import type {} from '../typedef';
4
2
  /**
5
3
  * @description Checks for numeric (with decimal point).
6
4
  * @param {*} text Text string or number
@@ -10,13 +8,13 @@ export function is(text: any): boolean;
10
8
  /**
11
9
  * @description Get a number.
12
10
  * @param {string|number} value Text string or number
13
- * @param {number} [maxDec=0] Maximum number of decimal places (-1 : Infinity)
11
+ * @param {number} [maxDec=0] Maximum number of decimal places (`-1` : `Infinity`)
14
12
  * @returns {number}
15
13
  */
16
14
  export function get(value: string | number, maxDec?: number): number;
17
15
  /**
18
- * @description It compares the start and end indexes of 'a' and 'b' and returns the number of overlapping indexes in the range.
19
- * - e.g.) 1, 5, 4, 6 => '2' (4,5)
16
+ * @description It compares the start and end indexes of `a` and `b` and returns the number of overlapping indexes in the range.
17
+ * - e.g.) 1, 5, 4, 6 => `2` (4,5)
20
18
  * @param {number} aStart Start index of 'a'
21
19
  * @param {number} aEnd End index of 'a'
22
20
  * @param {number} bStart Start index of 'b'
@@ -1,3 +1,4 @@
1
+ import type {} from '../typedef';
1
2
  /**
2
3
  * @description Escape a string for safe use in regular expressions.
3
4
  * @param {string} string String to escape
@@ -5,17 +6,17 @@
5
6
  */
6
7
  export function escapeStringRegexp(string: string): string;
7
8
  /**
8
- * @description Unicode Character 'ZERO WIDTH SPACE' (\u200B)
9
+ * @description Unicode Character `ZERO WIDTH SPACE` (`\u200B`)
9
10
  * @type {string}
10
11
  */
11
12
  export const zeroWidthSpace: string;
12
13
  /**
13
- * @description Regular expression to find 'zero width space' (/\u200B/g)
14
+ * @description Regular expression to find `zero width space` (`/\u200B/g`)
14
15
  * @type {RegExp}
15
16
  */
16
17
  export const zeroWidthRegExp: RegExp;
17
18
  /**
18
- * @description Regular expression to find only 'zero width space' (/\u200B/g)
19
+ * @description Regular expression to find only `zero width space` (`/\u200B/g`)
19
20
  * @type {RegExp}
20
21
  */
21
22
  export const onlyZeroWidthRegExp: RegExp;