@ckeditor/ckeditor5-ui 47.6.1-alpha.1 → 48.0.0-alpha.0

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 (367) hide show
  1. package/LICENSE.md +1 -1
  2. package/ckeditor5-metadata.json +3 -3
  3. package/{src → dist}/colorselector/documentcolorcollection.d.ts +4 -4
  4. package/{src → dist}/dialog/dialog.d.ts +1 -1
  5. package/dist/index-editor.css +2728 -587
  6. package/dist/index.css +2673 -850
  7. package/dist/index.css.map +1 -1
  8. package/dist/index.js +11 -1
  9. package/dist/index.js.map +1 -1
  10. package/{src → dist}/menubar/menubarmenuview.d.ts +4 -0
  11. package/{src → dist}/view.d.ts +1 -1
  12. package/package.json +25 -47
  13. package/lang/contexts.json +0 -51
  14. package/lang/translations/af.po +0 -208
  15. package/lang/translations/ar.po +0 -208
  16. package/lang/translations/ast.po +0 -208
  17. package/lang/translations/az.po +0 -208
  18. package/lang/translations/be.po +0 -208
  19. package/lang/translations/bg.po +0 -208
  20. package/lang/translations/bn.po +0 -208
  21. package/lang/translations/bs.po +0 -208
  22. package/lang/translations/ca.po +0 -208
  23. package/lang/translations/cs.po +0 -208
  24. package/lang/translations/da.po +0 -208
  25. package/lang/translations/de-ch.po +0 -208
  26. package/lang/translations/de.po +0 -208
  27. package/lang/translations/el.po +0 -208
  28. package/lang/translations/en-au.po +0 -208
  29. package/lang/translations/en-gb.po +0 -208
  30. package/lang/translations/en.po +0 -208
  31. package/lang/translations/eo.po +0 -208
  32. package/lang/translations/es-co.po +0 -208
  33. package/lang/translations/es.po +0 -208
  34. package/lang/translations/et.po +0 -208
  35. package/lang/translations/eu.po +0 -208
  36. package/lang/translations/fa.po +0 -208
  37. package/lang/translations/fi.po +0 -208
  38. package/lang/translations/fr.po +0 -208
  39. package/lang/translations/gl.po +0 -208
  40. package/lang/translations/gu.po +0 -208
  41. package/lang/translations/he.po +0 -208
  42. package/lang/translations/hi.po +0 -208
  43. package/lang/translations/hr.po +0 -208
  44. package/lang/translations/hu.po +0 -208
  45. package/lang/translations/hy.po +0 -208
  46. package/lang/translations/id.po +0 -208
  47. package/lang/translations/it.po +0 -208
  48. package/lang/translations/ja.po +0 -208
  49. package/lang/translations/jv.po +0 -208
  50. package/lang/translations/kk.po +0 -208
  51. package/lang/translations/km.po +0 -208
  52. package/lang/translations/kn.po +0 -208
  53. package/lang/translations/ko.po +0 -208
  54. package/lang/translations/ku.po +0 -208
  55. package/lang/translations/lt.po +0 -208
  56. package/lang/translations/lv.po +0 -208
  57. package/lang/translations/ms.po +0 -208
  58. package/lang/translations/nb.po +0 -208
  59. package/lang/translations/ne.po +0 -208
  60. package/lang/translations/nl.po +0 -208
  61. package/lang/translations/no.po +0 -208
  62. package/lang/translations/oc.po +0 -208
  63. package/lang/translations/pl.po +0 -208
  64. package/lang/translations/pt-br.po +0 -208
  65. package/lang/translations/pt.po +0 -208
  66. package/lang/translations/ro.po +0 -208
  67. package/lang/translations/ru.po +0 -208
  68. package/lang/translations/si.po +0 -208
  69. package/lang/translations/sk.po +0 -208
  70. package/lang/translations/sl.po +0 -208
  71. package/lang/translations/sq.po +0 -208
  72. package/lang/translations/sr-latn.po +0 -208
  73. package/lang/translations/sr.po +0 -208
  74. package/lang/translations/sv.po +0 -208
  75. package/lang/translations/th.po +0 -208
  76. package/lang/translations/ti.po +0 -208
  77. package/lang/translations/tk.po +0 -208
  78. package/lang/translations/tr.po +0 -208
  79. package/lang/translations/tt.po +0 -208
  80. package/lang/translations/ug.po +0 -208
  81. package/lang/translations/uk.po +0 -208
  82. package/lang/translations/ur.po +0 -208
  83. package/lang/translations/uz.po +0 -208
  84. package/lang/translations/vi.po +0 -208
  85. package/lang/translations/zh-cn.po +0 -208
  86. package/lang/translations/zh.po +0 -208
  87. package/src/arialiveannouncer.js +0 -189
  88. package/src/augmentation.js +0 -5
  89. package/src/autocomplete/autocompleteview.js +0 -157
  90. package/src/badge/badge.js +0 -226
  91. package/src/bindings/addkeyboardhandlingforgrid.js +0 -107
  92. package/src/bindings/clickoutsidehandler.js +0 -36
  93. package/src/bindings/csstransitiondisablermixin.js +0 -58
  94. package/src/bindings/draggableviewmixin.js +0 -144
  95. package/src/bindings/preventdefault.js +0 -35
  96. package/src/bindings/submithandler.js +0 -47
  97. package/src/button/button.js +0 -5
  98. package/src/button/buttonlabel.js +0 -5
  99. package/src/button/buttonlabelview.js +0 -42
  100. package/src/button/buttonview.js +0 -278
  101. package/src/button/filedialogbuttonview.js +0 -147
  102. package/src/button/listitembuttonview.js +0 -136
  103. package/src/button/switchbuttonview.js +0 -79
  104. package/src/collapsible/collapsibleview.js +0 -106
  105. package/src/colorgrid/colorgridview.js +0 -140
  106. package/src/colorgrid/colortileview.js +0 -42
  107. package/src/colorgrid/utils.js +0 -84
  108. package/src/colorpicker/colorpickerview.js +0 -356
  109. package/src/colorpicker/utils.js +0 -108
  110. package/src/colorselector/colorgridsfragmentview.js +0 -368
  111. package/src/colorselector/colorpickerfragmentview.js +0 -254
  112. package/src/colorselector/colorselectorview.js +0 -294
  113. package/src/colorselector/documentcolorcollection.js +0 -42
  114. package/src/componentfactory.js +0 -108
  115. package/src/dialog/dialog.js +0 -325
  116. package/src/dialog/dialogactionsview.js +0 -118
  117. package/src/dialog/dialogcontentview.js +0 -39
  118. package/src/dialog/dialogview.js +0 -507
  119. package/src/dropdown/button/dropdownbutton.js +0 -5
  120. package/src/dropdown/button/dropdownbuttonview.js +0 -70
  121. package/src/dropdown/button/splitbuttonview.js +0 -178
  122. package/src/dropdown/dropdownpanelfocusable.js +0 -5
  123. package/src/dropdown/dropdownpanelview.js +0 -106
  124. package/src/dropdown/dropdownview.js +0 -438
  125. package/src/dropdown/menu/dropdownmenubehaviors.js +0 -125
  126. package/src/dropdown/menu/dropdownmenubuttonview.js +0 -69
  127. package/src/dropdown/menu/dropdownmenulistitembuttonview.js +0 -30
  128. package/src/dropdown/menu/dropdownmenulistitemview.js +0 -38
  129. package/src/dropdown/menu/dropdownmenulistview.js +0 -29
  130. package/src/dropdown/menu/dropdownmenunestedmenupanelview.js +0 -63
  131. package/src/dropdown/menu/dropdownmenunestedmenuview.js +0 -214
  132. package/src/dropdown/menu/dropdownmenurootlistview.js +0 -168
  133. package/src/dropdown/menu/utils.js +0 -61
  134. package/src/dropdown/utils.js +0 -654
  135. package/src/editableui/editableuiview.js +0 -130
  136. package/src/editableui/inline/inlineeditableuiview.js +0 -75
  137. package/src/editorui/accessibilityhelp/accessibilityhelp.js +0 -142
  138. package/src/editorui/accessibilityhelp/accessibilityhelpcontentview.js +0 -112
  139. package/src/editorui/bodycollection.js +0 -128
  140. package/src/editorui/boxed/boxededitoruiview.js +0 -95
  141. package/src/editorui/editorui.js +0 -586
  142. package/src/editorui/editoruiview.js +0 -60
  143. package/src/editorui/evaluationbadge.js +0 -99
  144. package/src/editorui/poweredby.js +0 -120
  145. package/src/focuscycler.js +0 -383
  146. package/src/formheader/formheaderview.js +0 -77
  147. package/src/formrow/formrowview.js +0 -56
  148. package/src/highlightedtext/buttonlabelwithhighlightview.js +0 -31
  149. package/src/highlightedtext/highlightedtextview.js +0 -102
  150. package/src/highlightedtext/labelwithhighlightview.js +0 -37
  151. package/src/icon/iconview.js +0 -123
  152. package/src/iframe/iframeview.js +0 -63
  153. package/src/index.js +0 -132
  154. package/src/input/inputbase.js +0 -119
  155. package/src/input/inputview.js +0 -24
  156. package/src/inputnumber/inputnumberview.js +0 -40
  157. package/src/inputtext/inputtextview.js +0 -27
  158. package/src/label/labelview.js +0 -46
  159. package/src/labeledfield/labeledfieldview.js +0 -177
  160. package/src/labeledfield/utils.js +0 -176
  161. package/src/labeledinput/labeledinputview.js +0 -138
  162. package/src/legacyerrors.js +0 -20
  163. package/src/list/listitemgroupview.js +0 -82
  164. package/src/list/listitemview.js +0 -46
  165. package/src/list/listseparatorview.js +0 -28
  166. package/src/list/listview.js +0 -210
  167. package/src/menubar/menubarmenubuttonview.js +0 -68
  168. package/src/menubar/menubarmenulistitembuttonview.js +0 -30
  169. package/src/menubar/menubarmenulistitemfiledialogbuttonview.js +0 -32
  170. package/src/menubar/menubarmenulistitemview.js +0 -34
  171. package/src/menubar/menubarmenulistview.js +0 -72
  172. package/src/menubar/menubarmenupanelview.js +0 -64
  173. package/src/menubar/menubarmenuview.js +0 -198
  174. package/src/menubar/menubarview.js +0 -281
  175. package/src/menubar/utils.js +0 -1432
  176. package/src/model.js +0 -31
  177. package/src/notification/notification.js +0 -192
  178. package/src/panel/balloon/balloonpanelview.js +0 -1077
  179. package/src/panel/balloon/contextualballoon.js +0 -616
  180. package/src/panel/sticky/stickypanelview.js +0 -246
  181. package/src/search/filteredview.js +0 -5
  182. package/src/search/filtergroupanditemnames.js +0 -38
  183. package/src/search/searchinfoview.js +0 -59
  184. package/src/search/searchresultsview.js +0 -83
  185. package/src/search/text/searchtextqueryview.js +0 -87
  186. package/src/search/text/searchtextview.js +0 -242
  187. package/src/spinner/spinnerview.js +0 -38
  188. package/src/template.js +0 -1396
  189. package/src/textarea/textareaview.js +0 -189
  190. package/src/toolbar/balloon/balloontoolbar.js +0 -358
  191. package/src/toolbar/block/blockbuttonview.js +0 -41
  192. package/src/toolbar/block/blocktoolbar.js +0 -507
  193. package/src/toolbar/normalizetoolbarconfig.js +0 -52
  194. package/src/toolbar/toolbarlinebreakview.js +0 -28
  195. package/src/toolbar/toolbarseparatorview.js +0 -28
  196. package/src/toolbar/toolbarview.js +0 -873
  197. package/src/tooltipmanager.js +0 -454
  198. package/src/view.js +0 -471
  199. package/src/viewcollection.js +0 -210
  200. package/theme/components/arialiveannouncer/arialiveannouncer.css +0 -14
  201. package/theme/components/autocomplete/autocomplete.css +0 -22
  202. package/theme/components/button/button.css +0 -39
  203. package/theme/components/button/listitembutton.css +0 -48
  204. package/theme/components/button/switchbutton.css +0 -14
  205. package/theme/components/collapsible/collapsible.css +0 -10
  206. package/theme/components/colorgrid/colorgrid.css +0 -8
  207. package/theme/components/colorpicker/colorpicker.css +0 -34
  208. package/theme/components/colorselector/colorselector.css +0 -35
  209. package/theme/components/dialog/dialog.css +0 -42
  210. package/theme/components/dialog/dialogactions.css +0 -11
  211. package/theme/components/dropdown/dropdown.css +0 -95
  212. package/theme/components/dropdown/listdropdown.css +0 -10
  213. package/theme/components/dropdown/menu/dropdownmenu.css +0 -8
  214. package/theme/components/dropdown/menu/dropdownmenubutton.css +0 -9
  215. package/theme/components/dropdown/menu/dropdownmenulistitem.css +0 -10
  216. package/theme/components/dropdown/menu/dropdownmenulistitembutton.css +0 -10
  217. package/theme/components/dropdown/menu/dropdownmenupanel.css +0 -11
  218. package/theme/components/dropdown/splitbutton.css +0 -14
  219. package/theme/components/dropdown/toolbardropdown.css +0 -20
  220. package/theme/components/editorui/accessibilityhelp.css +0 -10
  221. package/theme/components/editorui/editorui.css +0 -10
  222. package/theme/components/form/form.css +0 -87
  223. package/theme/components/formheader/formheader.css +0 -18
  224. package/theme/components/formrow/formrow.css +0 -32
  225. package/theme/components/highlightedtext/highlightedtext.css +0 -12
  226. package/theme/components/icon/icon.css +0 -8
  227. package/theme/components/input/input.css +0 -10
  228. package/theme/components/label/label.css +0 -12
  229. package/theme/components/labeledfield/labeledfieldview.css +0 -16
  230. package/theme/components/labeledinput/labeledinput.css +0 -10
  231. package/theme/components/list/list.css +0 -26
  232. package/theme/components/menubar/menubar.css +0 -10
  233. package/theme/components/menubar/menubarmenu.css +0 -9
  234. package/theme/components/menubar/menubarmenubutton.css +0 -11
  235. package/theme/components/menubar/menubarmenulistitem.css +0 -10
  236. package/theme/components/menubar/menubarmenulistitembutton.css +0 -10
  237. package/theme/components/menubar/menubarmenupanel.css +0 -62
  238. package/theme/components/panel/balloonpanel.css +0 -56
  239. package/theme/components/panel/balloonrotator.css +0 -17
  240. package/theme/components/panel/fakepanel.css +0 -23
  241. package/theme/components/panel/stickypanel.css +0 -17
  242. package/theme/components/responsive-form/responsiveform.css +0 -42
  243. package/theme/components/search/search.css +0 -43
  244. package/theme/components/spinner/spinner.css +0 -23
  245. package/theme/components/textarea/textarea.css +0 -10
  246. package/theme/components/toolbar/blocktoolbar.css +0 -9
  247. package/theme/components/toolbar/toolbar.css +0 -58
  248. package/theme/components/tooltip/tooltip.css +0 -12
  249. package/theme/globals/_evaluationbadge.css +0 -54
  250. package/theme/globals/_hidden.css +0 -13
  251. package/theme/globals/_poweredby.css +0 -84
  252. package/theme/globals/_transition.css +0 -12
  253. package/theme/globals/_zindex.css +0 -10
  254. package/theme/globals/globals.css +0 -10
  255. package/theme/mixins/_dir.css +0 -10
  256. package/theme/mixins/_mediacolors.css +0 -20
  257. package/theme/mixins/_rwd.css +0 -10
  258. package/theme/mixins/_unselectable.css +0 -14
  259. /package/{src → dist}/arialiveannouncer.d.ts +0 -0
  260. /package/{src → dist}/augmentation.d.ts +0 -0
  261. /package/{src → dist}/autocomplete/autocompleteview.d.ts +0 -0
  262. /package/{src → dist}/badge/badge.d.ts +0 -0
  263. /package/{src → dist}/bindings/addkeyboardhandlingforgrid.d.ts +0 -0
  264. /package/{src → dist}/bindings/clickoutsidehandler.d.ts +0 -0
  265. /package/{src → dist}/bindings/csstransitiondisablermixin.d.ts +0 -0
  266. /package/{src → dist}/bindings/draggableviewmixin.d.ts +0 -0
  267. /package/{src → dist}/bindings/preventdefault.d.ts +0 -0
  268. /package/{src → dist}/bindings/submithandler.d.ts +0 -0
  269. /package/{src → dist}/button/button.d.ts +0 -0
  270. /package/{src → dist}/button/buttonlabel.d.ts +0 -0
  271. /package/{src → dist}/button/buttonlabelview.d.ts +0 -0
  272. /package/{src → dist}/button/buttonview.d.ts +0 -0
  273. /package/{src → dist}/button/filedialogbuttonview.d.ts +0 -0
  274. /package/{src → dist}/button/listitembuttonview.d.ts +0 -0
  275. /package/{src → dist}/button/switchbuttonview.d.ts +0 -0
  276. /package/{src → dist}/collapsible/collapsibleview.d.ts +0 -0
  277. /package/{src → dist}/colorgrid/colorgridview.d.ts +0 -0
  278. /package/{src → dist}/colorgrid/colortileview.d.ts +0 -0
  279. /package/{src → dist}/colorgrid/utils.d.ts +0 -0
  280. /package/{src → dist}/colorpicker/colorpickerview.d.ts +0 -0
  281. /package/{src → dist}/colorpicker/utils.d.ts +0 -0
  282. /package/{src → dist}/colorselector/colorgridsfragmentview.d.ts +0 -0
  283. /package/{src → dist}/colorselector/colorpickerfragmentview.d.ts +0 -0
  284. /package/{src → dist}/colorselector/colorselectorview.d.ts +0 -0
  285. /package/{src → dist}/componentfactory.d.ts +0 -0
  286. /package/{src → dist}/dialog/dialogactionsview.d.ts +0 -0
  287. /package/{src → dist}/dialog/dialogcontentview.d.ts +0 -0
  288. /package/{src → dist}/dialog/dialogview.d.ts +0 -0
  289. /package/{src → dist}/dropdown/button/dropdownbutton.d.ts +0 -0
  290. /package/{src → dist}/dropdown/button/dropdownbuttonview.d.ts +0 -0
  291. /package/{src → dist}/dropdown/button/splitbuttonview.d.ts +0 -0
  292. /package/{src → dist}/dropdown/dropdownpanelfocusable.d.ts +0 -0
  293. /package/{src → dist}/dropdown/dropdownpanelview.d.ts +0 -0
  294. /package/{src → dist}/dropdown/dropdownview.d.ts +0 -0
  295. /package/{src → dist}/dropdown/menu/dropdownmenubehaviors.d.ts +0 -0
  296. /package/{src → dist}/dropdown/menu/dropdownmenubuttonview.d.ts +0 -0
  297. /package/{src → dist}/dropdown/menu/dropdownmenulistitembuttonview.d.ts +0 -0
  298. /package/{src → dist}/dropdown/menu/dropdownmenulistitemview.d.ts +0 -0
  299. /package/{src → dist}/dropdown/menu/dropdownmenulistview.d.ts +0 -0
  300. /package/{src → dist}/dropdown/menu/dropdownmenunestedmenupanelview.d.ts +0 -0
  301. /package/{src → dist}/dropdown/menu/dropdownmenunestedmenuview.d.ts +0 -0
  302. /package/{src → dist}/dropdown/menu/dropdownmenurootlistview.d.ts +0 -0
  303. /package/{src → dist}/dropdown/menu/utils.d.ts +0 -0
  304. /package/{src → dist}/dropdown/utils.d.ts +0 -0
  305. /package/{src → dist}/editableui/editableuiview.d.ts +0 -0
  306. /package/{src → dist}/editableui/inline/inlineeditableuiview.d.ts +0 -0
  307. /package/{src → dist}/editorui/accessibilityhelp/accessibilityhelp.d.ts +0 -0
  308. /package/{src → dist}/editorui/accessibilityhelp/accessibilityhelpcontentview.d.ts +0 -0
  309. /package/{src → dist}/editorui/bodycollection.d.ts +0 -0
  310. /package/{src → dist}/editorui/boxed/boxededitoruiview.d.ts +0 -0
  311. /package/{src → dist}/editorui/editorui.d.ts +0 -0
  312. /package/{src → dist}/editorui/editoruiview.d.ts +0 -0
  313. /package/{src → dist}/editorui/evaluationbadge.d.ts +0 -0
  314. /package/{src → dist}/editorui/poweredby.d.ts +0 -0
  315. /package/{src → dist}/focuscycler.d.ts +0 -0
  316. /package/{src → dist}/formheader/formheaderview.d.ts +0 -0
  317. /package/{src → dist}/formrow/formrowview.d.ts +0 -0
  318. /package/{src → dist}/highlightedtext/buttonlabelwithhighlightview.d.ts +0 -0
  319. /package/{src → dist}/highlightedtext/highlightedtextview.d.ts +0 -0
  320. /package/{src → dist}/highlightedtext/labelwithhighlightview.d.ts +0 -0
  321. /package/{src → dist}/icon/iconview.d.ts +0 -0
  322. /package/{src → dist}/iframe/iframeview.d.ts +0 -0
  323. /package/{src → dist}/index.d.ts +0 -0
  324. /package/{src → dist}/input/inputbase.d.ts +0 -0
  325. /package/{src → dist}/input/inputview.d.ts +0 -0
  326. /package/{src → dist}/inputnumber/inputnumberview.d.ts +0 -0
  327. /package/{src → dist}/inputtext/inputtextview.d.ts +0 -0
  328. /package/{src → dist}/label/labelview.d.ts +0 -0
  329. /package/{src → dist}/labeledfield/labeledfieldview.d.ts +0 -0
  330. /package/{src → dist}/labeledfield/utils.d.ts +0 -0
  331. /package/{src → dist}/labeledinput/labeledinputview.d.ts +0 -0
  332. /package/{src → dist}/legacyerrors.d.ts +0 -0
  333. /package/{src → dist}/list/listitemgroupview.d.ts +0 -0
  334. /package/{src → dist}/list/listitemview.d.ts +0 -0
  335. /package/{src → dist}/list/listseparatorview.d.ts +0 -0
  336. /package/{src → dist}/list/listview.d.ts +0 -0
  337. /package/{src → dist}/menubar/menubarmenubuttonview.d.ts +0 -0
  338. /package/{src → dist}/menubar/menubarmenulistitembuttonview.d.ts +0 -0
  339. /package/{src → dist}/menubar/menubarmenulistitemfiledialogbuttonview.d.ts +0 -0
  340. /package/{src → dist}/menubar/menubarmenulistitemview.d.ts +0 -0
  341. /package/{src → dist}/menubar/menubarmenulistview.d.ts +0 -0
  342. /package/{src → dist}/menubar/menubarmenupanelview.d.ts +0 -0
  343. /package/{src → dist}/menubar/menubarview.d.ts +0 -0
  344. /package/{src → dist}/menubar/utils.d.ts +0 -0
  345. /package/{src → dist}/model.d.ts +0 -0
  346. /package/{src → dist}/notification/notification.d.ts +0 -0
  347. /package/{src → dist}/panel/balloon/balloonpanelview.d.ts +0 -0
  348. /package/{src → dist}/panel/balloon/contextualballoon.d.ts +0 -0
  349. /package/{src → dist}/panel/sticky/stickypanelview.d.ts +0 -0
  350. /package/{src → dist}/search/filteredview.d.ts +0 -0
  351. /package/{src → dist}/search/filtergroupanditemnames.d.ts +0 -0
  352. /package/{src → dist}/search/searchinfoview.d.ts +0 -0
  353. /package/{src → dist}/search/searchresultsview.d.ts +0 -0
  354. /package/{src → dist}/search/text/searchtextqueryview.d.ts +0 -0
  355. /package/{src → dist}/search/text/searchtextview.d.ts +0 -0
  356. /package/{src → dist}/spinner/spinnerview.d.ts +0 -0
  357. /package/{src → dist}/template.d.ts +0 -0
  358. /package/{src → dist}/textarea/textareaview.d.ts +0 -0
  359. /package/{src → dist}/toolbar/balloon/balloontoolbar.d.ts +0 -0
  360. /package/{src → dist}/toolbar/block/blockbuttonview.d.ts +0 -0
  361. /package/{src → dist}/toolbar/block/blocktoolbar.d.ts +0 -0
  362. /package/{src → dist}/toolbar/normalizetoolbarconfig.d.ts +0 -0
  363. /package/{src → dist}/toolbar/toolbarlinebreakview.d.ts +0 -0
  364. /package/{src → dist}/toolbar/toolbarseparatorview.d.ts +0 -0
  365. /package/{src → dist}/toolbar/toolbarview.d.ts +0 -0
  366. /package/{src → dist}/tooltipmanager.d.ts +0 -0
  367. /package/{src → dist}/viewcollection.d.ts +0 -0
