Proyectos de Subversion Moodle

Rev

Rev 1 | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
// This file is part of Moodle - http://moodle.org/ //
2
// Moodle is free software: you can redistribute it and/or modify
3
// it under the terms of the GNU General Public License as published by
4
// the Free Software Foundation, either version 3 of the License, or
5
// (at your option) any later version.
6
//
7
// Moodle is distributed in the hope that it will be useful,
8
// but WITHOUT ANY WARRANTY; without even the implied warranty of
9
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10
// GNU General Public License for more details.
11
//
12
// You should have received a copy of the GNU General Public License
13
// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
14
 
15
/**
16
 * Javascript events for the `core_editor` subsystem.
17
 *
18
 * @module     core_editor/events
19
 * @copyright  2021 Andrew Nicols <andrew@nicols.co.uk>
20
 * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
21
 * @since      4.0
22
 */
23
 
24
import {dispatchEvent} from 'core/event_dispatcher';
25
 
26
/**
27
 * Events for the `core_editor` subsystem.
28
 *
29
 * @constant
30
 * @property {String} editorContentRestored See {@link event:editorContentRestored}
31
 */
32
export const eventTypes = {
33
    /**
34
     * An event triggered when an editor restores auto-saved content.
35
     *
36
     * @event editorContentRestored
37
     */
38
    editorContentRestored: 'core_editor/contentRestored',
39
};
40
 
41
/**
42
 * Trigger an event to indicate that editor content was restored.
43
 *
44
 * @method  notifyEditorContentRestored
45
 * @param   {HTMLElement|null} editor The element that was modified
46
 * @returns {CustomEvent}
47
 * @fires   editorContentRestored
48
 */
49
export const notifyEditorContentRestored = editor => {
50
    if (!editor) {
51
        window.console.warn(
52
            `The HTMLElement representing the editor that was modified should be provided to notifyEditorContentRestored.`
53
        );
54
    }
55
    return dispatchEvent(
56
        eventTypes.editorContentRestored,
57
        {},
58
        editor || document
59
    );
60
};