@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.
- package/LICENSE.md +1 -1
- package/ckeditor5-metadata.json +3 -3
- package/{src → dist}/colorselector/documentcolorcollection.d.ts +4 -4
- package/{src → dist}/dialog/dialog.d.ts +1 -1
- package/dist/index-editor.css +2728 -587
- package/dist/index.css +2673 -850
- package/dist/index.css.map +1 -1
- package/dist/index.js +11 -1
- package/dist/index.js.map +1 -1
- package/{src → dist}/menubar/menubarmenuview.d.ts +4 -0
- package/{src → dist}/view.d.ts +1 -1
- package/package.json +25 -47
- package/lang/contexts.json +0 -51
- package/lang/translations/af.po +0 -208
- package/lang/translations/ar.po +0 -208
- package/lang/translations/ast.po +0 -208
- package/lang/translations/az.po +0 -208
- package/lang/translations/be.po +0 -208
- package/lang/translations/bg.po +0 -208
- package/lang/translations/bn.po +0 -208
- package/lang/translations/bs.po +0 -208
- package/lang/translations/ca.po +0 -208
- package/lang/translations/cs.po +0 -208
- package/lang/translations/da.po +0 -208
- package/lang/translations/de-ch.po +0 -208
- package/lang/translations/de.po +0 -208
- package/lang/translations/el.po +0 -208
- package/lang/translations/en-au.po +0 -208
- package/lang/translations/en-gb.po +0 -208
- package/lang/translations/en.po +0 -208
- package/lang/translations/eo.po +0 -208
- package/lang/translations/es-co.po +0 -208
- package/lang/translations/es.po +0 -208
- package/lang/translations/et.po +0 -208
- package/lang/translations/eu.po +0 -208
- package/lang/translations/fa.po +0 -208
- package/lang/translations/fi.po +0 -208
- package/lang/translations/fr.po +0 -208
- package/lang/translations/gl.po +0 -208
- package/lang/translations/gu.po +0 -208
- package/lang/translations/he.po +0 -208
- package/lang/translations/hi.po +0 -208
- package/lang/translations/hr.po +0 -208
- package/lang/translations/hu.po +0 -208
- package/lang/translations/hy.po +0 -208
- package/lang/translations/id.po +0 -208
- package/lang/translations/it.po +0 -208
- package/lang/translations/ja.po +0 -208
- package/lang/translations/jv.po +0 -208
- package/lang/translations/kk.po +0 -208
- package/lang/translations/km.po +0 -208
- package/lang/translations/kn.po +0 -208
- package/lang/translations/ko.po +0 -208
- package/lang/translations/ku.po +0 -208
- package/lang/translations/lt.po +0 -208
- package/lang/translations/lv.po +0 -208
- package/lang/translations/ms.po +0 -208
- package/lang/translations/nb.po +0 -208
- package/lang/translations/ne.po +0 -208
- package/lang/translations/nl.po +0 -208
- package/lang/translations/no.po +0 -208
- package/lang/translations/oc.po +0 -208
- package/lang/translations/pl.po +0 -208
- package/lang/translations/pt-br.po +0 -208
- package/lang/translations/pt.po +0 -208
- package/lang/translations/ro.po +0 -208
- package/lang/translations/ru.po +0 -208
- package/lang/translations/si.po +0 -208
- package/lang/translations/sk.po +0 -208
- package/lang/translations/sl.po +0 -208
- package/lang/translations/sq.po +0 -208
- package/lang/translations/sr-latn.po +0 -208
- package/lang/translations/sr.po +0 -208
- package/lang/translations/sv.po +0 -208
- package/lang/translations/th.po +0 -208
- package/lang/translations/ti.po +0 -208
- package/lang/translations/tk.po +0 -208
- package/lang/translations/tr.po +0 -208
- package/lang/translations/tt.po +0 -208
- package/lang/translations/ug.po +0 -208
- package/lang/translations/uk.po +0 -208
- package/lang/translations/ur.po +0 -208
- package/lang/translations/uz.po +0 -208
- package/lang/translations/vi.po +0 -208
- package/lang/translations/zh-cn.po +0 -208
- package/lang/translations/zh.po +0 -208
- package/src/arialiveannouncer.js +0 -189
- package/src/augmentation.js +0 -5
- package/src/autocomplete/autocompleteview.js +0 -157
- package/src/badge/badge.js +0 -226
- package/src/bindings/addkeyboardhandlingforgrid.js +0 -107
- package/src/bindings/clickoutsidehandler.js +0 -36
- package/src/bindings/csstransitiondisablermixin.js +0 -58
- package/src/bindings/draggableviewmixin.js +0 -144
- package/src/bindings/preventdefault.js +0 -35
- package/src/bindings/submithandler.js +0 -47
- package/src/button/button.js +0 -5
- package/src/button/buttonlabel.js +0 -5
- package/src/button/buttonlabelview.js +0 -42
- package/src/button/buttonview.js +0 -278
- package/src/button/filedialogbuttonview.js +0 -147
- package/src/button/listitembuttonview.js +0 -136
- package/src/button/switchbuttonview.js +0 -79
- package/src/collapsible/collapsibleview.js +0 -106
- package/src/colorgrid/colorgridview.js +0 -140
- package/src/colorgrid/colortileview.js +0 -42
- package/src/colorgrid/utils.js +0 -84
- package/src/colorpicker/colorpickerview.js +0 -356
- package/src/colorpicker/utils.js +0 -108
- package/src/colorselector/colorgridsfragmentview.js +0 -368
- package/src/colorselector/colorpickerfragmentview.js +0 -254
- package/src/colorselector/colorselectorview.js +0 -294
- package/src/colorselector/documentcolorcollection.js +0 -42
- package/src/componentfactory.js +0 -108
- package/src/dialog/dialog.js +0 -325
- package/src/dialog/dialogactionsview.js +0 -118
- package/src/dialog/dialogcontentview.js +0 -39
- package/src/dialog/dialogview.js +0 -507
- package/src/dropdown/button/dropdownbutton.js +0 -5
- package/src/dropdown/button/dropdownbuttonview.js +0 -70
- package/src/dropdown/button/splitbuttonview.js +0 -178
- package/src/dropdown/dropdownpanelfocusable.js +0 -5
- package/src/dropdown/dropdownpanelview.js +0 -106
- package/src/dropdown/dropdownview.js +0 -438
- package/src/dropdown/menu/dropdownmenubehaviors.js +0 -125
- package/src/dropdown/menu/dropdownmenubuttonview.js +0 -69
- package/src/dropdown/menu/dropdownmenulistitembuttonview.js +0 -30
- package/src/dropdown/menu/dropdownmenulistitemview.js +0 -38
- package/src/dropdown/menu/dropdownmenulistview.js +0 -29
- package/src/dropdown/menu/dropdownmenunestedmenupanelview.js +0 -63
- package/src/dropdown/menu/dropdownmenunestedmenuview.js +0 -214
- package/src/dropdown/menu/dropdownmenurootlistview.js +0 -168
- package/src/dropdown/menu/utils.js +0 -61
- package/src/dropdown/utils.js +0 -654
- package/src/editableui/editableuiview.js +0 -130
- package/src/editableui/inline/inlineeditableuiview.js +0 -75
- package/src/editorui/accessibilityhelp/accessibilityhelp.js +0 -142
- package/src/editorui/accessibilityhelp/accessibilityhelpcontentview.js +0 -112
- package/src/editorui/bodycollection.js +0 -128
- package/src/editorui/boxed/boxededitoruiview.js +0 -95
- package/src/editorui/editorui.js +0 -586
- package/src/editorui/editoruiview.js +0 -60
- package/src/editorui/evaluationbadge.js +0 -99
- package/src/editorui/poweredby.js +0 -120
- package/src/focuscycler.js +0 -383
- package/src/formheader/formheaderview.js +0 -77
- package/src/formrow/formrowview.js +0 -56
- package/src/highlightedtext/buttonlabelwithhighlightview.js +0 -31
- package/src/highlightedtext/highlightedtextview.js +0 -102
- package/src/highlightedtext/labelwithhighlightview.js +0 -37
- package/src/icon/iconview.js +0 -123
- package/src/iframe/iframeview.js +0 -63
- package/src/index.js +0 -132
- package/src/input/inputbase.js +0 -119
- package/src/input/inputview.js +0 -24
- package/src/inputnumber/inputnumberview.js +0 -40
- package/src/inputtext/inputtextview.js +0 -27
- package/src/label/labelview.js +0 -46
- package/src/labeledfield/labeledfieldview.js +0 -177
- package/src/labeledfield/utils.js +0 -176
- package/src/labeledinput/labeledinputview.js +0 -138
- package/src/legacyerrors.js +0 -20
- package/src/list/listitemgroupview.js +0 -82
- package/src/list/listitemview.js +0 -46
- package/src/list/listseparatorview.js +0 -28
- package/src/list/listview.js +0 -210
- package/src/menubar/menubarmenubuttonview.js +0 -68
- package/src/menubar/menubarmenulistitembuttonview.js +0 -30
- package/src/menubar/menubarmenulistitemfiledialogbuttonview.js +0 -32
- package/src/menubar/menubarmenulistitemview.js +0 -34
- package/src/menubar/menubarmenulistview.js +0 -72
- package/src/menubar/menubarmenupanelview.js +0 -64
- package/src/menubar/menubarmenuview.js +0 -198
- package/src/menubar/menubarview.js +0 -281
- package/src/menubar/utils.js +0 -1432
- package/src/model.js +0 -31
- package/src/notification/notification.js +0 -192
- package/src/panel/balloon/balloonpanelview.js +0 -1077
- package/src/panel/balloon/contextualballoon.js +0 -616
- package/src/panel/sticky/stickypanelview.js +0 -246
- package/src/search/filteredview.js +0 -5
- package/src/search/filtergroupanditemnames.js +0 -38
- package/src/search/searchinfoview.js +0 -59
- package/src/search/searchresultsview.js +0 -83
- package/src/search/text/searchtextqueryview.js +0 -87
- package/src/search/text/searchtextview.js +0 -242
- package/src/spinner/spinnerview.js +0 -38
- package/src/template.js +0 -1396
- package/src/textarea/textareaview.js +0 -189
- package/src/toolbar/balloon/balloontoolbar.js +0 -358
- package/src/toolbar/block/blockbuttonview.js +0 -41
- package/src/toolbar/block/blocktoolbar.js +0 -507
- package/src/toolbar/normalizetoolbarconfig.js +0 -52
- package/src/toolbar/toolbarlinebreakview.js +0 -28
- package/src/toolbar/toolbarseparatorview.js +0 -28
- package/src/toolbar/toolbarview.js +0 -873
- package/src/tooltipmanager.js +0 -454
- package/src/view.js +0 -471
- package/src/viewcollection.js +0 -210
- package/theme/components/arialiveannouncer/arialiveannouncer.css +0 -14
- package/theme/components/autocomplete/autocomplete.css +0 -22
- package/theme/components/button/button.css +0 -39
- package/theme/components/button/listitembutton.css +0 -48
- package/theme/components/button/switchbutton.css +0 -14
- package/theme/components/collapsible/collapsible.css +0 -10
- package/theme/components/colorgrid/colorgrid.css +0 -8
- package/theme/components/colorpicker/colorpicker.css +0 -34
- package/theme/components/colorselector/colorselector.css +0 -35
- package/theme/components/dialog/dialog.css +0 -42
- package/theme/components/dialog/dialogactions.css +0 -11
- package/theme/components/dropdown/dropdown.css +0 -95
- package/theme/components/dropdown/listdropdown.css +0 -10
- package/theme/components/dropdown/menu/dropdownmenu.css +0 -8
- package/theme/components/dropdown/menu/dropdownmenubutton.css +0 -9
- package/theme/components/dropdown/menu/dropdownmenulistitem.css +0 -10
- package/theme/components/dropdown/menu/dropdownmenulistitembutton.css +0 -10
- package/theme/components/dropdown/menu/dropdownmenupanel.css +0 -11
- package/theme/components/dropdown/splitbutton.css +0 -14
- package/theme/components/dropdown/toolbardropdown.css +0 -20
- package/theme/components/editorui/accessibilityhelp.css +0 -10
- package/theme/components/editorui/editorui.css +0 -10
- package/theme/components/form/form.css +0 -87
- package/theme/components/formheader/formheader.css +0 -18
- package/theme/components/formrow/formrow.css +0 -32
- package/theme/components/highlightedtext/highlightedtext.css +0 -12
- package/theme/components/icon/icon.css +0 -8
- package/theme/components/input/input.css +0 -10
- package/theme/components/label/label.css +0 -12
- package/theme/components/labeledfield/labeledfieldview.css +0 -16
- package/theme/components/labeledinput/labeledinput.css +0 -10
- package/theme/components/list/list.css +0 -26
- package/theme/components/menubar/menubar.css +0 -10
- package/theme/components/menubar/menubarmenu.css +0 -9
- package/theme/components/menubar/menubarmenubutton.css +0 -11
- package/theme/components/menubar/menubarmenulistitem.css +0 -10
- package/theme/components/menubar/menubarmenulistitembutton.css +0 -10
- package/theme/components/menubar/menubarmenupanel.css +0 -62
- package/theme/components/panel/balloonpanel.css +0 -56
- package/theme/components/panel/balloonrotator.css +0 -17
- package/theme/components/panel/fakepanel.css +0 -23
- package/theme/components/panel/stickypanel.css +0 -17
- package/theme/components/responsive-form/responsiveform.css +0 -42
- package/theme/components/search/search.css +0 -43
- package/theme/components/spinner/spinner.css +0 -23
- package/theme/components/textarea/textarea.css +0 -10
- package/theme/components/toolbar/blocktoolbar.css +0 -9
- package/theme/components/toolbar/toolbar.css +0 -58
- package/theme/components/tooltip/tooltip.css +0 -12
- package/theme/globals/_evaluationbadge.css +0 -54
- package/theme/globals/_hidden.css +0 -13
- package/theme/globals/_poweredby.css +0 -84
- package/theme/globals/_transition.css +0 -12
- package/theme/globals/_zindex.css +0 -10
- package/theme/globals/globals.css +0 -10
- package/theme/mixins/_dir.css +0 -10
- package/theme/mixins/_mediacolors.css +0 -20
- package/theme/mixins/_rwd.css +0 -10
- package/theme/mixins/_unselectable.css +0 -14
- /package/{src → dist}/arialiveannouncer.d.ts +0 -0
- /package/{src → dist}/augmentation.d.ts +0 -0
- /package/{src → dist}/autocomplete/autocompleteview.d.ts +0 -0
- /package/{src → dist}/badge/badge.d.ts +0 -0
- /package/{src → dist}/bindings/addkeyboardhandlingforgrid.d.ts +0 -0
- /package/{src → dist}/bindings/clickoutsidehandler.d.ts +0 -0
- /package/{src → dist}/bindings/csstransitiondisablermixin.d.ts +0 -0
- /package/{src → dist}/bindings/draggableviewmixin.d.ts +0 -0
- /package/{src → dist}/bindings/preventdefault.d.ts +0 -0
- /package/{src → dist}/bindings/submithandler.d.ts +0 -0
- /package/{src → dist}/button/button.d.ts +0 -0
- /package/{src → dist}/button/buttonlabel.d.ts +0 -0
- /package/{src → dist}/button/buttonlabelview.d.ts +0 -0
- /package/{src → dist}/button/buttonview.d.ts +0 -0
- /package/{src → dist}/button/filedialogbuttonview.d.ts +0 -0
- /package/{src → dist}/button/listitembuttonview.d.ts +0 -0
- /package/{src → dist}/button/switchbuttonview.d.ts +0 -0
- /package/{src → dist}/collapsible/collapsibleview.d.ts +0 -0
- /package/{src → dist}/colorgrid/colorgridview.d.ts +0 -0
- /package/{src → dist}/colorgrid/colortileview.d.ts +0 -0
- /package/{src → dist}/colorgrid/utils.d.ts +0 -0
- /package/{src → dist}/colorpicker/colorpickerview.d.ts +0 -0
- /package/{src → dist}/colorpicker/utils.d.ts +0 -0
- /package/{src → dist}/colorselector/colorgridsfragmentview.d.ts +0 -0
- /package/{src → dist}/colorselector/colorpickerfragmentview.d.ts +0 -0
- /package/{src → dist}/colorselector/colorselectorview.d.ts +0 -0
- /package/{src → dist}/componentfactory.d.ts +0 -0
- /package/{src → dist}/dialog/dialogactionsview.d.ts +0 -0
- /package/{src → dist}/dialog/dialogcontentview.d.ts +0 -0
- /package/{src → dist}/dialog/dialogview.d.ts +0 -0
- /package/{src → dist}/dropdown/button/dropdownbutton.d.ts +0 -0
- /package/{src → dist}/dropdown/button/dropdownbuttonview.d.ts +0 -0
- /package/{src → dist}/dropdown/button/splitbuttonview.d.ts +0 -0
- /package/{src → dist}/dropdown/dropdownpanelfocusable.d.ts +0 -0
- /package/{src → dist}/dropdown/dropdownpanelview.d.ts +0 -0
- /package/{src → dist}/dropdown/dropdownview.d.ts +0 -0
- /package/{src → dist}/dropdown/menu/dropdownmenubehaviors.d.ts +0 -0
- /package/{src → dist}/dropdown/menu/dropdownmenubuttonview.d.ts +0 -0
- /package/{src → dist}/dropdown/menu/dropdownmenulistitembuttonview.d.ts +0 -0
- /package/{src → dist}/dropdown/menu/dropdownmenulistitemview.d.ts +0 -0
- /package/{src → dist}/dropdown/menu/dropdownmenulistview.d.ts +0 -0
- /package/{src → dist}/dropdown/menu/dropdownmenunestedmenupanelview.d.ts +0 -0
- /package/{src → dist}/dropdown/menu/dropdownmenunestedmenuview.d.ts +0 -0
- /package/{src → dist}/dropdown/menu/dropdownmenurootlistview.d.ts +0 -0
- /package/{src → dist}/dropdown/menu/utils.d.ts +0 -0
- /package/{src → dist}/dropdown/utils.d.ts +0 -0
- /package/{src → dist}/editableui/editableuiview.d.ts +0 -0
- /package/{src → dist}/editableui/inline/inlineeditableuiview.d.ts +0 -0
- /package/{src → dist}/editorui/accessibilityhelp/accessibilityhelp.d.ts +0 -0
- /package/{src → dist}/editorui/accessibilityhelp/accessibilityhelpcontentview.d.ts +0 -0
- /package/{src → dist}/editorui/bodycollection.d.ts +0 -0
- /package/{src → dist}/editorui/boxed/boxededitoruiview.d.ts +0 -0
- /package/{src → dist}/editorui/editorui.d.ts +0 -0
- /package/{src → dist}/editorui/editoruiview.d.ts +0 -0
- /package/{src → dist}/editorui/evaluationbadge.d.ts +0 -0
- /package/{src → dist}/editorui/poweredby.d.ts +0 -0
- /package/{src → dist}/focuscycler.d.ts +0 -0
- /package/{src → dist}/formheader/formheaderview.d.ts +0 -0
- /package/{src → dist}/formrow/formrowview.d.ts +0 -0
- /package/{src → dist}/highlightedtext/buttonlabelwithhighlightview.d.ts +0 -0
- /package/{src → dist}/highlightedtext/highlightedtextview.d.ts +0 -0
- /package/{src → dist}/highlightedtext/labelwithhighlightview.d.ts +0 -0
- /package/{src → dist}/icon/iconview.d.ts +0 -0
- /package/{src → dist}/iframe/iframeview.d.ts +0 -0
- /package/{src → dist}/index.d.ts +0 -0
- /package/{src → dist}/input/inputbase.d.ts +0 -0
- /package/{src → dist}/input/inputview.d.ts +0 -0
- /package/{src → dist}/inputnumber/inputnumberview.d.ts +0 -0
- /package/{src → dist}/inputtext/inputtextview.d.ts +0 -0
- /package/{src → dist}/label/labelview.d.ts +0 -0
- /package/{src → dist}/labeledfield/labeledfieldview.d.ts +0 -0
- /package/{src → dist}/labeledfield/utils.d.ts +0 -0
- /package/{src → dist}/labeledinput/labeledinputview.d.ts +0 -0
- /package/{src → dist}/legacyerrors.d.ts +0 -0
- /package/{src → dist}/list/listitemgroupview.d.ts +0 -0
- /package/{src → dist}/list/listitemview.d.ts +0 -0
- /package/{src → dist}/list/listseparatorview.d.ts +0 -0
- /package/{src → dist}/list/listview.d.ts +0 -0
- /package/{src → dist}/menubar/menubarmenubuttonview.d.ts +0 -0
- /package/{src → dist}/menubar/menubarmenulistitembuttonview.d.ts +0 -0
- /package/{src → dist}/menubar/menubarmenulistitemfiledialogbuttonview.d.ts +0 -0
- /package/{src → dist}/menubar/menubarmenulistitemview.d.ts +0 -0
- /package/{src → dist}/menubar/menubarmenulistview.d.ts +0 -0
- /package/{src → dist}/menubar/menubarmenupanelview.d.ts +0 -0
- /package/{src → dist}/menubar/menubarview.d.ts +0 -0
- /package/{src → dist}/menubar/utils.d.ts +0 -0
- /package/{src → dist}/model.d.ts +0 -0
- /package/{src → dist}/notification/notification.d.ts +0 -0
- /package/{src → dist}/panel/balloon/balloonpanelview.d.ts +0 -0
- /package/{src → dist}/panel/balloon/contextualballoon.d.ts +0 -0
- /package/{src → dist}/panel/sticky/stickypanelview.d.ts +0 -0
- /package/{src → dist}/search/filteredview.d.ts +0 -0
- /package/{src → dist}/search/filtergroupanditemnames.d.ts +0 -0
- /package/{src → dist}/search/searchinfoview.d.ts +0 -0
- /package/{src → dist}/search/searchresultsview.d.ts +0 -0
- /package/{src → dist}/search/text/searchtextqueryview.d.ts +0 -0
- /package/{src → dist}/search/text/searchtextview.d.ts +0 -0
- /package/{src → dist}/spinner/spinnerview.d.ts +0 -0
- /package/{src → dist}/template.d.ts +0 -0
- /package/{src → dist}/textarea/textareaview.d.ts +0 -0
- /package/{src → dist}/toolbar/balloon/balloontoolbar.d.ts +0 -0
- /package/{src → dist}/toolbar/block/blockbuttonview.d.ts +0 -0
- /package/{src → dist}/toolbar/block/blocktoolbar.d.ts +0 -0
- /package/{src → dist}/toolbar/normalizetoolbarconfig.d.ts +0 -0
- /package/{src → dist}/toolbar/toolbarlinebreakview.d.ts +0 -0
- /package/{src → dist}/toolbar/toolbarseparatorview.d.ts +0 -0
- /package/{src → dist}/toolbar/toolbarview.d.ts +0 -0
- /package/{src → dist}/tooltipmanager.d.ts +0 -0
- /package/{src → dist}/viewcollection.d.ts +0 -0
|
@@ -1,56 +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/formrow/formrowview
|
|
7
|
-
*/
|
|
8
|
-
import { View } from '../view.js';
|
|
9
|
-
import { toArray } from '@ckeditor/ckeditor5-utils';
|
|
10
|
-
import '../../theme/components/formrow/formrow.css';
|
|
11
|
-
/**
|
|
12
|
-
* The class representing a single row in a form,
|
|
13
|
-
*/
|
|
14
|
-
export class FormRowView extends View {
|
|
15
|
-
/**
|
|
16
|
-
* A collection of row items (buttons, dropdowns, etc.).
|
|
17
|
-
*/
|
|
18
|
-
children;
|
|
19
|
-
/**
|
|
20
|
-
* Creates an instance of the form row class.
|
|
21
|
-
*
|
|
22
|
-
* @param locale The locale instance.
|
|
23
|
-
* @param options.labelView When passed, the row gets the `group` and `aria-labelledby`
|
|
24
|
-
* DOM attributes and gets described by the label.
|
|
25
|
-
*/
|
|
26
|
-
constructor(locale, options = {}) {
|
|
27
|
-
super(locale);
|
|
28
|
-
const bind = this.bindTemplate;
|
|
29
|
-
this.set('class', [
|
|
30
|
-
'ck',
|
|
31
|
-
'ck-form__row',
|
|
32
|
-
...toArray(options.class || [])
|
|
33
|
-
]);
|
|
34
|
-
this.children = this.createCollection();
|
|
35
|
-
if (options.children) {
|
|
36
|
-
options.children.forEach(child => this.children.add(child));
|
|
37
|
-
}
|
|
38
|
-
this.set('_role', null);
|
|
39
|
-
this.set('_ariaLabelledBy', null);
|
|
40
|
-
if (options.labelView) {
|
|
41
|
-
this.set({
|
|
42
|
-
_role: 'group',
|
|
43
|
-
_ariaLabelledBy: options.labelView.id
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
this.setTemplate({
|
|
47
|
-
tag: 'div',
|
|
48
|
-
attributes: {
|
|
49
|
-
class: bind.to('class', classes => classes.join(' ')),
|
|
50
|
-
role: bind.to('_role'),
|
|
51
|
-
'aria-labelledby': bind.to('_ariaLabelledBy')
|
|
52
|
-
},
|
|
53
|
-
children: this.children
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
}
|
|
@@ -1,31 +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
|
-
import { HighlightedTextView } from './highlightedtextview.js';
|
|
6
|
-
/**
|
|
7
|
-
* A button label view that can highlight a text fragment.
|
|
8
|
-
*/
|
|
9
|
-
export class ButtonLabelWithHighlightView extends HighlightedTextView {
|
|
10
|
-
/**
|
|
11
|
-
* @inheritDoc
|
|
12
|
-
*/
|
|
13
|
-
constructor() {
|
|
14
|
-
super();
|
|
15
|
-
this.set({
|
|
16
|
-
style: undefined,
|
|
17
|
-
text: undefined,
|
|
18
|
-
id: undefined
|
|
19
|
-
});
|
|
20
|
-
const bind = this.bindTemplate;
|
|
21
|
-
this.extendTemplate({
|
|
22
|
-
attributes: {
|
|
23
|
-
class: [
|
|
24
|
-
'ck-button__label'
|
|
25
|
-
],
|
|
26
|
-
style: bind.to('style'),
|
|
27
|
-
id: bind.to('id')
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
}
|
|
@@ -1,102 +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/highlightedtext/highlightedtextview
|
|
7
|
-
*/
|
|
8
|
-
import { View } from '../view.js';
|
|
9
|
-
import { escape } from 'es-toolkit/compat';
|
|
10
|
-
import '../../theme/components/highlightedtext/highlightedtext.css';
|
|
11
|
-
/**
|
|
12
|
-
* A class representing a view that displays a text which subset can be highlighted using the
|
|
13
|
-
* {@link #highlightText} method.
|
|
14
|
-
*/
|
|
15
|
-
export class HighlightedTextView extends View {
|
|
16
|
-
/**
|
|
17
|
-
* @inheritDoc
|
|
18
|
-
*/
|
|
19
|
-
constructor() {
|
|
20
|
-
super();
|
|
21
|
-
this.set('text', undefined);
|
|
22
|
-
this.setTemplate({
|
|
23
|
-
tag: 'span',
|
|
24
|
-
attributes: {
|
|
25
|
-
class: ['ck', 'ck-highlighted-text']
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
this.on('render', () => {
|
|
29
|
-
// Classic setTemplate binding for #text will not work because highlightText() replaces the
|
|
30
|
-
// pre-rendered DOM text node new a new one (and <mark> elements).
|
|
31
|
-
this.on('change:text', () => {
|
|
32
|
-
this._updateInnerHTML(this.text);
|
|
33
|
-
});
|
|
34
|
-
this._updateInnerHTML(this.text);
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Highlights view's {@link #text} according to the specified `RegExp`. If the passed RegExp is `null`, the
|
|
39
|
-
* highlighting is removed
|
|
40
|
-
*
|
|
41
|
-
* @param regExp
|
|
42
|
-
*/
|
|
43
|
-
highlightText(regExp) {
|
|
44
|
-
this._updateInnerHTML(markText(this.text || '', regExp));
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Updates element's `innerHTML` with the passed content.
|
|
48
|
-
*/
|
|
49
|
-
_updateInnerHTML(newInnerHTML) {
|
|
50
|
-
this.element.innerHTML = newInnerHTML || '';
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Replaces `regExp` occurrences with `<mark>` tags in a text.
|
|
55
|
-
*
|
|
56
|
-
* @param text A text to get marked.
|
|
57
|
-
* @param regExp An optional `RegExp`. If not passed, this is a pass-through function.
|
|
58
|
-
* @returns A text with `RegExp` occurrences marked by `<mark>`.
|
|
59
|
-
*/
|
|
60
|
-
function markText(text, regExp) {
|
|
61
|
-
if (!regExp) {
|
|
62
|
-
return escape(text);
|
|
63
|
-
}
|
|
64
|
-
const textParts = [];
|
|
65
|
-
let lastMatchEnd = 0;
|
|
66
|
-
let matchInfo = regExp.exec(text);
|
|
67
|
-
// Iterate over all matches and create an array of text parts. The idea is to mark which parts are query matches
|
|
68
|
-
// so that later on they can be highlighted.
|
|
69
|
-
while (matchInfo !== null) {
|
|
70
|
-
const curMatchStart = matchInfo.index;
|
|
71
|
-
// Detect if there was something between last match and this one.
|
|
72
|
-
if (curMatchStart !== lastMatchEnd) {
|
|
73
|
-
textParts.push({
|
|
74
|
-
text: text.substring(lastMatchEnd, curMatchStart),
|
|
75
|
-
isMatch: false
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
textParts.push({
|
|
79
|
-
text: matchInfo[0],
|
|
80
|
-
isMatch: true
|
|
81
|
-
});
|
|
82
|
-
lastMatchEnd = regExp.lastIndex;
|
|
83
|
-
matchInfo = regExp.exec(text);
|
|
84
|
-
}
|
|
85
|
-
// Your match might not be the last part of a string. Be sure to add any plain text following the last match.
|
|
86
|
-
if (lastMatchEnd !== text.length) {
|
|
87
|
-
textParts.push({
|
|
88
|
-
text: text.substring(lastMatchEnd),
|
|
89
|
-
isMatch: false
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
const outputHtml = textParts
|
|
93
|
-
// The entire text should be escaped.
|
|
94
|
-
.map(part => {
|
|
95
|
-
part.text = escape(part.text);
|
|
96
|
-
return part;
|
|
97
|
-
})
|
|
98
|
-
// Only matched text should be wrapped with HTML mark element.
|
|
99
|
-
.map(part => part.isMatch ? `<mark>${part.text}</mark>` : part.text)
|
|
100
|
-
.join('');
|
|
101
|
-
return outputHtml;
|
|
102
|
-
}
|
|
@@ -1,37 +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/highlightedtext/labelwithhighlightview
|
|
7
|
-
*/
|
|
8
|
-
import { HighlightedTextView } from './highlightedtextview.js';
|
|
9
|
-
import { uid } from '@ckeditor/ckeditor5-utils';
|
|
10
|
-
/**
|
|
11
|
-
* A label view that can highlight a text fragment.
|
|
12
|
-
*/
|
|
13
|
-
export class LabelWithHighlightView extends HighlightedTextView {
|
|
14
|
-
/**
|
|
15
|
-
* @inheritDoc
|
|
16
|
-
*/
|
|
17
|
-
id;
|
|
18
|
-
/**
|
|
19
|
-
* @inheritDoc
|
|
20
|
-
*/
|
|
21
|
-
constructor() {
|
|
22
|
-
super();
|
|
23
|
-
this.set('for', undefined);
|
|
24
|
-
const bind = this.bindTemplate;
|
|
25
|
-
this.id = `ck-editor__label_${uid()}`;
|
|
26
|
-
this.extendTemplate({
|
|
27
|
-
attributes: {
|
|
28
|
-
class: [
|
|
29
|
-
'ck',
|
|
30
|
-
'ck-label'
|
|
31
|
-
],
|
|
32
|
-
id: this.id,
|
|
33
|
-
for: bind.to('for')
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
}
|
package/src/icon/iconview.js
DELETED
|
@@ -1,123 +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/icon/iconview
|
|
7
|
-
*/
|
|
8
|
-
import { View } from '../view.js';
|
|
9
|
-
import { CKEditorError } from '@ckeditor/ckeditor5-utils';
|
|
10
|
-
import '../../theme/components/icon/icon.css';
|
|
11
|
-
/**
|
|
12
|
-
* The icon view class.
|
|
13
|
-
*/
|
|
14
|
-
export class IconView extends View {
|
|
15
|
-
/**
|
|
16
|
-
* A list of presentational attributes that can be set on the `<svg>` element and should be preserved
|
|
17
|
-
* when the icon {@link module:ui/icon/iconview~IconView#content content} is loaded.
|
|
18
|
-
*
|
|
19
|
-
* See the [specification](https://www.w3.org/TR/SVG/styling.html#TermPresentationAttribute) to learn more.
|
|
20
|
-
*/
|
|
21
|
-
static presentationalAttributeNames = [
|
|
22
|
-
'alignment-baseline', 'baseline-shift', 'clip-path', 'clip-rule', 'color', 'color-interpolation',
|
|
23
|
-
'color-interpolation-filters', 'color-rendering', 'cursor', 'direction', 'display', 'dominant-baseline', 'fill', 'fill-opacity',
|
|
24
|
-
'fill-rule', 'filter', 'flood-color', 'flood-opacity', 'font-family', 'font-size', 'font-size-adjust', 'font-stretch', 'font-style',
|
|
25
|
-
'font-variant', 'font-weight', 'image-rendering', 'letter-spacing', 'lighting-color', 'marker-end', 'marker-mid', 'marker-start',
|
|
26
|
-
'mask', 'opacity', 'overflow', 'paint-order', 'pointer-events', 'shape-rendering', 'stop-color', 'stop-opacity', 'stroke',
|
|
27
|
-
'stroke-dasharray', 'stroke-dashoffset', 'stroke-linecap', 'stroke-linejoin', 'stroke-miterlimit', 'stroke-opacity', 'stroke-width',
|
|
28
|
-
'text-anchor', 'text-decoration', 'text-overflow', 'text-rendering', 'transform', 'unicode-bidi', 'vector-effect',
|
|
29
|
-
'visibility', 'white-space', 'word-spacing', 'writing-mode'
|
|
30
|
-
];
|
|
31
|
-
/**
|
|
32
|
-
* @inheritDoc
|
|
33
|
-
*/
|
|
34
|
-
constructor() {
|
|
35
|
-
super();
|
|
36
|
-
const bind = this.bindTemplate;
|
|
37
|
-
this.set('content', '');
|
|
38
|
-
this.set('viewBox', '0 0 20 20');
|
|
39
|
-
this.set('fillColor', '');
|
|
40
|
-
this.set('isColorInherited', true);
|
|
41
|
-
this.set('isVisible', true);
|
|
42
|
-
this.setTemplate({
|
|
43
|
-
tag: 'svg',
|
|
44
|
-
ns: 'http://www.w3.org/2000/svg',
|
|
45
|
-
attributes: {
|
|
46
|
-
class: [
|
|
47
|
-
'ck',
|
|
48
|
-
'ck-icon',
|
|
49
|
-
bind.if('isVisible', 'ck-hidden', value => !value),
|
|
50
|
-
// Exclude icon internals from the CSS reset to allow rich (non-monochromatic) icons
|
|
51
|
-
// (https://github.com/ckeditor/ckeditor5/issues/12599).
|
|
52
|
-
'ck-reset_all-excluded',
|
|
53
|
-
// The class to remove the dynamic color inheritance is toggleable
|
|
54
|
-
// (https://github.com/ckeditor/ckeditor5/issues/12599).
|
|
55
|
-
bind.if('isColorInherited', 'ck-icon_inherit-color')
|
|
56
|
-
],
|
|
57
|
-
viewBox: bind.to('viewBox'),
|
|
58
|
-
'aria-hidden': true
|
|
59
|
-
}
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* @inheritDoc
|
|
64
|
-
*/
|
|
65
|
-
render() {
|
|
66
|
-
super.render();
|
|
67
|
-
this._updateXMLContent();
|
|
68
|
-
this._colorFillPaths();
|
|
69
|
-
// This is a hack for lack of innerHTML binding.
|
|
70
|
-
// See: https://github.com/ckeditor/ckeditor5-ui/issues/99.
|
|
71
|
-
this.on('change:content', () => {
|
|
72
|
-
this._updateXMLContent();
|
|
73
|
-
this._colorFillPaths();
|
|
74
|
-
});
|
|
75
|
-
this.on('change:fillColor', () => {
|
|
76
|
-
this._colorFillPaths();
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Updates the {@link #element} with the value of {@link #content}.
|
|
81
|
-
*/
|
|
82
|
-
_updateXMLContent() {
|
|
83
|
-
if (this.content) {
|
|
84
|
-
const parsed = new DOMParser().parseFromString(this.content.trim(), 'image/svg+xml');
|
|
85
|
-
const svg = parsed.querySelector('svg');
|
|
86
|
-
if (!svg) {
|
|
87
|
-
/**
|
|
88
|
-
* The provided icon content is not a valid SVG.
|
|
89
|
-
*
|
|
90
|
-
* @error ui-iconview-invalid-svg
|
|
91
|
-
*/
|
|
92
|
-
throw new CKEditorError('ui-iconview-invalid-svg', this);
|
|
93
|
-
}
|
|
94
|
-
const viewBox = svg.getAttribute('viewBox');
|
|
95
|
-
if (viewBox) {
|
|
96
|
-
this.viewBox = viewBox;
|
|
97
|
-
}
|
|
98
|
-
// Preserve presentational attributes of the <svg> element from the source.
|
|
99
|
-
// They can affect rendering of the entire icon (https://github.com/ckeditor/ckeditor5/issues/12597).
|
|
100
|
-
for (const { name, value } of Array.from(svg.attributes)) {
|
|
101
|
-
if (IconView.presentationalAttributeNames.includes(name)) {
|
|
102
|
-
this.element.setAttribute(name, value);
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
while (this.element.firstChild) {
|
|
106
|
-
this.element.removeChild(this.element.firstChild);
|
|
107
|
-
}
|
|
108
|
-
while (svg.childNodes.length > 0) {
|
|
109
|
-
this.element.appendChild(svg.childNodes[0]);
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Fills all child `path.ck-icon__fill` with the `#fillColor`.
|
|
115
|
-
*/
|
|
116
|
-
_colorFillPaths() {
|
|
117
|
-
if (this.fillColor) {
|
|
118
|
-
this.element.querySelectorAll('.ck-icon__fill').forEach(path => {
|
|
119
|
-
path.style.fill = this.fillColor;
|
|
120
|
-
});
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
}
|
package/src/iframe/iframeview.js
DELETED
|
@@ -1,63 +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/iframe/iframeview
|
|
7
|
-
*/
|
|
8
|
-
import { View } from '../view.js';
|
|
9
|
-
/**
|
|
10
|
-
* The iframe view class.
|
|
11
|
-
*
|
|
12
|
-
* ```ts
|
|
13
|
-
* const iframe = new IframeView();
|
|
14
|
-
*
|
|
15
|
-
* iframe.render();
|
|
16
|
-
* document.body.appendChild( iframe.element );
|
|
17
|
-
*
|
|
18
|
-
* iframe.on( 'loaded', () => {
|
|
19
|
-
* console.log( 'The iframe has loaded', iframe.element.contentWindow );
|
|
20
|
-
* } );
|
|
21
|
-
*
|
|
22
|
-
* iframe.element.src = 'https://ckeditor.com';
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
export class IframeView extends View {
|
|
26
|
-
/**
|
|
27
|
-
* Creates a new instance of the iframe view.
|
|
28
|
-
*
|
|
29
|
-
* @param locale The locale instance.
|
|
30
|
-
*/
|
|
31
|
-
constructor(locale) {
|
|
32
|
-
super(locale);
|
|
33
|
-
const bind = this.bindTemplate;
|
|
34
|
-
this.setTemplate({
|
|
35
|
-
tag: 'iframe',
|
|
36
|
-
attributes: {
|
|
37
|
-
class: [
|
|
38
|
-
'ck',
|
|
39
|
-
'ck-reset_all'
|
|
40
|
-
],
|
|
41
|
-
// It seems that we need to allow scripts in order to be able to listen to events.
|
|
42
|
-
// TODO: Research that. Perhaps the src must be set?
|
|
43
|
-
sandbox: 'allow-same-origin allow-scripts'
|
|
44
|
-
},
|
|
45
|
-
on: {
|
|
46
|
-
load: bind.to('loaded')
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Renders the iframe's {@link #element} and returns a `Promise` for asynchronous
|
|
52
|
-
* child `contentDocument` loading process.
|
|
53
|
-
*
|
|
54
|
-
* @returns A promise which resolves once the iframe `contentDocument` has
|
|
55
|
-
* been {@link #event:loaded}.
|
|
56
|
-
*/
|
|
57
|
-
render() {
|
|
58
|
-
return new Promise(resolve => {
|
|
59
|
-
this.on('loaded', resolve);
|
|
60
|
-
return super.render();
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
}
|
package/src/index.js
DELETED
|
@@ -1,132 +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
|
|
7
|
-
*/
|
|
8
|
-
// This import must be at the top to ensure that `globals.css` is imported first
|
|
9
|
-
export { View } from './view.js';
|
|
10
|
-
export { AriaLiveAnnouncerPoliteness, AriaLiveAnnouncer, AriaLiveAnnouncerView, AriaLiveAnnouncerRegionView } from './arialiveannouncer.js';
|
|
11
|
-
export { clickOutsideHandler } from './bindings/clickoutsidehandler.js';
|
|
12
|
-
export { CssTransitionDisablerMixin } from './bindings/csstransitiondisablermixin.js';
|
|
13
|
-
export { DraggableViewMixin } from './bindings/draggableviewmixin.js';
|
|
14
|
-
export { submitHandler } from './bindings/submithandler.js';
|
|
15
|
-
export { addKeyboardHandlingForGrid } from './bindings/addkeyboardhandlingforgrid.js';
|
|
16
|
-
export { AccessibilityHelpContentView } from './editorui/accessibilityhelp/accessibilityhelpcontentview.js';
|
|
17
|
-
export { AccessibilityHelp } from './editorui/accessibilityhelp/accessibilityhelp.js';
|
|
18
|
-
export { BodyCollection } from './editorui/bodycollection.js';
|
|
19
|
-
export { PoweredBy } from './editorui/poweredby.js';
|
|
20
|
-
export { Badge } from './badge/badge.js';
|
|
21
|
-
export { ButtonView } from './button/buttonview.js';
|
|
22
|
-
export { ButtonLabelView } from './button/buttonlabelview.js';
|
|
23
|
-
export { SwitchButtonView } from './button/switchbuttonview.js';
|
|
24
|
-
export { ListItemButtonView } from './button/listitembuttonview.js';
|
|
25
|
-
export { FileDialogButtonView, FileDialogListItemButtonView, FileDialogViewMixin } from './button/filedialogbuttonview.js';
|
|
26
|
-
export { CollapsibleView } from './collapsible/collapsibleview.js';
|
|
27
|
-
export { getLocalizedColorOptions, normalizeColorOptions, normalizeSingleColorDefinition } from './colorgrid/utils.js';
|
|
28
|
-
export { ColorGridView } from './colorgrid/colorgridview.js';
|
|
29
|
-
export { ColorTileView } from './colorgrid/colortileview.js';
|
|
30
|
-
export { ColorPickerView, SliderView, ColorPickerInputRowView } from './colorpicker/colorpickerview.js';
|
|
31
|
-
export { ColorSelectorView } from './colorselector/colorselectorview.js';
|
|
32
|
-
export { DocumentColorCollection } from './colorselector/documentcolorcollection.js';
|
|
33
|
-
export { ColorGridsFragmentView } from './colorselector/colorgridsfragmentview.js';
|
|
34
|
-
export { ColorPickerFragmentView } from './colorselector/colorpickerfragmentview.js';
|
|
35
|
-
export { ComponentFactory } from './componentfactory.js';
|
|
36
|
-
export { Dialog } from './dialog/dialog.js';
|
|
37
|
-
export { DialogView, DialogViewPosition } from './dialog/dialogview.js';
|
|
38
|
-
export { DialogActionsView } from './dialog/dialogactionsview.js';
|
|
39
|
-
export { DialogContentView } from './dialog/dialogcontentview.js';
|
|
40
|
-
export { DropdownView } from './dropdown/dropdownview.js';
|
|
41
|
-
export { DropdownPanelView } from './dropdown/dropdownpanelview.js';
|
|
42
|
-
export { DropdownButtonView } from './dropdown/button/dropdownbuttonview.js';
|
|
43
|
-
export { SplitButtonView } from './dropdown/button/splitbuttonview.js';
|
|
44
|
-
export { createDropdown, addMenuToDropdown, addToolbarToDropdown, addListToDropdown, focusChildOnDropdownOpen } from './dropdown/utils.js';
|
|
45
|
-
export { DropdownMenuPanelPositioningFunctions } from './dropdown/menu/utils.js';
|
|
46
|
-
export { DropdownMenuNestedMenuView } from './dropdown/menu/dropdownmenunestedmenuview.js';
|
|
47
|
-
export { DropdownMenuRootListView } from './dropdown/menu/dropdownmenurootlistview.js';
|
|
48
|
-
export { DropdownMenuListView } from './dropdown/menu/dropdownmenulistview.js';
|
|
49
|
-
export { DropdownMenuListItemView } from './dropdown/menu/dropdownmenulistitemview.js';
|
|
50
|
-
export { DropdownMenuListItemButtonView } from './dropdown/menu/dropdownmenulistitembuttonview.js';
|
|
51
|
-
export { DropdownMenuButtonView } from './dropdown/menu/dropdownmenubuttonview.js';
|
|
52
|
-
export { DropdownMenuNestedMenuPanelView } from './dropdown/menu/dropdownmenunestedmenupanelview.js';
|
|
53
|
-
export { EditorUI } from './editorui/editorui.js';
|
|
54
|
-
export { EditorUIView } from './editorui/editoruiview.js';
|
|
55
|
-
export { EvaluationBadge } from './editorui/evaluationbadge.js';
|
|
56
|
-
export { BoxedEditorUIView } from './editorui/boxed/boxededitoruiview.js';
|
|
57
|
-
export { InlineEditableUIView } from './editableui/inline/inlineeditableuiview.js';
|
|
58
|
-
export { EditableUIView } from './editableui/editableuiview.js';
|
|
59
|
-
export { FormRowView } from './formrow/formrowview.js';
|
|
60
|
-
export { FormHeaderView } from './formheader/formheaderview.js';
|
|
61
|
-
export { FocusCycler, isViewWithFocusCycler, isFocusable } from './focuscycler.js';
|
|
62
|
-
export { IconView } from './icon/iconview.js';
|
|
63
|
-
export { InputBase } from './input/inputbase.js';
|
|
64
|
-
export { InputView } from './input/inputview.js';
|
|
65
|
-
export { InputTextView } from './inputtext/inputtextview.js';
|
|
66
|
-
export { InputNumberView } from './inputnumber/inputnumberview.js';
|
|
67
|
-
export { TextareaView } from './textarea/textareaview.js';
|
|
68
|
-
export { IframeView } from './iframe/iframeview.js';
|
|
69
|
-
export { LabelView } from './label/labelview.js';
|
|
70
|
-
export { LabeledFieldView } from './labeledfield/labeledfieldview.js';
|
|
71
|
-
export { createLabeledInputNumber, createLabeledInputText, createLabeledTextarea, createLabeledDropdown } from './labeledfield/utils.js';
|
|
72
|
-
export { LabeledInputView } from './labeledinput/labeledinputview.js';
|
|
73
|
-
export { ListItemGroupView } from './list/listitemgroupview.js';
|
|
74
|
-
export { ListItemView } from './list/listitemview.js';
|
|
75
|
-
export { ListSeparatorView } from './list/listseparatorview.js';
|
|
76
|
-
export { ListView } from './list/listview.js';
|
|
77
|
-
export { filterGroupAndItemNames } from './search/filtergroupanditemnames.js';
|
|
78
|
-
export { Notification } from './notification/notification.js';
|
|
79
|
-
export { UIModel, UIModel as ViewModel // TODO: Remove after WProofReader has been adjusted.
|
|
80
|
-
} from './model.js';
|
|
81
|
-
export { BalloonPanelView } from './panel/balloon/balloonpanelview.js';
|
|
82
|
-
export { ContextualBalloon } from './panel/balloon/contextualballoon.js';
|
|
83
|
-
export { StickyPanelView } from './panel/sticky/stickypanelview.js';
|
|
84
|
-
export { AutocompleteView } from './autocomplete/autocompleteview.js';
|
|
85
|
-
export { SearchTextView } from './search/text/searchtextview.js';
|
|
86
|
-
export { SearchResultsView } from './search/searchresultsview.js';
|
|
87
|
-
export { SearchInfoView } from './search/searchinfoview.js';
|
|
88
|
-
export { HighlightedTextView } from './highlightedtext/highlightedtextview.js';
|
|
89
|
-
export { ButtonLabelWithHighlightView } from './highlightedtext/buttonlabelwithhighlightview.js';
|
|
90
|
-
export { LabelWithHighlightView } from './highlightedtext/labelwithhighlightview.js';
|
|
91
|
-
export { TooltipManager } from './tooltipmanager.js';
|
|
92
|
-
export { Template } from './template.js';
|
|
93
|
-
export { SpinnerView } from './spinner/spinnerview.js';
|
|
94
|
-
export { ToolbarView, ItemsView } from './toolbar/toolbarview.js';
|
|
95
|
-
export { ToolbarLineBreakView } from './toolbar/toolbarlinebreakview.js';
|
|
96
|
-
export { ToolbarSeparatorView } from './toolbar/toolbarseparatorview.js';
|
|
97
|
-
export { normalizeToolbarConfig } from './toolbar/normalizetoolbarconfig.js';
|
|
98
|
-
export { BalloonToolbar } from './toolbar/balloon/balloontoolbar.js';
|
|
99
|
-
export { BlockToolbar } from './toolbar/block/blocktoolbar.js';
|
|
100
|
-
export { BlockButtonView } from './toolbar/block/blockbuttonview.js';
|
|
101
|
-
export { ViewCollection } from './viewcollection.js';
|
|
102
|
-
export { MenuBarView } from './menubar/menubarview.js';
|
|
103
|
-
export { MenuBarMenuButtonView } from './menubar/menubarmenubuttonview.js';
|
|
104
|
-
export { MenuBarMenuPanelView } from './menubar/menubarmenupanelview.js';
|
|
105
|
-
export { MenuBarMenuView } from './menubar/menubarmenuview.js';
|
|
106
|
-
export { MenuBarMenuListView } from './menubar/menubarmenulistview.js';
|
|
107
|
-
export { MenuBarMenuListItemView } from './menubar/menubarmenulistitemview.js';
|
|
108
|
-
export { MenuBarMenuListItemButtonView } from './menubar/menubarmenulistitembuttonview.js';
|
|
109
|
-
export { MenuBarMenuListItemFileDialogButtonView } from './menubar/menubarmenulistitemfiledialogbuttonview.js';
|
|
110
|
-
export { normalizeMenuBarConfig, DefaultMenuBarItems } from './menubar/utils.js';
|
|
111
|
-
// Internals
|
|
112
|
-
export { preventDefault as _preventUiViewDefault } from './bindings/preventdefault.js';
|
|
113
|
-
export { CheckIconHolderView as _CheckIconHolderView } from './button/listitembuttonview.js';
|
|
114
|
-
export { CollapsibleView as _CollapsibleView } from './collapsible/collapsibleview.js';
|
|
115
|
-
export { tryParseHexColor as _tryNormalizeHexColor } from './colorpicker/colorpickerview.js';
|
|
116
|
-
export { convertColor as _convertColor } from './colorpicker/utils.js';
|
|
117
|
-
export { convertToHex as _convertColorToHex } from './colorpicker/utils.js';
|
|
118
|
-
export { registerCustomElement as _registerCustomElement } from './colorpicker/utils.js';
|
|
119
|
-
export { DropdownRootMenuBehaviors as _DropdownRootMenuBehaviors } from './dropdown/menu/dropdownmenubehaviors.js';
|
|
120
|
-
export { DropdownMenuBehaviors as _DropdownMenuBehaviors } from './dropdown/menu/dropdownmenubehaviors.js';
|
|
121
|
-
export { MenuBarBehaviors as _MenuBarBehaviors } from './menubar/utils.js';
|
|
122
|
-
export { MenuBarMenuBehaviors as _MenuBarMenuBehaviors } from './menubar/utils.js';
|
|
123
|
-
export { MenuBarMenuViewPanelPositioningFunctions as _MenuBarMenuViewPanelPositioningFunctions } from './menubar/utils.js';
|
|
124
|
-
export { processMenuBarConfig as _processMenuBarConfig } from './menubar/utils.js';
|
|
125
|
-
export { RotatorView as _ContextualBalloonRotatorView } from './panel/balloon/contextualballoon.js';
|
|
126
|
-
export { SearchInfoView as _SearchInfoView } from './search/searchinfoview.js';
|
|
127
|
-
export { SearchTextQueryView as _SearchTextQueryView } from './search/text/searchtextqueryview.js';
|
|
128
|
-
export { TemplateBinding as _TemplateBinding } from './template.js';
|
|
129
|
-
export { TemplateToBinding as _TemplateToBinding } from './template.js';
|
|
130
|
-
export { TemplateIfBinding as _TemplateIfBinding } from './template.js';
|
|
131
|
-
export { NESTED_TOOLBAR_ICONS } from './toolbar/toolbarview.js';
|
|
132
|
-
import './augmentation.js';
|
package/src/input/inputbase.js
DELETED
|
@@ -1,119 +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/input/inputbase
|
|
7
|
-
*/
|
|
8
|
-
import { View } from '../view.js';
|
|
9
|
-
import { FocusTracker } from '@ckeditor/ckeditor5-utils';
|
|
10
|
-
/**
|
|
11
|
-
* The base input view class.
|
|
12
|
-
*/
|
|
13
|
-
export class InputBase extends View {
|
|
14
|
-
/**
|
|
15
|
-
* Stores information about the editor UI focus and propagates it so various plugins and components
|
|
16
|
-
* are unified as a focus group.
|
|
17
|
-
*/
|
|
18
|
-
focusTracker;
|
|
19
|
-
/**
|
|
20
|
-
* @inheritDoc
|
|
21
|
-
*/
|
|
22
|
-
constructor(locale) {
|
|
23
|
-
super(locale);
|
|
24
|
-
this.set('value', undefined);
|
|
25
|
-
this.set('id', undefined);
|
|
26
|
-
this.set('placeholder', undefined);
|
|
27
|
-
this.set('tabIndex', undefined);
|
|
28
|
-
this.set('isReadOnly', false);
|
|
29
|
-
this.set('hasError', false);
|
|
30
|
-
this.set('ariaDescribedById', undefined);
|
|
31
|
-
this.set('ariaLabel', undefined);
|
|
32
|
-
this.focusTracker = new FocusTracker();
|
|
33
|
-
this.bind('isFocused').to(this.focusTracker);
|
|
34
|
-
this.set('isEmpty', true);
|
|
35
|
-
const bind = this.bindTemplate;
|
|
36
|
-
this.setTemplate({
|
|
37
|
-
tag: 'input',
|
|
38
|
-
attributes: {
|
|
39
|
-
class: [
|
|
40
|
-
'ck',
|
|
41
|
-
'ck-input',
|
|
42
|
-
bind.if('isFocused', 'ck-input_focused'),
|
|
43
|
-
bind.if('isEmpty', 'ck-input-text_empty'),
|
|
44
|
-
bind.if('hasError', 'ck-error')
|
|
45
|
-
],
|
|
46
|
-
id: bind.to('id'),
|
|
47
|
-
placeholder: bind.to('placeholder'),
|
|
48
|
-
tabindex: bind.to('tabIndex'),
|
|
49
|
-
readonly: bind.to('isReadOnly'),
|
|
50
|
-
'aria-invalid': bind.if('hasError', true),
|
|
51
|
-
'aria-describedby': bind.to('ariaDescribedById'),
|
|
52
|
-
'aria-label': bind.to('ariaLabel')
|
|
53
|
-
},
|
|
54
|
-
on: {
|
|
55
|
-
input: bind.to((...args) => {
|
|
56
|
-
this.fire('input', ...args);
|
|
57
|
-
this._updateIsEmpty();
|
|
58
|
-
}),
|
|
59
|
-
change: bind.to(this._updateIsEmpty.bind(this))
|
|
60
|
-
}
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* @inheritDoc
|
|
65
|
-
*/
|
|
66
|
-
render() {
|
|
67
|
-
super.render();
|
|
68
|
-
this.focusTracker.add(this.element);
|
|
69
|
-
this._setDomElementValue(this.value);
|
|
70
|
-
this._updateIsEmpty();
|
|
71
|
-
// Bind `this.value` to the DOM element's value.
|
|
72
|
-
// We cannot use `value` DOM attribute because removing it on Edge does not clear the DOM element's value property.
|
|
73
|
-
this.on('change:value', (evt, name, value) => {
|
|
74
|
-
this._setDomElementValue(value);
|
|
75
|
-
this._updateIsEmpty();
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* @inheritDoc
|
|
80
|
-
*/
|
|
81
|
-
destroy() {
|
|
82
|
-
super.destroy();
|
|
83
|
-
this.focusTracker.destroy();
|
|
84
|
-
}
|
|
85
|
-
/**
|
|
86
|
-
* Moves the focus to the input and selects the value.
|
|
87
|
-
*/
|
|
88
|
-
select() {
|
|
89
|
-
this.element.select();
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* Focuses the input.
|
|
93
|
-
*/
|
|
94
|
-
focus() {
|
|
95
|
-
this.element.focus();
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* Resets the value of the input
|
|
99
|
-
*/
|
|
100
|
-
reset() {
|
|
101
|
-
this.value = this.element.value = '';
|
|
102
|
-
this._updateIsEmpty();
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* Updates the {@link #isEmpty} property value on demand.
|
|
106
|
-
*/
|
|
107
|
-
_updateIsEmpty() {
|
|
108
|
-
this.isEmpty = isInputElementEmpty(this.element);
|
|
109
|
-
}
|
|
110
|
-
/**
|
|
111
|
-
* Sets the `value` property of the {@link #element DOM element} on demand.
|
|
112
|
-
*/
|
|
113
|
-
_setDomElementValue(value) {
|
|
114
|
-
this.element.value = (!value && value !== 0) ? '' : value;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
function isInputElementEmpty(domElement) {
|
|
118
|
-
return !domElement.value;
|
|
119
|
-
}
|