@@ -1,198 +0,0 @@
1
- /**
2
- * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
- * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
- */
5
- /**
6
- * @module ui/menubar/menubarmenuview
7
- */
8
- import { FocusTracker, KeystrokeHandler, getOptimalPosition } from '@ckeditor/ckeditor5-utils';
9
- import { MenuBarMenuButtonView } from './menubarmenubuttonview.js';
10
- import { MenuBarMenuBehaviors, MenuBarMenuViewPanelPositioningFunctions } from './utils.js';
11
- import { View } from '../view.js';
12
- import { MenuBarMenuPanelView } from './menubarmenupanelview.js';
13
- import '../../theme/components/menubar/menubarmenu.css';
14
- /**
15
- * A menu view for the {@link module:ui/menubar/menubarview~MenuBarView}. Menus are building blocks of the menu bar,
16
- * they host other sub-menus and menu items (buttons) that users can interact with.
17
- */
18
- export class MenuBarMenuView extends View {
19
- /**
20
- * Button of the menu view.
21
- */
22
- buttonView;
23
- /**
24
- * Panel of the menu. It hosts children of the menu.
25
- */
26
- panelView;
27
- /**
28
- * Tracks information about the DOM focus in the menu.
29
- */
30
- focusTracker;
31
- /**
32
- * Instance of the {@link module:utils/keystrokehandler~KeystrokeHandler}. It manages
33
- * keystrokes of the menu.
34
- */
35
- keystrokes;
36
- /**
37
- * Creates an instance of the menu view.
38
- *
39
- * @param locale The localization services instance.
40
- */
41
- constructor(locale) {
42
- super(locale);
43
- const bind = this.bindTemplate;
44
- this.buttonView = new MenuBarMenuButtonView(locale);
45
- this.buttonView.delegate('mouseenter').to(this);
46
- this.buttonView.bind('isOn', 'isEnabled').to(this, 'isOpen', 'isEnabled');
47
- this.panelView = new MenuBarMenuPanelView(locale);
48
- this.panelView.bind('isVisible').to(this, 'isOpen');
49
- this.keystrokes = new KeystrokeHandler();
50
- this.focusTracker = new FocusTracker();
51
- this.set('isOpen', false);
52
- this.set('isEnabled', true);
53
- this.set('panelPosition', 'w');
54
- this.set('class', undefined);
55
- this.set('parentMenuView', null);
56
- this.setTemplate({
57
- tag: 'div',
58
- attributes: {
59
- class: [
60
- 'ck',
61
- 'ck-menu-bar__menu',
62
- bind.to('class'),
63
- bind.if('isEnabled', 'ck-disabled', value => !value),
64
- bind.if('parentMenuView', 'ck-menu-bar__menu_top-level', value => !value)
65
- ]
66
- },
67
- children: [
68
- this.buttonView,
69
- this.panelView
70
- ]
71
- });
72
- }
73
- /**
74
- * @inheritDoc
75
- */
76
- render() {
77
- super.render();
78
- this.focusTracker.add(this.buttonView.element);
79
- this.focusTracker.add(this.panelView.element);
80
- // Listen for keystrokes coming from within #element.
81
- this.keystrokes.listenTo(this.element);
82
- MenuBarMenuBehaviors.closeOnEscKey(this);
83
- this._repositionPanelOnOpen();
84
- }
85
- // For now, this method cannot be called in the render process because the `parentMenuView` may be assigned
86
- // after the rendering process.
87
- //
88
- // TODO: We should reconsider the way we handle this logic.
89
- /**
90
- * Attach all keyboard behaviors for the menu bar view.
91
- *
92
- * @internal
93
- */
94
- _attachBehaviors() {
95
- // Top-level menus.
96
- if (!this.parentMenuView) {
97
- this._propagateArrowKeystrokeEvents();
98
- MenuBarMenuBehaviors.openAndFocusPanelOnArrowDownKey(this);
99
- MenuBarMenuBehaviors.toggleOnButtonClick(this);
100
- }
101
- else {
102
- MenuBarMenuBehaviors.openOnButtonClick(this);
103
- MenuBarMenuBehaviors.openOnArrowRightKey(this);
104
- MenuBarMenuBehaviors.closeOnArrowLeftKey(this);
105
- MenuBarMenuBehaviors.openAndFocusOnEnterKeyPress(this);
106
- MenuBarMenuBehaviors.closeOnParentClose(this);
107
- }
108
- }
109
- /**
110
- * Fires `arrowright` and `arrowleft` events when the user pressed corresponding arrow keys.
111
- */
112
- _propagateArrowKeystrokeEvents() {
113
- this.keystrokes.set('arrowright', (data, cancel) => {
114
- this.fire('arrowright');
115
- cancel();
116
- });
117
- this.keystrokes.set('arrowleft', (data, cancel) => {
118
- this.fire('arrowleft');
119
- cancel();
120
- });
121
- }
122
- /**
123
- * Sets the position of the panel when the menu opens. The panel is positioned
124
- * so that it optimally uses the available space in the viewport.
125
- */
126
- _repositionPanelOnOpen() {
127
- // Let the menu control the position of the panel. The position must be updated every time the menu is open.
128
- this.on('change:isOpen', (evt, name, isOpen) => {
129
- if (!isOpen) {
130
- return;
131
- }
132
- const optimalPanelPosition = MenuBarMenuView._getOptimalPosition({
133
- element: this.panelView.element,
134
- target: this.buttonView.element,
135
- fitInViewport: true,
136
- positions: this._panelPositions
137
- });
138
- this.panelView.position = (optimalPanelPosition ? optimalPanelPosition.name : this._defaultMenuPositionName);
139
- });
140
- }
141
- /**
142
- * @inheritDoc
143
- */
144
- focus() {
145
- this.buttonView.focus();
146
- }
147
- /**
148
- * Positioning functions for the {@link #panelView} . They change depending on the role of the menu (top-level vs sub-menu) in
149
- * the {@link module:ui/menubar/menubarview~MenuBarView menu bar} and the UI language direction.
150
- */
151
- get _panelPositions() {
152
- const { southEast, southWest, northEast, northWest, westSouth, eastSouth, westNorth, eastNorth } = MenuBarMenuViewPanelPositioningFunctions;
153
- if (this.locale.uiLanguageDirection === 'ltr') {
154
- if (this.parentMenuView) {
155
- return [eastSouth, eastNorth, westSouth, westNorth];
156
- }
157
- else {
158
- return [southEast, southWest, northEast, northWest];
159
- }
160
- }
161
- else {
162
- if (this.parentMenuView) {
163
- return [westSouth, westNorth, eastSouth, eastNorth];
164
- }
165
- else {
166
- return [southWest, southEast, northWest, northEast];
167
- }
168
- }
169
- }
170
- /**
171
- * The default position of the panel when the menu is opened.
172
- * It is used when the optimal position cannot be calculated.
173
- */
174
- get _defaultMenuPositionName() {
175
- if (this.locale.uiLanguageDirection === 'ltr') {
176
- if (this.parentMenuView) {
177
- return 'es';
178
- }
179
- else {
180
- return 'se';
181
- }
182
- }
183
- else {
184
- if (this.parentMenuView) {
185
- return 'ws';
186
- }
187
- else {
188
- return 'sw';
189
- }
190
- }
191
- }
192
- /**
193
- * A function used to calculate the optimal position for the dropdown panel.
194
- *
195
- * Referenced for unit testing purposes.
196
- */
197
- static _getOptimalPosition = getOptimalPosition;
198
- }
@@ -1,281 +0,0 @@
1
- /**
2
- * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
- * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
- */
5
- /**
6
- * @module ui/menubar/menubarview
7
- */
8
- import { logWarning } from '@ckeditor/ckeditor5-utils';
9
- import { View } from '../view.js';
10
- import { isObject } from 'es-toolkit/compat';
11
- import { ListItemView } from '../list/listitemview.js';
12
- import { ListSeparatorView } from '../list/listseparatorview.js';
13
- import { MenuBarMenuView } from './menubarmenuview.js';
14
- import { MenuBarMenuListView } from './menubarmenulistview.js';
15
- import { MenuBarMenuListItemView } from './menubarmenulistitemview.js';
16
- import { MenuBarMenuListItemButtonView } from './menubarmenulistitembuttonview.js';
17
- import { MenuBarMenuListItemFileDialogButtonView } from './menubarmenulistitemfiledialogbuttonview.js';
18
- import { MenuBarBehaviors, processMenuBarConfig } from './utils.js';
19
- const EVENT_NAME_DELEGATES = ['mouseenter', 'arrowleft', 'arrowright', 'change:isOpen'];
20
- import '../../theme/components/menubar/menubar.css';
21
- /**
22
- * The application menu bar component. It brings a set of top-level menus (and sub-menus) that can be used
23
- * to organize and access a large number of buttons.
24
- */
25
- export class MenuBarView extends View {
26
- /**
27
- * Collection of the child views inside the {@link #element}.
28
- */
29
- children;
30
- /**
31
- * A list of {@link module:ui/menubar/menubarmenuview~MenuBarMenuView} instances registered in the menu bar.
32
- *
33
- * @observable
34
- */
35
- menus = [];
36
- /**
37
- * Creates an instance of the menu bar view.
38
- *
39
- * @param locale The localization services instance.
40
- */
41
- constructor(locale) {
42
- super(locale);
43
- const t = locale.t;
44
- const bind = this.bindTemplate;
45
- this.set({
46
- isOpen: false,
47
- isFocusBorderEnabled: false
48
- });
49
- this._setupIsOpenUpdater();
50
- this.children = this.createCollection();
51
- // @if CK_DEBUG_MENU_BAR // // Logs events in the main event bus of the component.
52
- // @if CK_DEBUG_MENU_BAR // this.on( 'menu', ( evt, data ) => {
53
- // @if CK_DEBUG_MENU_BAR // console.log( `MenuBarView:${ evt.name }`, evt.path.map( view => view.element ) );
54
- // @if CK_DEBUG_MENU_BAR // } );
55
- this.setTemplate({
56
- tag: 'div',
57
- attributes: {
58
- class: [
59
- 'ck',
60
- 'ck-menu-bar',
61
- bind.if('isFocusBorderEnabled', 'ck-menu-bar_focus-border-enabled')
62
- ],
63
- 'aria-label': t('Editor menu bar'),
64
- role: 'menubar'
65
- },
66
- children: this.children
67
- });
68
- }
69
- /**
70
- * A utility that expands a plain menu bar configuration into a structure of menus (also: sub-menus)
71
- * and items using a given {@link module:ui/componentfactory~ComponentFactory component factory}.
72
- *
73
- * See the {@link module:core/editor/editorconfig~EditorConfig#menuBar menu bar} in the editor
74
- * configuration reference to learn how to configure the menu bar.
75
- */
76
- fillFromConfig(config, componentFactory, extraItems = []) {
77
- const locale = this.locale;
78
- const processedConfig = processMenuBarConfig({
79
- normalizedConfig: config,
80
- locale,
81
- componentFactory,
82
- extraItems
83
- });
84
- const topLevelCategoryMenuViews = processedConfig.items.map(menuDefinition => this._createMenu({
85
- componentFactory,
86
- menuDefinition
87
- }));
88
- this.children.addMany(topLevelCategoryMenuViews);
89
- }
90
- /**
91
- * @inheritDoc
92
- */
93
- render() {
94
- super.render();
95
- MenuBarBehaviors.toggleMenusAndFocusItemsOnHover(this);
96
- MenuBarBehaviors.closeMenusWhenTheBarCloses(this);
97
- MenuBarBehaviors.closeMenuWhenAnotherOnTheSameLevelOpens(this);
98
- MenuBarBehaviors.focusCycleMenusOnArrows(this);
99
- MenuBarBehaviors.closeOnClickOutside(this);
100
- MenuBarBehaviors.enableFocusHighlightOnInteraction(this);
101
- }
102
- /**
103
- * Focuses the menu bar.
104
- */
105
- focus() {
106
- if (this.children.first) {
107
- this.children.first.focus();
108
- }
109
- }
110
- /**
111
- * Closes all menus in the bar.
112
- */
113
- close() {
114
- for (const topLevelCategoryMenuView of this.children) {
115
- topLevelCategoryMenuView.isOpen = false;
116
- }
117
- }
118
- /**
119
- * Disables all menus in the bar.
120
- */
121
- disable() {
122
- for (const topLevelCategoryMenuView of this.children) {
123
- topLevelCategoryMenuView.isEnabled = false;
124
- }
125
- }
126
- /**
127
- * Enables all menus in the bar.
128
- */
129
- enable() {
130
- for (const topLevelCategoryMenuView of this.children) {
131
- topLevelCategoryMenuView.isEnabled = true;
132
- }
133
- }
134
- /**
135
- * Registers a menu view in the menu bar. Every {@link module:ui/menubar/menubarmenuview~MenuBarMenuView} instance must be registered
136
- * in the menu bar to be properly managed.
137
- */
138
- registerMenu(menuView, parentMenuView = null) {
139
- if (parentMenuView) {
140
- menuView.delegate(...EVENT_NAME_DELEGATES).to(parentMenuView);
141
- menuView.parentMenuView = parentMenuView;
142
- }
143
- else {
144
- menuView.delegate(...EVENT_NAME_DELEGATES).to(this, name => 'menu:' + name);
145
- }
146
- menuView._attachBehaviors();
147
- this.menus.push(menuView);
148
- }
149
- /**
150
- * Creates a {@link module:ui/menubar/menubarmenuview~MenuBarMenuView} based on the given definition.
151
- */
152
- _createMenu({ componentFactory, menuDefinition, parentMenuView }) {
153
- const locale = this.locale;
154
- const menuView = new MenuBarMenuView(locale);
155
- this.registerMenu(menuView, parentMenuView);
156
- menuView.buttonView.set({
157
- label: menuDefinition.label
158
- });
159
- // Defer the creation of the menu structure until it gets open. This is a performance optimization
160
- // that shortens the time needed to create the editor.
161
- menuView.once('change:isOpen', () => {
162
- const listView = new MenuBarMenuListView(locale);
163
- listView.ariaLabel = menuDefinition.label;
164
- menuView.panelView.children.add(listView);
165
- listView.items.addMany(this._createMenuItems({ menuDefinition, parentMenuView: menuView, componentFactory }));
166
- });
167
- return menuView;
168
- }
169
- /**
170
- * Creates a {@link module:ui/menubar/menubarmenuview~MenuBarMenuView} items based on the given definition.
171
- */
172
- _createMenuItems({ menuDefinition, parentMenuView, componentFactory }) {
173
- const locale = this.locale;
174
- const items = [];
175
- for (const menuGroupDefinition of menuDefinition.groups) {
176
- for (const itemDefinition of menuGroupDefinition.items) {
177
- const menuItemView = new MenuBarMenuListItemView(locale, parentMenuView);
178
- if (isObject(itemDefinition)) {
179
- menuItemView.children.add(this._createMenu({
180
- componentFactory,
181
- menuDefinition: itemDefinition,
182
- parentMenuView
183
- }));
184
- }
185
- else {
186
- const componentView = this._createMenuItemContentFromFactory({
187
- componentName: itemDefinition,
188
- componentFactory,
189
- parentMenuView
190
- });
191
- if (!componentView) {
192
- continue;
193
- }
194
- menuItemView.children.add(componentView);
195
- }
196
- items.push(menuItemView);
197
- }
198
- // Separate groups with a separator.
199
- if (menuGroupDefinition !== menuDefinition.groups[menuDefinition.groups.length - 1]) {
200
- items.push(new ListSeparatorView(locale));
201
- }
202
- }
203
- return items;
204
- }
205
- /**
206
- * Uses the component factory to create a content of the menu item (a button or a sub-menu).
207
- */
208
- _createMenuItemContentFromFactory({ componentName, parentMenuView, componentFactory }) {
209
- const componentView = componentFactory.create(componentName);
210
- if (!(componentView instanceof MenuBarMenuView ||
211
- componentView instanceof MenuBarMenuListItemButtonView ||
212
- componentView instanceof MenuBarMenuListItemFileDialogButtonView)) {
213
- /**
214
- * Adding unsupported components to the {@link module:ui/menubar/menubarview~MenuBarView} is not possible.
215
- *
216
- * A component should be either a {@link module:ui/menubar/menubarmenuview~MenuBarMenuView} (sub-menu) or a
217
- * {@link module:ui/menubar/menubarmenulistitembuttonview~MenuBarMenuListItemButtonView} (button).
218
- *
219
- * @error menu-bar-component-unsupported
220
- * @param {string} componentName A name of the unsupported component used in the configuration.
221
- * @param {module:ui/view~View} componentView An unsupported component view.
222
- */
223
- logWarning('menu-bar-component-unsupported', {
224
- componentName,
225
- componentView
226
- });
227
- return null;
228
- }
229
- this._registerMenuTree(componentView, parentMenuView);
230
- // Close the whole menu bar when a component is executed.
231
- componentView.on('execute', () => {
232
- this.close();
233
- });
234
- return componentView;
235
- }
236
- /**
237
- * Checks component and its children recursively and calls {@link #registerMenu}
238
- * for each item that is {@link module:ui/menubar/menubarmenuview~MenuBarMenuView}.
239
- *
240
- * @internal
241
- */
242
- _registerMenuTree(componentView, parentMenuView) {
243
- if (!(componentView instanceof MenuBarMenuView)) {
244
- componentView.delegate('mouseenter').to(parentMenuView);
245
- return;
246
- }
247
- this.registerMenu(componentView, parentMenuView);
248
- const menuBarItemsList = componentView.panelView.children
249
- .filter(child => child instanceof MenuBarMenuListView)[0];
250
- if (!menuBarItemsList) {
251
- componentView.delegate('mouseenter').to(parentMenuView);
252
- return;
253
- }
254
- const nonSeparatorItems = menuBarItemsList.items.filter(item => item instanceof ListItemView);
255
- for (const item of nonSeparatorItems) {
256
- this._registerMenuTree(item.children.get(0), componentView);
257
- }
258
- }
259
- /**
260
- * Manages the state of the {@link #isOpen} property of the menu bar. Because the state is a sum of individual
261
- * top-level menus' states, it's necessary to listen to their changes and update the state accordingly.
262
- *
263
- * Additionally, it prevents from unnecessary changes of `isOpen` when one top-level menu opens and another closes
264
- * (regardless of in which order), maintaining a stable `isOpen === true` in that situation.
265
- */
266
- _setupIsOpenUpdater() {
267
- let closeTimeout;
268
- // TODO: This is not the prettiest approach but at least it's simple.
269
- this.on('menu:change:isOpen', (evt, name, isOpen) => {
270
- clearTimeout(closeTimeout);
271
- if (isOpen) {
272
- this.isOpen = true;
273
- }
274
- else {
275
- closeTimeout = setTimeout(() => {
276
- this.isOpen = Array.from(this.children).some(menuView => menuView.isOpen);
277
- }, 0);
278
- }
279
- });
280
- }
281
- }