@ckeditor/ckeditor5-ui 40.0.0 → 40.2.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 (171) hide show
  1. package/CHANGELOG.md +26 -26
  2. package/LICENSE.md +3 -3
  3. package/lang/translations/gl.po +4 -4
  4. package/lang/translations/pt-br.po +1 -1
  5. package/lang/translations/sr-latn.po +6 -6
  6. package/lang/translations/ug.po +26 -26
  7. package/package.json +3 -3
  8. package/src/arialiveannouncer.d.ts +94 -0
  9. package/src/arialiveannouncer.js +113 -0
  10. package/src/augmentation.d.ts +86 -86
  11. package/src/augmentation.js +5 -5
  12. package/src/autocomplete/autocompleteview.d.ts +81 -81
  13. package/src/autocomplete/autocompleteview.js +153 -146
  14. package/src/bindings/addkeyboardhandlingforgrid.d.ts +27 -27
  15. package/src/bindings/addkeyboardhandlingforgrid.js +107 -107
  16. package/src/bindings/clickoutsidehandler.d.ts +28 -28
  17. package/src/bindings/clickoutsidehandler.js +36 -36
  18. package/src/bindings/csstransitiondisablermixin.d.ts +40 -40
  19. package/src/bindings/csstransitiondisablermixin.js +55 -55
  20. package/src/bindings/injectcsstransitiondisabler.d.ts +59 -59
  21. package/src/bindings/injectcsstransitiondisabler.js +71 -71
  22. package/src/bindings/preventdefault.d.ts +33 -33
  23. package/src/bindings/preventdefault.js +34 -34
  24. package/src/bindings/submithandler.d.ts +57 -57
  25. package/src/bindings/submithandler.js +47 -47
  26. package/src/button/button.d.ts +172 -178
  27. package/src/button/button.js +5 -5
  28. package/src/button/buttonlabel.d.ts +34 -34
  29. package/src/button/buttonlabel.js +5 -5
  30. package/src/button/buttonlabelview.d.ts +31 -31
  31. package/src/button/buttonlabelview.js +42 -42
  32. package/src/button/buttonview.d.ts +181 -185
  33. package/src/button/buttonview.js +217 -219
  34. package/src/button/switchbuttonview.d.ts +45 -45
  35. package/src/button/switchbuttonview.js +75 -75
  36. package/src/collapsible/collapsibleview.d.ts +69 -0
  37. package/src/collapsible/collapsibleview.js +95 -0
  38. package/src/colorgrid/colorgridview.d.ts +132 -132
  39. package/src/colorgrid/colorgridview.js +124 -124
  40. package/src/colorgrid/colortileview.d.ts +28 -28
  41. package/src/colorgrid/colortileview.js +40 -40
  42. package/src/colorgrid/utils.d.ts +47 -47
  43. package/src/colorgrid/utils.js +84 -84
  44. package/src/colorpicker/colorpickerview.d.ts +137 -137
  45. package/src/colorpicker/colorpickerview.js +270 -270
  46. package/src/colorpicker/utils.d.ts +43 -43
  47. package/src/colorpicker/utils.js +99 -99
  48. package/src/colorselector/colorgridsfragmentview.d.ts +194 -194
  49. package/src/colorselector/colorgridsfragmentview.js +289 -289
  50. package/src/colorselector/colorpickerfragmentview.d.ts +128 -128
  51. package/src/colorselector/colorpickerfragmentview.js +205 -205
  52. package/src/colorselector/colorselectorview.d.ts +242 -242
  53. package/src/colorselector/colorselectorview.js +256 -256
  54. package/src/colorselector/documentcolorcollection.d.ts +70 -70
  55. package/src/colorselector/documentcolorcollection.js +42 -42
  56. package/src/componentfactory.d.ts +81 -81
  57. package/src/componentfactory.js +104 -104
  58. package/src/dropdown/button/dropdownbutton.d.ts +25 -25
  59. package/src/dropdown/button/dropdownbutton.js +5 -5
  60. package/src/dropdown/button/dropdownbuttonview.d.ts +48 -48
  61. package/src/dropdown/button/dropdownbuttonview.js +66 -66
  62. package/src/dropdown/button/splitbuttonview.d.ts +162 -161
  63. package/src/dropdown/button/splitbuttonview.js +154 -152
  64. package/src/dropdown/dropdownpanelfocusable.d.ts +21 -21
  65. package/src/dropdown/dropdownpanelfocusable.js +5 -5
  66. package/src/dropdown/dropdownpanelview.d.ts +62 -62
  67. package/src/dropdown/dropdownpanelview.js +97 -97
  68. package/src/dropdown/dropdownview.d.ts +315 -315
  69. package/src/dropdown/dropdownview.js +379 -379
  70. package/src/dropdown/utils.d.ts +235 -235
  71. package/src/dropdown/utils.js +463 -458
  72. package/src/editableui/editableuiview.d.ts +72 -72
  73. package/src/editableui/editableuiview.js +112 -112
  74. package/src/editableui/inline/inlineeditableuiview.d.ts +40 -40
  75. package/src/editableui/inline/inlineeditableuiview.js +48 -48
  76. package/src/editorui/bodycollection.d.ts +55 -55
  77. package/src/editorui/bodycollection.js +84 -84
  78. package/src/editorui/boxed/boxededitoruiview.d.ts +40 -40
  79. package/src/editorui/boxed/boxededitoruiview.js +81 -81
  80. package/src/editorui/editorui.d.ts +288 -282
  81. package/src/editorui/editorui.js +412 -410
  82. package/src/editorui/editoruiview.d.ts +39 -39
  83. package/src/editorui/editoruiview.js +38 -38
  84. package/src/editorui/poweredby.d.ts +71 -71
  85. package/src/editorui/poweredby.js +276 -276
  86. package/src/focuscycler.d.ts +226 -226
  87. package/src/focuscycler.js +245 -245
  88. package/src/formheader/formheaderview.d.ts +59 -59
  89. package/src/formheader/formheaderview.js +69 -69
  90. package/src/highlightedtext/highlightedtextview.d.ts +38 -38
  91. package/src/highlightedtext/highlightedtextview.js +102 -102
  92. package/src/icon/iconview.d.ts +85 -85
  93. package/src/icon/iconview.js +114 -114
  94. package/src/iframe/iframeview.d.ts +50 -50
  95. package/src/iframe/iframeview.js +63 -63
  96. package/src/index.d.ts +74 -73
  97. package/src/index.js +71 -70
  98. package/src/input/inputbase.d.ts +107 -107
  99. package/src/input/inputbase.js +110 -110
  100. package/src/input/inputview.d.ts +36 -36
  101. package/src/input/inputview.js +24 -24
  102. package/src/inputnumber/inputnumberview.d.ts +49 -49
  103. package/src/inputnumber/inputnumberview.js +40 -40
  104. package/src/inputtext/inputtextview.d.ts +18 -18
  105. package/src/inputtext/inputtextview.js +27 -27
  106. package/src/label/labelview.d.ts +36 -36
  107. package/src/label/labelview.js +41 -41
  108. package/src/labeledfield/labeledfieldview.d.ts +187 -187
  109. package/src/labeledfield/labeledfieldview.js +157 -157
  110. package/src/labeledfield/utils.d.ts +123 -123
  111. package/src/labeledfield/utils.js +176 -176
  112. package/src/labeledinput/labeledinputview.d.ts +125 -125
  113. package/src/labeledinput/labeledinputview.js +125 -125
  114. package/src/list/listitemgroupview.d.ts +59 -51
  115. package/src/list/listitemgroupview.js +67 -75
  116. package/src/list/listitemview.d.ts +36 -36
  117. package/src/list/listitemview.js +42 -42
  118. package/src/list/listseparatorview.d.ts +18 -18
  119. package/src/list/listseparatorview.js +28 -28
  120. package/src/list/listview.d.ts +123 -122
  121. package/src/list/listview.js +188 -187
  122. package/src/model.d.ts +22 -22
  123. package/src/model.js +31 -31
  124. package/src/notification/notification.d.ts +211 -211
  125. package/src/notification/notification.js +187 -187
  126. package/src/panel/balloon/balloonpanelview.d.ts +685 -685
  127. package/src/panel/balloon/balloonpanelview.js +1010 -1010
  128. package/src/panel/balloon/contextualballoon.d.ts +299 -299
  129. package/src/panel/balloon/contextualballoon.js +572 -572
  130. package/src/panel/sticky/stickypanelview.d.ts +156 -156
  131. package/src/panel/sticky/stickypanelview.js +234 -234
  132. package/src/search/filteredview.d.ts +31 -31
  133. package/src/search/filteredview.js +5 -5
  134. package/src/search/searchinfoview.d.ts +45 -45
  135. package/src/search/searchinfoview.js +59 -59
  136. package/src/search/searchresultsview.d.ts +54 -54
  137. package/src/search/searchresultsview.js +65 -65
  138. package/src/search/text/searchtextqueryview.d.ts +76 -76
  139. package/src/search/text/searchtextqueryview.js +75 -75
  140. package/src/search/text/searchtextview.d.ts +219 -219
  141. package/src/search/text/searchtextview.js +201 -201
  142. package/src/spinner/spinnerview.d.ts +25 -25
  143. package/src/spinner/spinnerview.js +38 -38
  144. package/src/template.d.ts +942 -942
  145. package/src/template.js +1294 -1294
  146. package/src/textarea/textareaview.d.ts +88 -88
  147. package/src/textarea/textareaview.js +142 -140
  148. package/src/toolbar/balloon/balloontoolbar.d.ts +122 -122
  149. package/src/toolbar/balloon/balloontoolbar.js +300 -300
  150. package/src/toolbar/block/blockbuttonview.d.ts +35 -35
  151. package/src/toolbar/block/blockbuttonview.js +41 -41
  152. package/src/toolbar/block/blocktoolbar.d.ts +161 -161
  153. package/src/toolbar/block/blocktoolbar.js +395 -395
  154. package/src/toolbar/normalizetoolbarconfig.d.ts +40 -40
  155. package/src/toolbar/normalizetoolbarconfig.js +52 -51
  156. package/src/toolbar/toolbarlinebreakview.d.ts +18 -18
  157. package/src/toolbar/toolbarlinebreakview.js +28 -28
  158. package/src/toolbar/toolbarseparatorview.d.ts +18 -18
  159. package/src/toolbar/toolbarseparatorview.js +28 -28
  160. package/src/toolbar/toolbarview.d.ts +266 -266
  161. package/src/toolbar/toolbarview.js +719 -719
  162. package/src/tooltipmanager.d.ts +180 -180
  163. package/src/tooltipmanager.js +353 -353
  164. package/src/view.d.ts +422 -422
  165. package/src/view.js +396 -396
  166. package/src/viewcollection.d.ts +139 -139
  167. package/src/viewcollection.js +206 -206
  168. package/theme/components/arialiveannouncer/arialiveannouncer.css +10 -0
  169. package/theme/components/button/button.css +9 -1
  170. package/theme/components/collapsible/collapsible.css +10 -0
  171. package/theme/components/formheader/formheader.css +0 -4
