@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,72 +1,72 @@
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/editableui/editableuiview
7
- */
8
- import View from '../view';
9
- import type { View as EditingView } from '@ckeditor/ckeditor5-engine';
10
- import type { Locale } from '@ckeditor/ckeditor5-utils';
11
- /**
12
- * The editable UI view class.
13
- */
14
- export default class EditableUIView extends View {
15
- /**
16
- * The name of the editable UI view.
17
- */
18
- name: string | null;
19
- /**
20
- * Controls whether the editable is focused, i.e. the user is typing in it.
21
- *
22
- * @observable
23
- */
24
- isFocused: boolean;
25
- /**
26
- * The editing view instance the editable is related to. Editable uses the editing
27
- * view to dynamically modify its certain DOM attributes after {@link #render rendering}.
28
- *
29
- * **Note**: The DOM attributes are performed by the editing view and not UI
30
- * {@link module:ui/view~View#bindTemplate template bindings} because once rendered,
31
- * the editable DOM element must remain under the full control of the engine to work properly.
32
- */
33
- protected _editingView: EditingView;
34
- /**
35
- * The element which is the main editable element (usually the one with `contentEditable="true"`).
36
- */
37
- private _editableElement;
38
- /**
39
- * Whether an external {@link #_editableElement} was passed into the constructor, which also means
40
- * the view will not render its {@link #template}.
41
- */
42
- private _hasExternalElement;
43
- /**
44
- * Creates an instance of EditableUIView class.
45
- *
46
- * @param locale The locale instance.
47
- * @param editingView The editing view instance the editable is related to.
48
- * @param editableElement The editable element. If not specified, this view
49
- * should create it. Otherwise, the existing element should be used.
50
- */
51
- constructor(locale: Locale, editingView: EditingView, editableElement?: HTMLElement);
52
- /**
53
- * Renders the view by either applying the {@link #template} to the existing
54
- * {@link module:ui/editableui/editableuiview~EditableUIView#_editableElement} or assigning {@link #element}
55
- * as {@link module:ui/editableui/editableuiview~EditableUIView#_editableElement}.
56
- */
57
- render(): void;
58
- /**
59
- * @inheritDoc
60
- */
61
- destroy(): void;
62
- /**
63
- * Whether an external {@link #_editableElement} was passed into the constructor, which also means
64
- * the view will not render its {@link #template}.
65
- */
66
- get hasExternalElement(): boolean;
67
- /**
68
- * Updates the `ck-focused` and `ck-blurred` CSS classes on the {@link #element} according to
69
- * the {@link #isFocused} property value using the {@link #_editingView editing view} API.
70
- */
71
- private _updateIsFocusedClasses;
72
- }
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/editableui/editableuiview
7
+ */
8
+ import View from '../view';
9
+ import type { View as EditingView } from '@ckeditor/ckeditor5-engine';
10
+ import type { Locale } from '@ckeditor/ckeditor5-utils';
11
+ /**
12
+ * The editable UI view class.
13
+ */
14
+ export default class EditableUIView extends View {
15
+ /**
16
+ * The name of the editable UI view.
17
+ */
18
+ name: string | null;
19
+ /**
20
+ * Controls whether the editable is focused, i.e. the user is typing in it.
21
+ *
22
+ * @observable
23
+ */
24
+ isFocused: boolean;
25
+ /**
26
+ * The editing view instance the editable is related to. Editable uses the editing
27
+ * view to dynamically modify its certain DOM attributes after {@link #render rendering}.
28
+ *
29
+ * **Note**: The DOM attributes are performed by the editing view and not UI
30
+ * {@link module:ui/view~View#bindTemplate template bindings} because once rendered,
31
+ * the editable DOM element must remain under the full control of the engine to work properly.
32
+ */
33
+ protected _editingView: EditingView;
34
+ /**
35
+ * The element which is the main editable element (usually the one with `contentEditable="true"`).
36
+ */
37
+ private _editableElement;
38
+ /**
39
+ * Whether an external {@link #_editableElement} was passed into the constructor, which also means
40
+ * the view will not render its {@link #template}.
41
+ */
42
+ private _hasExternalElement;
43
+ /**
44
+ * Creates an instance of EditableUIView class.
45
+ *
46
+ * @param locale The locale instance.
47
+ * @param editingView The editing view instance the editable is related to.
48
+ * @param editableElement The editable element. If not specified, this view
49
+ * should create it. Otherwise, the existing element should be used.
50
+ */
51
+ constructor(locale: Locale, editingView: EditingView, editableElement?: HTMLElement);
52
+ /**
53
+ * Renders the view by either applying the {@link #template} to the existing
54
+ * {@link module:ui/editableui/editableuiview~EditableUIView#_editableElement} or assigning {@link #element}
55
+ * as {@link module:ui/editableui/editableuiview~EditableUIView#_editableElement}.
56
+ */
57
+ render(): void;
58
+ /**
59
+ * @inheritDoc
60
+ */
61
+ destroy(): void;
62
+ /**
63
+ * Whether an external {@link #_editableElement} was passed into the constructor, which also means
64
+ * the view will not render its {@link #template}.
65
+ */
66
+ get hasExternalElement(): boolean;
67
+ /**
68
+ * Updates the `ck-focused` and `ck-blurred` CSS classes on the {@link #element} according to
69
+ * the {@link #isFocused} property value using the {@link #_editingView editing view} API.
70
+ */
71
+ private _updateIsFocusedClasses;
72
+ }
@@ -1,112 +1,112 @@
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/editableui/editableuiview
7
- */
8
- import View from '../view';
9
- /**
10
- * The editable UI view class.
11
- */
12
- export default class EditableUIView extends View {
13
- /**
14
- * Creates an instance of EditableUIView class.
15
- *
16
- * @param locale The locale instance.
17
- * @param editingView The editing view instance the editable is related to.
18
- * @param editableElement The editable element. If not specified, this view
19
- * should create it. Otherwise, the existing element should be used.
20
- */
21
- constructor(locale, editingView, editableElement) {
22
- super(locale);
23
- /**
24
- * The name of the editable UI view.
25
- */
26
- this.name = null;
27
- this.setTemplate({
28
- tag: 'div',
29
- attributes: {
30
- class: [
31
- 'ck',
32
- 'ck-content',
33
- 'ck-editor__editable',
34
- 'ck-rounded-corners'
35
- ],
36
- lang: locale.contentLanguage,
37
- dir: locale.contentLanguageDirection
38
- }
39
- });
40
- this.set('isFocused', false);
41
- this._editableElement = editableElement;
42
- this._hasExternalElement = !!this._editableElement;
43
- this._editingView = editingView;
44
- }
45
- /**
46
- * Renders the view by either applying the {@link #template} to the existing
47
- * {@link module:ui/editableui/editableuiview~EditableUIView#_editableElement} or assigning {@link #element}
48
- * as {@link module:ui/editableui/editableuiview~EditableUIView#_editableElement}.
49
- */
50
- render() {
51
- super.render();
52
- if (this._hasExternalElement) {
53
- this.template.apply(this.element = this._editableElement);
54
- }
55
- else {
56
- this._editableElement = this.element;
57
- }
58
- this.on('change:isFocused', () => this._updateIsFocusedClasses());
59
- this._updateIsFocusedClasses();
60
- }
61
- /**
62
- * @inheritDoc
63
- */
64
- destroy() {
65
- if (this._hasExternalElement) {
66
- this.template.revert(this._editableElement);
67
- }
68
- super.destroy();
69
- }
70
- /**
71
- * Whether an external {@link #_editableElement} was passed into the constructor, which also means
72
- * the view will not render its {@link #template}.
73
- */
74
- get hasExternalElement() {
75
- return this._hasExternalElement;
76
- }
77
- /**
78
- * Updates the `ck-focused` and `ck-blurred` CSS classes on the {@link #element} according to
79
- * the {@link #isFocused} property value using the {@link #_editingView editing view} API.
80
- */
81
- _updateIsFocusedClasses() {
82
- const editingView = this._editingView;
83
- if (editingView.isRenderingInProgress) {
84
- updateAfterRender(this);
85
- }
86
- else {
87
- update(this);
88
- }
89
- function update(view) {
90
- editingView.change(writer => {
91
- const viewRoot = editingView.document.getRoot(view.name);
92
- writer.addClass(view.isFocused ? 'ck-focused' : 'ck-blurred', viewRoot);
93
- writer.removeClass(view.isFocused ? 'ck-blurred' : 'ck-focused', viewRoot);
94
- });
95
- }
96
- // In a case of a multi-root editor, a callback will be attached more than once (one callback for each root).
97
- // While executing one callback the `isRenderingInProgress` observable is changing what causes executing another
98
- // callback and render is called inside the already pending render.
99
- // We need to be sure that callback is executed only when the value has changed from `true` to `false`.
100
- // See https://github.com/ckeditor/ckeditor5/issues/1676.
101
- function updateAfterRender(view) {
102
- editingView.once('change:isRenderingInProgress', (evt, name, value) => {
103
- if (!value) {
104
- update(view);
105
- }
106
- else {
107
- updateAfterRender(view);
108
- }
109
- });
110
- }
111
- }
112
- }
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/editableui/editableuiview
7
+ */
8
+ import View from '../view';
9
+ /**
10
+ * The editable UI view class.
11
+ */
12
+ export default class EditableUIView extends View {
13
+ /**
14
+ * Creates an instance of EditableUIView class.
15
+ *
16
+ * @param locale The locale instance.
17
+ * @param editingView The editing view instance the editable is related to.
18
+ * @param editableElement The editable element. If not specified, this view
19
+ * should create it. Otherwise, the existing element should be used.
20
+ */
21
+ constructor(locale, editingView, editableElement) {
22
+ super(locale);
23
+ /**
24
+ * The name of the editable UI view.
25
+ */
26
+ this.name = null;
27
+ this.setTemplate({
28
+ tag: 'div',
29
+ attributes: {
30
+ class: [
31
+ 'ck',
32
+ 'ck-content',
33
+ 'ck-editor__editable',
34
+ 'ck-rounded-corners'
35
+ ],
36
+ lang: locale.contentLanguage,
37
+ dir: locale.contentLanguageDirection
38
+ }
39
+ });
40
+ this.set('isFocused', false);
41
+ this._editableElement = editableElement;
42
+ this._hasExternalElement = !!this._editableElement;
43
+ this._editingView = editingView;
44
+ }
45
+ /**
46
+ * Renders the view by either applying the {@link #template} to the existing
47
+ * {@link module:ui/editableui/editableuiview~EditableUIView#_editableElement} or assigning {@link #element}
48
+ * as {@link module:ui/editableui/editableuiview~EditableUIView#_editableElement}.
49
+ */
50
+ render() {
51
+ super.render();
52
+ if (this._hasExternalElement) {
53
+ this.template.apply(this.element = this._editableElement);
54
+ }
55
+ else {
56
+ this._editableElement = this.element;
57
+ }
58
+ this.on('change:isFocused', () => this._updateIsFocusedClasses());
59
+ this._updateIsFocusedClasses();
60
+ }
61
+ /**
62
+ * @inheritDoc
63
+ */
64
+ destroy() {
65
+ if (this._hasExternalElement) {
66
+ this.template.revert(this._editableElement);
67
+ }
68
+ super.destroy();
69
+ }
70
+ /**
71
+ * Whether an external {@link #_editableElement} was passed into the constructor, which also means
72
+ * the view will not render its {@link #template}.
73
+ */
74
+ get hasExternalElement() {
75
+ return this._hasExternalElement;
76
+ }
77
+ /**
78
+ * Updates the `ck-focused` and `ck-blurred` CSS classes on the {@link #element} according to
79
+ * the {@link #isFocused} property value using the {@link #_editingView editing view} API.
80
+ */
81
+ _updateIsFocusedClasses() {
82
+ const editingView = this._editingView;
83
+ if (editingView.isRenderingInProgress) {
84
+ updateAfterRender(this);
85
+ }
86
+ else {
87
+ update(this);
88
+ }
89
+ function update(view) {
90
+ editingView.change(writer => {
91
+ const viewRoot = editingView.document.getRoot(view.name);
92
+ writer.addClass(view.isFocused ? 'ck-focused' : 'ck-blurred', viewRoot);
93
+ writer.removeClass(view.isFocused ? 'ck-blurred' : 'ck-focused', viewRoot);
94
+ });
95
+ }
96
+ // In a case of a multi-root editor, a callback will be attached more than once (one callback for each root).
97
+ // While executing one callback the `isRenderingInProgress` observable is changing what causes executing another
98
+ // callback and render is called inside the already pending render.
99
+ // We need to be sure that callback is executed only when the value has changed from `true` to `false`.
100
+ // See https://github.com/ckeditor/ckeditor5/issues/1676.
101
+ function updateAfterRender(view) {
102
+ editingView.once('change:isRenderingInProgress', (evt, name, value) => {
103
+ if (!value) {
104
+ update(view);
105
+ }
106
+ else {
107
+ updateAfterRender(view);
108
+ }
109
+ });
110
+ }
111
+ }
112
+ }
@@ -1,40 +1,40 @@
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/editableui/inline/inlineeditableuiview
7
- */
8
- import EditableUIView from '../editableuiview';
9
- import type { View } from '@ckeditor/ckeditor5-engine';
10
- import type { Locale } from '@ckeditor/ckeditor5-utils';
11
- /**
12
- * The inline editable UI class implementing an inline {@link module:ui/editableui/editableuiview~EditableUIView}.
13
- */
14
- export default class InlineEditableUIView extends EditableUIView {
15
- /**
16
- * A function that gets called with the instance of this view as an argument and should return a string that
17
- * represents the label of the editable for assistive technologies.
18
- */
19
- private readonly _generateLabel;
20
- /**
21
- * Creates an instance of the InlineEditableUIView class.
22
- *
23
- * @param locale The locale instance.
24
- * @param editingView The editing view instance the editable is related to.
25
- * @param editableElement The editable element. If not specified, the
26
- * {@link module:ui/editableui/editableuiview~EditableUIView}
27
- * will create it. Otherwise, the existing element will be used.
28
- * @param options Additional configuration of the view.
29
- * @param options.label A function that gets called with the instance of this view as an argument
30
- * and should return a string that represents the label of the editable for assistive technologies. If not provided,
31
- * a default label generator is used.
32
- */
33
- constructor(locale: Locale, editingView: View, editableElement?: HTMLElement, options?: {
34
- label?: (view: InlineEditableUIView) => string;
35
- });
36
- /**
37
- * @inheritDoc
38
- */
39
- render(): void;
40
- }
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/editableui/inline/inlineeditableuiview
7
+ */
8
+ import EditableUIView from '../editableuiview';
9
+ import type { View } from '@ckeditor/ckeditor5-engine';
10
+ import type { Locale } from '@ckeditor/ckeditor5-utils';
11
+ /**
12
+ * The inline editable UI class implementing an inline {@link module:ui/editableui/editableuiview~EditableUIView}.
13
+ */
14
+ export default class InlineEditableUIView extends EditableUIView {
15
+ /**
16
+ * A function that gets called with the instance of this view as an argument and should return a string that
17
+ * represents the label of the editable for assistive technologies.
18
+ */
19
+ private readonly _generateLabel;
20
+ /**
21
+ * Creates an instance of the InlineEditableUIView class.
22
+ *
23
+ * @param locale The locale instance.
24
+ * @param editingView The editing view instance the editable is related to.
25
+ * @param editableElement The editable element. If not specified, the
26
+ * {@link module:ui/editableui/editableuiview~EditableUIView}
27
+ * will create it. Otherwise, the existing element will be used.
28
+ * @param options Additional configuration of the view.
29
+ * @param options.label A function that gets called with the instance of this view as an argument
30
+ * and should return a string that represents the label of the editable for assistive technologies. If not provided,
31
+ * a default label generator is used.
32
+ */
33
+ constructor(locale: Locale, editingView: View, editableElement?: HTMLElement, options?: {
34
+ label?: (view: InlineEditableUIView) => string;
35
+ });
36
+ /**
37
+ * @inheritDoc
38
+ */
39
+ render(): void;
40
+ }
@@ -1,48 +1,48 @@
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/editableui/inline/inlineeditableuiview
7
- */
8
- import EditableUIView from '../editableuiview';
9
- /**
10
- * The inline editable UI class implementing an inline {@link module:ui/editableui/editableuiview~EditableUIView}.
11
- */
12
- export default class InlineEditableUIView extends EditableUIView {
13
- /**
14
- * Creates an instance of the InlineEditableUIView class.
15
- *
16
- * @param locale The locale instance.
17
- * @param editingView The editing view instance the editable is related to.
18
- * @param editableElement The editable element. If not specified, the
19
- * {@link module:ui/editableui/editableuiview~EditableUIView}
20
- * will create it. Otherwise, the existing element will be used.
21
- * @param options Additional configuration of the view.
22
- * @param options.label A function that gets called with the instance of this view as an argument
23
- * and should return a string that represents the label of the editable for assistive technologies. If not provided,
24
- * a default label generator is used.
25
- */
26
- constructor(locale, editingView, editableElement, options = {}) {
27
- super(locale, editingView, editableElement);
28
- const t = locale.t;
29
- this.extendTemplate({
30
- attributes: {
31
- role: 'textbox',
32
- class: 'ck-editor__editable_inline'
33
- }
34
- });
35
- this._generateLabel = options.label || (() => t('Editor editing area: %0', this.name));
36
- }
37
- /**
38
- * @inheritDoc
39
- */
40
- render() {
41
- super.render();
42
- const editingView = this._editingView;
43
- editingView.change(writer => {
44
- const viewRoot = editingView.document.getRoot(this.name);
45
- writer.setAttribute('aria-label', this._generateLabel(this), viewRoot);
46
- });
47
- }
48
- }
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/editableui/inline/inlineeditableuiview
7
+ */
8
+ import EditableUIView from '../editableuiview';
9
+ /**
10
+ * The inline editable UI class implementing an inline {@link module:ui/editableui/editableuiview~EditableUIView}.
11
+ */
12
+ export default class InlineEditableUIView extends EditableUIView {
13
+ /**
14
+ * Creates an instance of the InlineEditableUIView class.
15
+ *
16
+ * @param locale The locale instance.
17
+ * @param editingView The editing view instance the editable is related to.
18
+ * @param editableElement The editable element. If not specified, the
19
+ * {@link module:ui/editableui/editableuiview~EditableUIView}
20
+ * will create it. Otherwise, the existing element will be used.
21
+ * @param options Additional configuration of the view.
22
+ * @param options.label A function that gets called with the instance of this view as an argument
23
+ * and should return a string that represents the label of the editable for assistive technologies. If not provided,
24
+ * a default label generator is used.
25
+ */
26
+ constructor(locale, editingView, editableElement, options = {}) {
27
+ super(locale, editingView, editableElement);
28
+ const t = locale.t;
29
+ this.extendTemplate({
30
+ attributes: {
31
+ role: 'textbox',
32
+ class: 'ck-editor__editable_inline'
33
+ }
34
+ });
35
+ this._generateLabel = options.label || (() => t('Editor editing area: %0', this.name));
36
+ }
37
+ /**
38
+ * @inheritDoc
39
+ */
40
+ render() {
41
+ super.render();
42
+ const editingView = this._editingView;
43
+ editingView.change(writer => {
44
+ const viewRoot = editingView.document.getRoot(this.name);
45
+ writer.setAttribute('aria-label', this._generateLabel(this), viewRoot);
46
+ });
47
+ }
48
+ }