@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,187 +1,187 @@
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/labeledfield/labeledfieldview
7
- */
8
- import View from '../view';
9
- import LabelView from '../label/labelview';
10
- import type { FocusableView } from '../focuscycler';
11
- import type ViewCollection from '../viewcollection';
12
- import { type Locale } from '@ckeditor/ckeditor5-utils';
13
- import '../../theme/components/labeledfield/labeledfieldview.css';
14
- /**
15
- * The labeled field view class. It can be used to enhance any view with the following features:
16
- *
17
- * * a label,
18
- * * (optional) an error message,
19
- * * (optional) an info (status) text,
20
- *
21
- * all bound logically by proper DOM attributes for UX and accessibility. It also provides an interface
22
- * (e.g. observable properties) that allows controlling those additional features.
23
- *
24
- * The constructor of this class requires a callback that returns a view to be labeled. The callback
25
- * is called with unique ids that allow binding of DOM properties:
26
- *
27
- * ```ts
28
- * const labeledInputView = new LabeledFieldView( locale, ( labeledFieldView, viewUid, statusUid ) => {
29
- * const inputView = new InputTextView( labeledFieldView.locale );
30
- *
31
- * inputView.set( {
32
- * id: viewUid,
33
- * ariaDescribedById: statusUid
34
- * } );
35
- *
36
- * inputView.bind( 'isReadOnly' ).to( labeledFieldView, 'isEnabled', value => !value );
37
- * inputView.bind( 'hasError' ).to( labeledFieldView, 'errorText', value => !!value );
38
- *
39
- * return inputView;
40
- * } );
41
- *
42
- * labeledInputView.label = 'User name';
43
- * labeledInputView.infoText = 'Full name like for instance, John Doe.';
44
- * labeledInputView.render();
45
- *
46
- * document.body.append( labeledInputView.element );
47
- * ```
48
- *
49
- * See {@link module:ui/labeledfield/utils} to discover ready–to–use labeled input helpers for common
50
- * UI components.
51
- */
52
- export default class LabeledFieldView<TFieldView extends FocusableView = FocusableView> extends View {
53
- /**
54
- * The field view that gets labeled.
55
- */
56
- readonly fieldView: TFieldView;
57
- /**
58
- * The label view instance that describes the entire view.
59
- */
60
- readonly labelView: LabelView;
61
- /**
62
- * The status view for the {@link #fieldView}. It displays {@link #errorText} and
63
- * {@link #infoText}.
64
- */
65
- readonly statusView: View;
66
- /**
67
- * A collection of children of the internal wrapper element. Allows inserting additional DOM elements (views) next to
68
- * the {@link #fieldView} for easy styling (e.g. positioning).
69
- *
70
- * By default, the collection contains {@link #fieldView} and {@link #labelView}.
71
- */
72
- readonly fieldWrapperChildren: ViewCollection;
73
- /**
74
- * The text of the label.
75
- *
76
- * @observable
77
- */
78
- label: string | undefined;
79
- /**
80
- * Controls whether the component is in read-only mode.
81
- *
82
- * @observable
83
- */
84
- isEnabled: boolean;
85
- /**
86
- * An observable flag set to `true` when {@link #fieldView} is empty (`false` otherwise).
87
- *
88
- * @readonly
89
- * @observable
90
- * @default true
91
- */
92
- isEmpty: boolean;
93
- /**
94
- * An observable flag set to `true` when {@link #fieldView} is currently focused by
95
- * the user (`false` otherwise).
96
- *
97
- * @readonly
98
- * @observable
99
- * @default false
100
- */
101
- isFocused: boolean;
102
- /**
103
- * The validation error text. When set, it will be displayed
104
- * next to the {@link #fieldView} as a typical validation error message.
105
- * Set it to `null` to hide the message.
106
- *
107
- * **Note:** Setting this property to anything but `null` will automatically
108
- * make the `hasError` of the {@link #fieldView} `true`.
109
- *
110
- * @observable
111
- */
112
- errorText: string | null;
113
- /**
114
- * The additional information text displayed next to the {@link #fieldView} which can
115
- * be used to inform the user about its purpose, provide help or hints.
116
- *
117
- * Set it to `null` to hide the message.
118
- *
119
- * **Note:** This text will be displayed in the same place as {@link #errorText} but the
120
- * latter always takes precedence: if the {@link #errorText} is set, it replaces
121
- * {@link #infoText}.
122
- *
123
- * @observable
124
- * @default null
125
- */
126
- infoText: string | null;
127
- /**
128
- * (Optional) The additional CSS class set on the dropdown {@link #element}.
129
- *
130
- * @observable
131
- */
132
- class: string | undefined;
133
- /**
134
- * The content of the `placeholder` attribute of the {@link #fieldView}.
135
- *
136
- * @observable
137
- */
138
- placeholder: string | undefined;
139
- /**
140
- * The combined status text made of {@link #errorText} and {@link #infoText}.
141
- * Note that when present, {@link #errorText} always takes precedence in the
142
- * status.
143
- *
144
- * @see #errorText
145
- * @see #infoText
146
- * @see #statusView
147
- * @private
148
- * @observable
149
- */
150
- _statusText: string | null;
151
- /**
152
- * Creates an instance of the labeled field view class using a provided creator function
153
- * that provides the view to be labeled.
154
- *
155
- * @param locale The locale instance.
156
- * @param viewCreator A function that returns a {@link module:ui/view~View}
157
- * that will be labeled. The following arguments are passed to the creator function:
158
- *
159
- * * an instance of the `LabeledFieldView` to allow binding observable properties,
160
- * * an UID string that connects the {@link #labelView label} and the labeled field view in DOM,
161
- * * an UID string that connects the {@link #statusView status} and the labeled field view in DOM.
162
- */
163
- constructor(locale: Locale | undefined, viewCreator: LabeledFieldViewCreator<TFieldView>);
164
- /**
165
- * Creates label view class instance and bind with view.
166
- *
167
- * @param id Unique id to set as labelView#for attribute.
168
- */
169
- private _createLabelView;
170
- /**
171
- * Creates the status view instance. It displays {@link #errorText} and {@link #infoText}
172
- * next to the {@link #fieldView}. See {@link #_statusText}.
173
- *
174
- * @param statusUid Unique id of the status, shared with the {@link #fieldView view's}
175
- * `aria-describedby` attribute.
176
- */
177
- private _createStatusView;
178
- /**
179
- * Focuses the {@link #fieldView}.
180
- */
181
- focus(direction?: 1 | -1): void;
182
- }
183
- /**
184
- * A creator function that returns a focusable view to be labeled by a {@link module:ui/labeledfield/labeledfieldview~LabeledFieldView}
185
- * instance.
186
- */
187
- export type LabeledFieldViewCreator<TFieldView extends FocusableView> = (labeledFieldView: LabeledFieldView, viewUid: string, statusUid: string) => TFieldView;
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/labeledfield/labeledfieldview
7
+ */
8
+ import View from '../view';
9
+ import LabelView from '../label/labelview';
10
+ import type { FocusableView } from '../focuscycler';
11
+ import type ViewCollection from '../viewcollection';
12
+ import { type Locale } from '@ckeditor/ckeditor5-utils';
13
+ import '../../theme/components/labeledfield/labeledfieldview.css';
14
+ /**
15
+ * The labeled field view class. It can be used to enhance any view with the following features:
16
+ *
17
+ * * a label,
18
+ * * (optional) an error message,
19
+ * * (optional) an info (status) text,
20
+ *
21
+ * all bound logically by proper DOM attributes for UX and accessibility. It also provides an interface
22
+ * (e.g. observable properties) that allows controlling those additional features.
23
+ *
24
+ * The constructor of this class requires a callback that returns a view to be labeled. The callback
25
+ * is called with unique ids that allow binding of DOM properties:
26
+ *
27
+ * ```ts
28
+ * const labeledInputView = new LabeledFieldView( locale, ( labeledFieldView, viewUid, statusUid ) => {
29
+ * const inputView = new InputTextView( labeledFieldView.locale );
30
+ *
31
+ * inputView.set( {
32
+ * id: viewUid,
33
+ * ariaDescribedById: statusUid
34
+ * } );
35
+ *
36
+ * inputView.bind( 'isReadOnly' ).to( labeledFieldView, 'isEnabled', value => !value );
37
+ * inputView.bind( 'hasError' ).to( labeledFieldView, 'errorText', value => !!value );
38
+ *
39
+ * return inputView;
40
+ * } );
41
+ *
42
+ * labeledInputView.label = 'User name';
43
+ * labeledInputView.infoText = 'Full name like for instance, John Doe.';
44
+ * labeledInputView.render();
45
+ *
46
+ * document.body.append( labeledInputView.element );
47
+ * ```
48
+ *
49
+ * See {@link module:ui/labeledfield/utils} to discover ready–to–use labeled input helpers for common
50
+ * UI components.
51
+ */
52
+ export default class LabeledFieldView<TFieldView extends FocusableView = FocusableView> extends View {
53
+ /**
54
+ * The field view that gets labeled.
55
+ */
56
+ readonly fieldView: TFieldView;
57
+ /**
58
+ * The label view instance that describes the entire view.
59
+ */
60
+ readonly labelView: LabelView;
61
+ /**
62
+ * The status view for the {@link #fieldView}. It displays {@link #errorText} and
63
+ * {@link #infoText}.
64
+ */
65
+ readonly statusView: View;
66
+ /**
67
+ * A collection of children of the internal wrapper element. Allows inserting additional DOM elements (views) next to
68
+ * the {@link #fieldView} for easy styling (e.g. positioning).
69
+ *
70
+ * By default, the collection contains {@link #fieldView} and {@link #labelView}.
71
+ */
72
+ readonly fieldWrapperChildren: ViewCollection;
73
+ /**
74
+ * The text of the label.
75
+ *
76
+ * @observable
77
+ */
78
+ label: string | undefined;
79
+ /**
80
+ * Controls whether the component is in read-only mode.
81
+ *
82
+ * @observable
83
+ */
84
+ isEnabled: boolean;
85
+ /**
86
+ * An observable flag set to `true` when {@link #fieldView} is empty (`false` otherwise).
87
+ *
88
+ * @readonly
89
+ * @observable
90
+ * @default true
91
+ */
92
+ isEmpty: boolean;
93
+ /**
94
+ * An observable flag set to `true` when {@link #fieldView} is currently focused by
95
+ * the user (`false` otherwise).
96
+ *
97
+ * @readonly
98
+ * @observable
99
+ * @default false
100
+ */
101
+ isFocused: boolean;
102
+ /**
103
+ * The validation error text. When set, it will be displayed
104
+ * next to the {@link #fieldView} as a typical validation error message.
105
+ * Set it to `null` to hide the message.
106
+ *
107
+ * **Note:** Setting this property to anything but `null` will automatically
108
+ * make the `hasError` of the {@link #fieldView} `true`.
109
+ *
110
+ * @observable
111
+ */
112
+ errorText: string | null;
113
+ /**
114
+ * The additional information text displayed next to the {@link #fieldView} which can
115
+ * be used to inform the user about its purpose, provide help or hints.
116
+ *
117
+ * Set it to `null` to hide the message.
118
+ *
119
+ * **Note:** This text will be displayed in the same place as {@link #errorText} but the
120
+ * latter always takes precedence: if the {@link #errorText} is set, it replaces
121
+ * {@link #infoText}.
122
+ *
123
+ * @observable
124
+ * @default null
125
+ */
126
+ infoText: string | null;
127
+ /**
128
+ * (Optional) The additional CSS class set on the dropdown {@link #element}.
129
+ *
130
+ * @observable
131
+ */
132
+ class: string | undefined;
133
+ /**
134
+ * The content of the `placeholder` attribute of the {@link #fieldView}.
135
+ *
136
+ * @observable
137
+ */
138
+ placeholder: string | undefined;
139
+ /**
140
+ * The combined status text made of {@link #errorText} and {@link #infoText}.
141
+ * Note that when present, {@link #errorText} always takes precedence in the
142
+ * status.
143
+ *
144
+ * @see #errorText
145
+ * @see #infoText
146
+ * @see #statusView
147
+ * @private
148
+ * @observable
149
+ */
150
+ _statusText: string | null;
151
+ /**
152
+ * Creates an instance of the labeled field view class using a provided creator function
153
+ * that provides the view to be labeled.
154
+ *
155
+ * @param locale The locale instance.
156
+ * @param viewCreator A function that returns a {@link module:ui/view~View}
157
+ * that will be labeled. The following arguments are passed to the creator function:
158
+ *
159
+ * * an instance of the `LabeledFieldView` to allow binding observable properties,
160
+ * * an UID string that connects the {@link #labelView label} and the labeled field view in DOM,
161
+ * * an UID string that connects the {@link #statusView status} and the labeled field view in DOM.
162
+ */
163
+ constructor(locale: Locale | undefined, viewCreator: LabeledFieldViewCreator<TFieldView>);
164
+ /**
165
+ * Creates label view class instance and bind with view.
166
+ *
167
+ * @param id Unique id to set as labelView#for attribute.
168
+ */
169
+ private _createLabelView;
170
+ /**
171
+ * Creates the status view instance. It displays {@link #errorText} and {@link #infoText}
172
+ * next to the {@link #fieldView}. See {@link #_statusText}.
173
+ *
174
+ * @param statusUid Unique id of the status, shared with the {@link #fieldView view's}
175
+ * `aria-describedby` attribute.
176
+ */
177
+ private _createStatusView;
178
+ /**
179
+ * Focuses the {@link #fieldView}.
180
+ */
181
+ focus(direction?: 1 | -1): void;
182
+ }
183
+ /**
184
+ * A creator function that returns a focusable view to be labeled by a {@link module:ui/labeledfield/labeledfieldview~LabeledFieldView}
185
+ * instance.
186
+ */
187
+ export type LabeledFieldViewCreator<TFieldView extends FocusableView> = (labeledFieldView: LabeledFieldView, viewUid: string, statusUid: string) => TFieldView;