@ckeditor/ckeditor5-ui 40.0.0 → 40.1.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 +3 -3
- package/lang/translations/pt-br.po +1 -1
- package/lang/translations/ug.po +26 -26
- package/package.json +3 -3
- package/src/arialiveannouncer.d.ts +94 -0
- package/src/arialiveannouncer.js +113 -0
- package/src/augmentation.d.ts +86 -86
- package/src/augmentation.js +5 -5
- package/src/autocomplete/autocompleteview.d.ts +81 -81
- package/src/autocomplete/autocompleteview.js +153 -146
- package/src/bindings/addkeyboardhandlingforgrid.d.ts +27 -27
- package/src/bindings/addkeyboardhandlingforgrid.js +107 -107
- package/src/bindings/clickoutsidehandler.d.ts +28 -28
- package/src/bindings/clickoutsidehandler.js +36 -36
- package/src/bindings/csstransitiondisablermixin.d.ts +40 -40
- package/src/bindings/csstransitiondisablermixin.js +55 -55
- package/src/bindings/injectcsstransitiondisabler.d.ts +59 -59
- package/src/bindings/injectcsstransitiondisabler.js +71 -71
- package/src/bindings/preventdefault.d.ts +33 -33
- package/src/bindings/preventdefault.js +34 -34
- package/src/bindings/submithandler.d.ts +57 -57
- package/src/bindings/submithandler.js +47 -47
- package/src/button/button.d.ts +172 -178
- package/src/button/button.js +5 -5
- package/src/button/buttonlabel.d.ts +34 -34
- package/src/button/buttonlabel.js +5 -5
- package/src/button/buttonlabelview.d.ts +31 -31
- package/src/button/buttonlabelview.js +42 -42
- package/src/button/buttonview.d.ts +181 -185
- package/src/button/buttonview.js +217 -219
- package/src/button/switchbuttonview.d.ts +45 -45
- package/src/button/switchbuttonview.js +75 -75
- package/src/colorgrid/colorgridview.d.ts +132 -132
- package/src/colorgrid/colorgridview.js +124 -124
- package/src/colorgrid/colortileview.d.ts +28 -28
- package/src/colorgrid/colortileview.js +40 -40
- package/src/colorgrid/utils.d.ts +47 -47
- package/src/colorgrid/utils.js +84 -84
- package/src/colorpicker/colorpickerview.d.ts +137 -137
- package/src/colorpicker/colorpickerview.js +270 -270
- package/src/colorpicker/utils.d.ts +43 -43
- package/src/colorpicker/utils.js +99 -99
- package/src/colorselector/colorgridsfragmentview.d.ts +194 -194
- package/src/colorselector/colorgridsfragmentview.js +289 -289
- package/src/colorselector/colorpickerfragmentview.d.ts +128 -128
- package/src/colorselector/colorpickerfragmentview.js +205 -205
- package/src/colorselector/colorselectorview.d.ts +242 -242
- package/src/colorselector/colorselectorview.js +256 -256
- package/src/colorselector/documentcolorcollection.d.ts +70 -70
- package/src/colorselector/documentcolorcollection.js +42 -42
- package/src/componentfactory.d.ts +81 -81
- package/src/componentfactory.js +104 -104
- package/src/dropdown/button/dropdownbutton.d.ts +25 -25
- package/src/dropdown/button/dropdownbutton.js +5 -5
- package/src/dropdown/button/dropdownbuttonview.d.ts +48 -48
- package/src/dropdown/button/dropdownbuttonview.js +66 -66
- package/src/dropdown/button/splitbuttonview.d.ts +161 -161
- package/src/dropdown/button/splitbuttonview.js +152 -152
- package/src/dropdown/dropdownpanelfocusable.d.ts +21 -21
- package/src/dropdown/dropdownpanelfocusable.js +5 -5
- package/src/dropdown/dropdownpanelview.d.ts +62 -62
- package/src/dropdown/dropdownpanelview.js +97 -97
- package/src/dropdown/dropdownview.d.ts +315 -315
- package/src/dropdown/dropdownview.js +379 -379
- package/src/dropdown/utils.d.ts +235 -235
- package/src/dropdown/utils.js +463 -458
- package/src/editableui/editableuiview.d.ts +72 -72
- package/src/editableui/editableuiview.js +112 -112
- package/src/editableui/inline/inlineeditableuiview.d.ts +40 -40
- package/src/editableui/inline/inlineeditableuiview.js +48 -48
- package/src/editorui/bodycollection.d.ts +55 -55
- package/src/editorui/bodycollection.js +84 -84
- package/src/editorui/boxed/boxededitoruiview.d.ts +40 -40
- package/src/editorui/boxed/boxededitoruiview.js +81 -81
- package/src/editorui/editorui.d.ts +288 -282
- package/src/editorui/editorui.js +412 -410
- package/src/editorui/editoruiview.d.ts +39 -39
- package/src/editorui/editoruiview.js +38 -38
- package/src/editorui/poweredby.d.ts +71 -71
- package/src/editorui/poweredby.js +276 -276
- package/src/focuscycler.d.ts +226 -226
- package/src/focuscycler.js +245 -245
- package/src/formheader/formheaderview.d.ts +59 -59
- package/src/formheader/formheaderview.js +69 -69
- package/src/highlightedtext/highlightedtextview.d.ts +38 -38
- package/src/highlightedtext/highlightedtextview.js +102 -102
- package/src/icon/iconview.d.ts +85 -85
- package/src/icon/iconview.js +114 -114
- package/src/iframe/iframeview.d.ts +50 -50
- package/src/iframe/iframeview.js +63 -63
- package/src/index.d.ts +73 -73
- package/src/index.js +70 -70
- package/src/input/inputbase.d.ts +107 -107
- package/src/input/inputbase.js +110 -110
- package/src/input/inputview.d.ts +36 -36
- package/src/input/inputview.js +24 -24
- package/src/inputnumber/inputnumberview.d.ts +49 -49
- package/src/inputnumber/inputnumberview.js +40 -40
- package/src/inputtext/inputtextview.d.ts +18 -18
- package/src/inputtext/inputtextview.js +27 -27
- package/src/label/labelview.d.ts +36 -36
- package/src/label/labelview.js +41 -41
- package/src/labeledfield/labeledfieldview.d.ts +187 -187
- package/src/labeledfield/labeledfieldview.js +157 -157
- package/src/labeledfield/utils.d.ts +123 -123
- package/src/labeledfield/utils.js +176 -176
- package/src/labeledinput/labeledinputview.d.ts +125 -125
- package/src/labeledinput/labeledinputview.js +125 -125
- package/src/list/listitemgroupview.d.ts +59 -51
- package/src/list/listitemgroupview.js +63 -75
- package/src/list/listitemview.d.ts +36 -36
- package/src/list/listitemview.js +42 -42
- package/src/list/listseparatorview.d.ts +18 -18
- package/src/list/listseparatorview.js +28 -28
- package/src/list/listview.d.ts +122 -122
- package/src/list/listview.js +187 -187
- package/src/model.d.ts +22 -22
- package/src/model.js +31 -31
- package/src/notification/notification.d.ts +211 -211
- package/src/notification/notification.js +187 -187
- package/src/panel/balloon/balloonpanelview.d.ts +685 -685
- package/src/panel/balloon/balloonpanelview.js +1010 -1010
- package/src/panel/balloon/contextualballoon.d.ts +299 -299
- package/src/panel/balloon/contextualballoon.js +572 -572
- package/src/panel/sticky/stickypanelview.d.ts +156 -156
- package/src/panel/sticky/stickypanelview.js +234 -234
- package/src/search/filteredview.d.ts +31 -31
- package/src/search/filteredview.js +5 -5
- package/src/search/searchinfoview.d.ts +45 -45
- package/src/search/searchinfoview.js +59 -59
- package/src/search/searchresultsview.d.ts +54 -54
- package/src/search/searchresultsview.js +65 -65
- package/src/search/text/searchtextqueryview.d.ts +76 -76
- package/src/search/text/searchtextqueryview.js +75 -75
- package/src/search/text/searchtextview.d.ts +219 -219
- package/src/search/text/searchtextview.js +201 -201
- package/src/spinner/spinnerview.d.ts +25 -25
- package/src/spinner/spinnerview.js +38 -38
- package/src/template.d.ts +942 -942
- package/src/template.js +1294 -1294
- package/src/textarea/textareaview.d.ts +88 -88
- package/src/textarea/textareaview.js +142 -140
- package/src/toolbar/balloon/balloontoolbar.d.ts +122 -122
- package/src/toolbar/balloon/balloontoolbar.js +300 -300
- package/src/toolbar/block/blockbuttonview.d.ts +35 -35
- package/src/toolbar/block/blockbuttonview.js +41 -41
- package/src/toolbar/block/blocktoolbar.d.ts +161 -161
- package/src/toolbar/block/blocktoolbar.js +395 -395
- package/src/toolbar/normalizetoolbarconfig.d.ts +40 -40
- package/src/toolbar/normalizetoolbarconfig.js +52 -51
- package/src/toolbar/toolbarlinebreakview.d.ts +18 -18
- package/src/toolbar/toolbarlinebreakview.js +28 -28
- package/src/toolbar/toolbarseparatorview.d.ts +18 -18
- package/src/toolbar/toolbarseparatorview.js +28 -28
- package/src/toolbar/toolbarview.d.ts +266 -266
- package/src/toolbar/toolbarview.js +719 -719
- package/src/tooltipmanager.d.ts +180 -180
- package/src/tooltipmanager.js +353 -353
- package/src/view.d.ts +422 -422
- package/src/view.js +396 -396
- package/src/viewcollection.d.ts +139 -139
- package/src/viewcollection.js +206 -206
- package/theme/components/arialiveannouncer/arialiveannouncer.css +10 -0
- package/theme/components/button/button.css +9 -1
- 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/notification/notification
|
|
7
|
-
*/
|
|
8
|
-
/* globals window */
|
|
9
|
-
import { ContextPlugin } from '@ckeditor/ckeditor5-core';
|
|
10
|
-
/**
|
|
11
|
-
* The Notification plugin.
|
|
12
|
-
*
|
|
13
|
-
* This plugin sends a few types of notifications: `success`, `info` and `warning`. The notifications need to be
|
|
14
|
-
* handled and displayed by a plugin responsible for showing the UI of the notifications. Using this plugin for dispatching
|
|
15
|
-
* notifications makes it possible to switch the notifications UI.
|
|
16
|
-
*
|
|
17
|
-
* Note that every unhandled and not stopped `warning` notification will be displayed as a system alert.
|
|
18
|
-
* See {@link module:ui/notification/notification~Notification#showWarning}.
|
|
19
|
-
*/
|
|
20
|
-
export default class Notification extends ContextPlugin {
|
|
21
|
-
/**
|
|
22
|
-
* @inheritDoc
|
|
23
|
-
*/
|
|
24
|
-
static get pluginName() {
|
|
25
|
-
return 'Notification';
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* @inheritDoc
|
|
29
|
-
*/
|
|
30
|
-
init() {
|
|
31
|
-
// Each unhandled and not stopped `show:warning` event is displayed as a system alert.
|
|
32
|
-
this.on('show:warning', (evt, data) => {
|
|
33
|
-
window.alert(data.message); // eslint-disable-line no-alert
|
|
34
|
-
}, { priority: 'lowest' });
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Shows a success notification.
|
|
38
|
-
*
|
|
39
|
-
* By default, it fires the {@link #event:show:success `show:success` event} with the given `data`. The event namespace can be extended
|
|
40
|
-
* using the `data.namespace` option. For example:
|
|
41
|
-
*
|
|
42
|
-
* ```ts
|
|
43
|
-
* showSuccess( 'Image is uploaded.', {
|
|
44
|
-
* namespace: 'upload:image'
|
|
45
|
-
* } );
|
|
46
|
-
* ```
|
|
47
|
-
*
|
|
48
|
-
* will fire the `show:success:upload:image` event.
|
|
49
|
-
*
|
|
50
|
-
* You can provide the title of the notification:
|
|
51
|
-
*
|
|
52
|
-
* ```ts
|
|
53
|
-
* showSuccess( 'Image is uploaded.', {
|
|
54
|
-
* title: 'Image upload success'
|
|
55
|
-
* } );
|
|
56
|
-
* ```
|
|
57
|
-
*
|
|
58
|
-
* @param message The content of the notification.
|
|
59
|
-
* @param data Additional data.
|
|
60
|
-
* @param data.namespace Additional event namespace.
|
|
61
|
-
* @param data.title The title of the notification.
|
|
62
|
-
*/
|
|
63
|
-
showSuccess(message, data = {}) {
|
|
64
|
-
this._showNotification({
|
|
65
|
-
message,
|
|
66
|
-
type: 'success',
|
|
67
|
-
namespace: data.namespace,
|
|
68
|
-
title: data.title
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Shows an information notification.
|
|
73
|
-
*
|
|
74
|
-
* By default, it fires the {@link #event:show:info `show:info` event} with the given `data`. The event namespace can be extended
|
|
75
|
-
* using the `data.namespace` option. For example:
|
|
76
|
-
*
|
|
77
|
-
* ```ts
|
|
78
|
-
* showInfo( 'Editor is offline.', {
|
|
79
|
-
* namespace: 'editor:status'
|
|
80
|
-
* } );
|
|
81
|
-
* ```
|
|
82
|
-
*
|
|
83
|
-
* will fire the `show:info:editor:status` event.
|
|
84
|
-
*
|
|
85
|
-
* You can provide the title of the notification:
|
|
86
|
-
*
|
|
87
|
-
* ```ts
|
|
88
|
-
* showInfo( 'Editor is offline.', {
|
|
89
|
-
* title: 'Network information'
|
|
90
|
-
* } );
|
|
91
|
-
* ```
|
|
92
|
-
*
|
|
93
|
-
* @param message The content of the notification.
|
|
94
|
-
* @param data Additional data.
|
|
95
|
-
* @param data.namespace Additional event namespace.
|
|
96
|
-
* @param data.title The title of the notification.
|
|
97
|
-
*/
|
|
98
|
-
showInfo(message, data = {}) {
|
|
99
|
-
this._showNotification({
|
|
100
|
-
message,
|
|
101
|
-
type: 'info',
|
|
102
|
-
namespace: data.namespace,
|
|
103
|
-
title: data.title
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Shows a warning notification.
|
|
108
|
-
*
|
|
109
|
-
* By default, it fires the {@link #event:show:warning `show:warning` event}
|
|
110
|
-
* with the given `data`. The event namespace can be extended using the `data.namespace` option. For example:
|
|
111
|
-
*
|
|
112
|
-
* ```ts
|
|
113
|
-
* showWarning( 'Image upload error.', {
|
|
114
|
-
* namespace: 'upload:image'
|
|
115
|
-
* } );
|
|
116
|
-
* ```
|
|
117
|
-
*
|
|
118
|
-
* will fire the `show:warning:upload:image` event.
|
|
119
|
-
*
|
|
120
|
-
* You can provide the title of the notification:
|
|
121
|
-
*
|
|
122
|
-
* ```ts
|
|
123
|
-
* showWarning( 'Image upload error.', {
|
|
124
|
-
* title: 'Upload failed'
|
|
125
|
-
* } );
|
|
126
|
-
* ```
|
|
127
|
-
*
|
|
128
|
-
* Note that each unhandled and not stopped `warning` notification will be displayed as a system alert.
|
|
129
|
-
* The plugin responsible for displaying warnings should `stop()` the event to prevent displaying it as an alert:
|
|
130
|
-
*
|
|
131
|
-
* ```ts
|
|
132
|
-
* notifications.on( 'show:warning', ( evt, data ) => {
|
|
133
|
-
* // Do something with the data.
|
|
134
|
-
*
|
|
135
|
-
* // Stop this event to prevent displaying it as an alert.
|
|
136
|
-
* evt.stop();
|
|
137
|
-
* } );
|
|
138
|
-
* ```
|
|
139
|
-
*
|
|
140
|
-
* You can attach many listeners to the same event and `stop()` this event in a listener with a low priority:
|
|
141
|
-
*
|
|
142
|
-
* ```ts
|
|
143
|
-
* notifications.on( 'show:warning', ( evt, data ) => {
|
|
144
|
-
* // Show the warning in the UI, but do not stop it.
|
|
145
|
-
* } );
|
|
146
|
-
*
|
|
147
|
-
* notifications.on( 'show:warning', ( evt, data ) => {
|
|
148
|
-
* // Log the warning to some error tracker.
|
|
149
|
-
*
|
|
150
|
-
* // Stop this event to prevent displaying it as an alert.
|
|
151
|
-
* evt.stop();
|
|
152
|
-
* }, { priority: 'low' } );
|
|
153
|
-
* ```
|
|
154
|
-
*
|
|
155
|
-
* @param message The content of the notification.
|
|
156
|
-
* @param data Additional data.
|
|
157
|
-
* @param data.namespace Additional event namespace.
|
|
158
|
-
* @param data.title The title of the notification.
|
|
159
|
-
*/
|
|
160
|
-
showWarning(message, data = {}) {
|
|
161
|
-
this._showNotification({
|
|
162
|
-
message,
|
|
163
|
-
type: 'warning',
|
|
164
|
-
namespace: data.namespace,
|
|
165
|
-
title: data.title
|
|
166
|
-
});
|
|
167
|
-
}
|
|
168
|
-
/**
|
|
169
|
-
* Fires the `show` event with the specified type, namespace and message.
|
|
170
|
-
*
|
|
171
|
-
* @param data The message data.
|
|
172
|
-
* @param data.message The content of the notification.
|
|
173
|
-
* @param data.type The type of the message.
|
|
174
|
-
* @param data.namespace Additional event namespace.
|
|
175
|
-
* @param data.title The title of the notification.
|
|
176
|
-
*/
|
|
177
|
-
_showNotification(data) {
|
|
178
|
-
const event = data.namespace ?
|
|
179
|
-
`show:${data.type}:${data.namespace}` :
|
|
180
|
-
`show:${data.type}`;
|
|
181
|
-
this.fire(event, {
|
|
182
|
-
message: data.message,
|
|
183
|
-
type: data.type,
|
|
184
|
-
title: data.title || ''
|
|
185
|
-
});
|
|
186
|
-
}
|
|
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/notification/notification
|
|
7
|
+
*/
|
|
8
|
+
/* globals window */
|
|
9
|
+
import { ContextPlugin } from '@ckeditor/ckeditor5-core';
|
|
10
|
+
/**
|
|
11
|
+
* The Notification plugin.
|
|
12
|
+
*
|
|
13
|
+
* This plugin sends a few types of notifications: `success`, `info` and `warning`. The notifications need to be
|
|
14
|
+
* handled and displayed by a plugin responsible for showing the UI of the notifications. Using this plugin for dispatching
|
|
15
|
+
* notifications makes it possible to switch the notifications UI.
|
|
16
|
+
*
|
|
17
|
+
* Note that every unhandled and not stopped `warning` notification will be displayed as a system alert.
|
|
18
|
+
* See {@link module:ui/notification/notification~Notification#showWarning}.
|
|
19
|
+
*/
|
|
20
|
+
export default class Notification extends ContextPlugin {
|
|
21
|
+
/**
|
|
22
|
+
* @inheritDoc
|
|
23
|
+
*/
|
|
24
|
+
static get pluginName() {
|
|
25
|
+
return 'Notification';
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* @inheritDoc
|
|
29
|
+
*/
|
|
30
|
+
init() {
|
|
31
|
+
// Each unhandled and not stopped `show:warning` event is displayed as a system alert.
|
|
32
|
+
this.on('show:warning', (evt, data) => {
|
|
33
|
+
window.alert(data.message); // eslint-disable-line no-alert
|
|
34
|
+
}, { priority: 'lowest' });
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Shows a success notification.
|
|
38
|
+
*
|
|
39
|
+
* By default, it fires the {@link #event:show:success `show:success` event} with the given `data`. The event namespace can be extended
|
|
40
|
+
* using the `data.namespace` option. For example:
|
|
41
|
+
*
|
|
42
|
+
* ```ts
|
|
43
|
+
* showSuccess( 'Image is uploaded.', {
|
|
44
|
+
* namespace: 'upload:image'
|
|
45
|
+
* } );
|
|
46
|
+
* ```
|
|
47
|
+
*
|
|
48
|
+
* will fire the `show:success:upload:image` event.
|
|
49
|
+
*
|
|
50
|
+
* You can provide the title of the notification:
|
|
51
|
+
*
|
|
52
|
+
* ```ts
|
|
53
|
+
* showSuccess( 'Image is uploaded.', {
|
|
54
|
+
* title: 'Image upload success'
|
|
55
|
+
* } );
|
|
56
|
+
* ```
|
|
57
|
+
*
|
|
58
|
+
* @param message The content of the notification.
|
|
59
|
+
* @param data Additional data.
|
|
60
|
+
* @param data.namespace Additional event namespace.
|
|
61
|
+
* @param data.title The title of the notification.
|
|
62
|
+
*/
|
|
63
|
+
showSuccess(message, data = {}) {
|
|
64
|
+
this._showNotification({
|
|
65
|
+
message,
|
|
66
|
+
type: 'success',
|
|
67
|
+
namespace: data.namespace,
|
|
68
|
+
title: data.title
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Shows an information notification.
|
|
73
|
+
*
|
|
74
|
+
* By default, it fires the {@link #event:show:info `show:info` event} with the given `data`. The event namespace can be extended
|
|
75
|
+
* using the `data.namespace` option. For example:
|
|
76
|
+
*
|
|
77
|
+
* ```ts
|
|
78
|
+
* showInfo( 'Editor is offline.', {
|
|
79
|
+
* namespace: 'editor:status'
|
|
80
|
+
* } );
|
|
81
|
+
* ```
|
|
82
|
+
*
|
|
83
|
+
* will fire the `show:info:editor:status` event.
|
|
84
|
+
*
|
|
85
|
+
* You can provide the title of the notification:
|
|
86
|
+
*
|
|
87
|
+
* ```ts
|
|
88
|
+
* showInfo( 'Editor is offline.', {
|
|
89
|
+
* title: 'Network information'
|
|
90
|
+
* } );
|
|
91
|
+
* ```
|
|
92
|
+
*
|
|
93
|
+
* @param message The content of the notification.
|
|
94
|
+
* @param data Additional data.
|
|
95
|
+
* @param data.namespace Additional event namespace.
|
|
96
|
+
* @param data.title The title of the notification.
|
|
97
|
+
*/
|
|
98
|
+
showInfo(message, data = {}) {
|
|
99
|
+
this._showNotification({
|
|
100
|
+
message,
|
|
101
|
+
type: 'info',
|
|
102
|
+
namespace: data.namespace,
|
|
103
|
+
title: data.title
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Shows a warning notification.
|
|
108
|
+
*
|
|
109
|
+
* By default, it fires the {@link #event:show:warning `show:warning` event}
|
|
110
|
+
* with the given `data`. The event namespace can be extended using the `data.namespace` option. For example:
|
|
111
|
+
*
|
|
112
|
+
* ```ts
|
|
113
|
+
* showWarning( 'Image upload error.', {
|
|
114
|
+
* namespace: 'upload:image'
|
|
115
|
+
* } );
|
|
116
|
+
* ```
|
|
117
|
+
*
|
|
118
|
+
* will fire the `show:warning:upload:image` event.
|
|
119
|
+
*
|
|
120
|
+
* You can provide the title of the notification:
|
|
121
|
+
*
|
|
122
|
+
* ```ts
|
|
123
|
+
* showWarning( 'Image upload error.', {
|
|
124
|
+
* title: 'Upload failed'
|
|
125
|
+
* } );
|
|
126
|
+
* ```
|
|
127
|
+
*
|
|
128
|
+
* Note that each unhandled and not stopped `warning` notification will be displayed as a system alert.
|
|
129
|
+
* The plugin responsible for displaying warnings should `stop()` the event to prevent displaying it as an alert:
|
|
130
|
+
*
|
|
131
|
+
* ```ts
|
|
132
|
+
* notifications.on( 'show:warning', ( evt, data ) => {
|
|
133
|
+
* // Do something with the data.
|
|
134
|
+
*
|
|
135
|
+
* // Stop this event to prevent displaying it as an alert.
|
|
136
|
+
* evt.stop();
|
|
137
|
+
* } );
|
|
138
|
+
* ```
|
|
139
|
+
*
|
|
140
|
+
* You can attach many listeners to the same event and `stop()` this event in a listener with a low priority:
|
|
141
|
+
*
|
|
142
|
+
* ```ts
|
|
143
|
+
* notifications.on( 'show:warning', ( evt, data ) => {
|
|
144
|
+
* // Show the warning in the UI, but do not stop it.
|
|
145
|
+
* } );
|
|
146
|
+
*
|
|
147
|
+
* notifications.on( 'show:warning', ( evt, data ) => {
|
|
148
|
+
* // Log the warning to some error tracker.
|
|
149
|
+
*
|
|
150
|
+
* // Stop this event to prevent displaying it as an alert.
|
|
151
|
+
* evt.stop();
|
|
152
|
+
* }, { priority: 'low' } );
|
|
153
|
+
* ```
|
|
154
|
+
*
|
|
155
|
+
* @param message The content of the notification.
|
|
156
|
+
* @param data Additional data.
|
|
157
|
+
* @param data.namespace Additional event namespace.
|
|
158
|
+
* @param data.title The title of the notification.
|
|
159
|
+
*/
|
|
160
|
+
showWarning(message, data = {}) {
|
|
161
|
+
this._showNotification({
|
|
162
|
+
message,
|
|
163
|
+
type: 'warning',
|
|
164
|
+
namespace: data.namespace,
|
|
165
|
+
title: data.title
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Fires the `show` event with the specified type, namespace and message.
|
|
170
|
+
*
|
|
171
|
+
* @param data The message data.
|
|
172
|
+
* @param data.message The content of the notification.
|
|
173
|
+
* @param data.type The type of the message.
|
|
174
|
+
* @param data.namespace Additional event namespace.
|
|
175
|
+
* @param data.title The title of the notification.
|
|
176
|
+
*/
|
|
177
|
+
_showNotification(data) {
|
|
178
|
+
const event = data.namespace ?
|
|
179
|
+
`show:${data.type}:${data.namespace}` :
|
|
180
|
+
`show:${data.type}`;
|
|
181
|
+
this.fire(event, {
|
|
182
|
+
message: data.message,
|
|
183
|
+
type: data.type,
|
|
184
|
+
title: data.title || ''
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
}
|