@@ -1,31 +1,31 @@
1
- /**
2
- * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
- * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
- */
5
- /**
6
- * @module ui/button/buttonlabelview
7
- */
8
- import View from '../view';
9
- import type ButtonLabel from './buttonlabel';
10
- /**
11
- * A default implementation of the button view's label. It comes with a dynamic text support
12
- * via {@link module:ui/button/buttonlabelview~ButtonLabelView#text} property.
13
- */
14
- export default class ButtonLabelView extends View implements ButtonLabel {
15
- /**
16
- * @inheritDoc
17
- */
18
- id: string | undefined;
19
- /**
20
- * @inheritDoc
21
- */
22
- style: string | undefined;
23
- /**
24
- * @inheritDoc
25
- */
26
- text: string | undefined;
27
- /**
28
- * @inheritDoc
29
- */
30
- constructor();
31
- }
1
+ /**
2
+ * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @module ui/button/buttonlabelview
7
+ */
8
+ import View from '../view';
9
+ import type ButtonLabel from './buttonlabel';
10
+ /**
11
+ * A default implementation of the button view's label. It comes with a dynamic text support
12
+ * via {@link module:ui/button/buttonlabelview~ButtonLabelView#text} property.
13
+ */
14
+ export default class ButtonLabelView extends View implements ButtonLabel {
15
+ /**
16
+ * @inheritDoc
17
+ */
18
+ id: string | undefined;
19
+ /**
20
+ * @inheritDoc
21
+ */
22
+ style: string | undefined;
23
+ /**
24
+ * @inheritDoc
25
+ */
26
+ text: string | undefined;
27
+ /**
28
+ * @inheritDoc
29
+ */
30
+ constructor();
31
+ }
@@ -1,42 +1,42 @@
1
- /**
2
- * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
- * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
- */
5
- /**
6
- * @module ui/button/buttonlabelview
7
- */
8
- import View from '../view';
9
- /**
10
- * A default implementation of the button view's label. It comes with a dynamic text support
11
- * via {@link module:ui/button/buttonlabelview~ButtonLabelView#text} property.
12
- */
13
- export default class ButtonLabelView extends View {
14
- /**
15
- * @inheritDoc
16
- */
17
- constructor() {
18
- super();
19
- this.set({
20
- style: undefined,
21
- text: undefined,
22
- id: undefined
23
- });
24
- const bind = this.bindTemplate;
25
- this.setTemplate({
26
- tag: 'span',
27
- attributes: {
28
- class: [
29
- 'ck',
30
- 'ck-button__label'
31
- ],
32
- style: bind.to('style'),
33
- id: bind.to('id')
34
- },
35
- children: [
36
- {
37
- text: bind.to('text')
38
- }
39
- ]
40
- });
41
- }
42
- }
1
+ /**
2
+ * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @module ui/button/buttonlabelview
7
+ */
8
+ import View from '../view';
9
+ /**
10
+ * A default implementation of the button view's label. It comes with a dynamic text support
11
+ * via {@link module:ui/button/buttonlabelview~ButtonLabelView#text} property.
12
+ */
13
+ export default class ButtonLabelView extends View {
14
+ /**
15
+ * @inheritDoc
16
+ */
17
+ constructor() {
18
+ super();
19
+ this.set({
20
+ style: undefined,
21
+ text: undefined,
22
+ id: undefined
23
+ });
24
+ const bind = this.bindTemplate;
25
+ this.setTemplate({
26
+ tag: 'span',
27
+ attributes: {
28
+ class: [
29
+ 'ck',
30
+ 'ck-button__label'
31
+ ],
32
+ style: bind.to('style'),
33
+ id: bind.to('id')
34
+ },
35
+ children: [
36
+ {
37
+ text: bind.to('text')
38
+ }
39
+ ]
40
+ });
41
+ }
42
+ }
@@ -1,185 +1,181 @@
1
- /**
2
- * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
- * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
- */
5
- /**
6
- * @module ui/button/buttonview
7
- */
8
- import View from '../view';
9
- import IconView from '../icon/iconview';
10
- import type ViewCollection from '../viewcollection';
11
- import type { default as Button } from './button';
12
- import type ButtonLabel from './buttonlabel';
13
- import { type Locale } from '@ckeditor/ckeditor5-utils';
14
- import '../../theme/components/button/button.css';
15
- /**
16
- * The button view class.
17
- *
18
- * ```ts
19
- * const view = new ButtonView();
20
- *
21
- * view.set( {
22
- * label: 'A button',
23
- * keystroke: 'Ctrl+B',
24
- * tooltip: true,
25
- * withText: true
26
- * } );
27
- *
28
- * view.render();
29
- *
30
- * document.body.append( view.element );
31
- * ```
32
- */
33
- export default class ButtonView extends View<HTMLButtonElement> implements Button {
34
- /**
35
- * Collection of the child views inside of the button {@link #element}.
36
- */
37
- readonly children: ViewCollection;
38
- /**
39
- * Label of the button view. Its text is configurable using the {@link #label label attribute}.
40
- *
41
- * If not configured otherwise in the `constructor()`, by default the label is an instance
42
- * of {@link module:ui/button/buttonlabelview~ButtonLabelView}.
43
- */
44
- readonly labelView: ButtonLabel;
45
- /**
46
- * The icon view of the button. Will be added to {@link #children} when the
47
- * {@link #icon icon attribute} is defined.
48
- */
49
- readonly iconView: IconView;
50
- /**
51
- * A view displaying the keystroke of the button next to the {@link #labelView label}.
52
- * Added to {@link #children} when the {@link #withKeystroke `withKeystroke` attribute}
53
- * is defined.
54
- */
55
- readonly keystrokeView: View;
56
- /**
57
- * @inheritDoc
58
- */
59
- class: string | undefined;
60
- /**
61
- * @inheritDoc
62
- */
63
- labelStyle: string | undefined;
64
- /**
65
- * @inheritDoc
66
- */
67
- icon: string | undefined;
68
- /**
69
- * @inheritDoc
70
- */
71
- isEnabled: boolean;
72
- /**
73
- * @inheritDoc
74
- */
75
- isOn: boolean;
76
- /**
77
- * @inheritDoc
78
- */
79
- isVisible: boolean;
80
- /**
81
- * @inheritDoc
82
- */
83
- isToggleable: boolean;
84
- /**
85
- * @inheritDoc
86
- */
87
- keystroke: string | undefined;
88
- /**
89
- * @inheritDoc
90
- */
91
- label: string | undefined;
92
- /**
93
- * @inheritDoc
94
- */
95
- tabindex: number;
96
- /**
97
- * @inheritDoc
98
- */
99
- tooltip: Button['tooltip'];
100
- /**
101
- * @inheritDoc
102
- */
103
- tooltipPosition: Button['tooltipPosition'];
104
- /**
105
- * @inheritDoc
106
- */
107
- type: Button['type'];
108
- /**
109
- * @inheritDoc
110
- */
111
- withText: boolean;
112
- /**
113
- * @inheritDoc
114
- */
115
- withKeystroke: boolean;
116
- /**
117
- * @inheritDoc
118
- */
119
- role: string | undefined;
120
- /**
121
- * @inheritDoc
122
- */
123
- ariaChecked: boolean | undefined;
124
- /**
125
- * @inheritDoc
126
- */
127
- ariaLabel?: string | undefined;
128
- /**
129
- * @inheritDoc
130
- */
131
- ariaLabelledBy: string | undefined;
132
- /**
133
- * Tooltip of the button bound to the template.
134
- *
135
- * @see #tooltip
136
- * @see module:ui/button/buttonview~ButtonView#_getTooltipString
137
- * @internal
138
- * @observable
139
- */
140
- _tooltipString: string;
141
- /**
142
- * Delayed focus function for focus handling in Safari.
143
- */
144
- private _focusDelayed;
145
- /**
146
- * Creates an instance of the button view class.
147
- *
148
- * @param locale The {@link module:core/editor/editor~Editor#locale} instance.
149
- * @param labelView The instance of the button's label. If not provided, an instance of
150
- * {@link module:ui/button/buttonlabelview~ButtonLabelView} is used.
151
- */
152
- constructor(locale?: Locale, labelView?: ButtonLabel);
153
- /**
154
- * @inheritDoc
155
- */
156
- render(): void;
157
- /**
158
- * Focuses the {@link #element} of the button.
159
- */
160
- focus(): void;
161
- /**
162
- * @inheritDoc
163
- */
164
- destroy(): void;
165
- /**
166
- * Binds the label view instance it with button attributes.
167
- */
168
- private _setupLabelView;
169
- /**
170
- * Creates a view that displays a keystroke next to a {@link #labelView label }
171
- * and binds it with button attributes.
172
- */
173
- private _createKeystrokeView;
174
- /**
175
- * Gets the text for the tooltip from the combination of
176
- * {@link #tooltip}, {@link #label} and {@link #keystroke} attributes.
177
- *
178
- * @see #tooltip
179
- * @see #_tooltipString
180
- * @param tooltip Button tooltip.
181
- * @param label Button label.
182
- * @param keystroke Button keystroke.
183
- */
184
- private _getTooltipString;
185
- }
1
+ /**
2
+ * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @module ui/button/buttonview
7
+ */
8
+ import View from '../view';
9
+ import IconView from '../icon/iconview';
10
+ import type ViewCollection from '../viewcollection';
11
+ import type { default as Button } from './button';
12
+ import type ButtonLabel from './buttonlabel';
13
+ import { type Locale } from '@ckeditor/ckeditor5-utils';
14
+ import '../../theme/components/button/button.css';
15
+ /**
16
+ * The button view class.
17
+ *
18
+ * ```ts
19
+ * const view = new ButtonView();
20
+ *
21
+ * view.set( {
22
+ * label: 'A button',
23
+ * keystroke: 'Ctrl+B',
24
+ * tooltip: true,
25
+ * withText: true
26
+ * } );
27
+ *
28
+ * view.render();
29
+ *
30
+ * document.body.append( view.element );
31
+ * ```
32
+ */
33
+ export default class ButtonView extends View<HTMLButtonElement> implements Button {
34
+ /**
35
+ * Collection of the child views inside of the button {@link #element}.
36
+ */
37
+ readonly children: ViewCollection;
38
+ /**
39
+ * Label of the button view. Its text is configurable using the {@link #label label attribute}.
40
+ *
41
+ * If not configured otherwise in the `constructor()`, by default the label is an instance
42
+ * of {@link module:ui/button/buttonlabelview~ButtonLabelView}.
43
+ */
44
+ readonly labelView: ButtonLabel;
45
+ /**
46
+ * The icon view of the button. Will be added to {@link #children} when the
47
+ * {@link #icon icon attribute} is defined.
48
+ */
49
+ readonly iconView: IconView;
50
+ /**
51
+ * A view displaying the keystroke of the button next to the {@link #labelView label}.
52
+ * Added to {@link #children} when the {@link #withKeystroke `withKeystroke` attribute}
53
+ * is defined.
54
+ */
55
+ readonly keystrokeView: View;
56
+ /**
57
+ * @inheritDoc
58
+ */
59
+ class: string | undefined;
60
+ /**
61
+ * @inheritDoc
62
+ */
63
+ labelStyle: string | undefined;
64
+ /**
65
+ * @inheritDoc
66
+ */
67
+ icon: string | undefined;
68
+ /**
69
+ * @inheritDoc
70
+ */
71
+ isEnabled: boolean;
72
+ /**
73
+ * @inheritDoc
74
+ */
75
+ isOn: boolean;
76
+ /**
77
+ * @inheritDoc
78
+ */
79
+ isVisible: boolean;
80
+ /**
81
+ * @inheritDoc
82
+ */
83
+ isToggleable: boolean;
84
+ /**
85
+ * @inheritDoc
86
+ */
87
+ keystroke: string | undefined;
88
+ /**
89
+ * @inheritDoc
90
+ */
91
+ label: string | undefined;
92
+ /**
93
+ * @inheritDoc
94
+ */
95
+ tabindex: number;
96
+ /**
97
+ * @inheritDoc
98
+ */
99
+ tooltip: Button['tooltip'];
100
+ /**
101
+ * @inheritDoc
102
+ */
103
+ tooltipPosition: Button['tooltipPosition'];
104
+ /**
105
+ * @inheritDoc
106
+ */
107
+ type: Button['type'];
108
+ /**
109
+ * @inheritDoc
110
+ */
111
+ withText: boolean;
112
+ /**
113
+ * @inheritDoc
114
+ */
115
+ withKeystroke: boolean;
116
+ /**
117
+ * @inheritDoc
118
+ */
119
+ role: string | undefined;
120
+ /**
121
+ * @inheritDoc
122
+ */
123
+ ariaLabel?: string | undefined;
124
+ /**
125
+ * @inheritDoc
126
+ */
127
+ ariaLabelledBy: string | undefined;
128
+ /**
129
+ * Tooltip of the button bound to the template.
130
+ *
131
+ * @see #tooltip
132
+ * @see module:ui/button/buttonview~ButtonView#_getTooltipString
133
+ * @internal
134
+ * @observable
135
+ */
136
+ _tooltipString: string;
137
+ /**
138
+ * Delayed focus function for focus handling in Safari.
139
+ */
140
+ private _focusDelayed;
141
+ /**
142
+ * Creates an instance of the button view class.
143
+ *
144
+ * @param locale The {@link module:core/editor/editor~Editor#locale} instance.
145
+ * @param labelView The instance of the button's label. If not provided, an instance of
146
+ * {@link module:ui/button/buttonlabelview~ButtonLabelView} is used.
147
+ */
148
+ constructor(locale?: Locale, labelView?: ButtonLabel);
149
+ /**
150
+ * @inheritDoc
151
+ */
152
+ render(): void;
153
+ /**
154
+ * Focuses the {@link #element} of the button.
155
+ */
156
+ focus(): void;
157
+ /**
158
+ * @inheritDoc
159
+ */
160
+ destroy(): void;
161
+ /**
162
+ * Binds the label view instance it with button attributes.
163
+ */
164
+ private _setupLabelView;
165
+ /**
166
+ * Creates a view that displays a keystroke next to a {@link #labelView label }
167
+ * and binds it with button attributes.
168
+ */
169
+ private _createKeystrokeView;
170
+ /**
171
+ * Gets the text for the tooltip from the combination of
172
+ * {@link #tooltip}, {@link #label} and {@link #keystroke} attributes.
173
+ *
174
+ * @see #tooltip
175
+ * @see #_tooltipString
176
+ * @param tooltip Button tooltip.
177
+ * @param label Button label.
178
+ * @param keystroke Button keystroke.
179
+ */
180
+ private _getTooltipString;
181
+ }