{"version":3,"file":"modal_save_cancel.min.js","sources":["https:\/\/iie-academy.org\/lib\/amd\/src\/modal_save_cancel.js"],"sourcesContent":["\/\/ This file is part of Moodle - http:\/\/moodle.org\/\n\/\/\n\/\/ Moodle is free software: you can redistribute it and\/or modify\n\/\/ it under the terms of the GNU General Public License as published by\n\/\/ the Free Software Foundation, either version 3 of the License, or\n\/\/ (at your option) any later version.\n\/\/\n\/\/ Moodle is distributed in the hope that it will be useful,\n\/\/ but WITHOUT ANY WARRANTY; without even the implied warranty of\n\/\/ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n\/\/ GNU General Public License for more details.\n\/\/\n\/\/ You should have received a copy of the GNU General Public License\n\/\/ along with Moodle. If not, see .\n\n\/**\n * Contain the logic for the save\/cancel modal.\n *\n * @module core\/modal_save_cancel\n * @copyright 2016 Ryan Wyllie \n * @license http:\/\/www.gnu.org\/copyleft\/gpl.html GNU GPL v3 or later\n *\/\nimport Modal from 'core\/modal';\n\n\/**\n * The Save\/Cancel Modal.\n *\n * @class\n * @extends module:core\/modal\n *\/\nexport default class extends Modal {\n constructor(root) {\n super(root);\n\n if (!this.getFooter().find(this.getActionSelector('save')).length) {\n Notification.exception({message: 'No save button found'});\n }\n\n if (!this.getFooter().find(this.getActionSelector('cancel')).length) {\n Notification.exception({message: 'No cancel button found'});\n }\n }\n\n \/**\n * Register all event listeners.\n *\/\n registerEventListeners() {\n \/\/ Call the parent registration.\n super.registerEventListeners();\n\n \/\/ Register to close on save\/cancel.\n this.registerCloseOnSave();\n this.registerCloseOnCancel();\n }\n\n \/**\n * Override parent implementation to prevent changing the footer content.\n *\/\n setFooter() {\n Notification.exception({message: 'Can not change the footer of a save cancel modal'});\n return;\n }\n\n \/**\n * Set the title of the save button.\n *\n * @param {String|Promise} value The button text, or a Promise which will resolve it\n * @returns{Promise}\n *\/\n setSaveButtonText(value) {\n return this.setButtonText('save', value);\n }\n}\n"],"names":["Modal","constructor","root","this","getFooter","find","getActionSelector","length","Notification","exception","message","registerEventListeners","registerCloseOnSave","registerCloseOnCancel","setFooter","setSaveButtonText","value","setButtonText"],"mappings":";;;;;;;kKA8B6BA,eACzBC,YAAYC,YACFA,MAEDC,KAAKC,YAAYC,KAAKF,KAAKG,kBAAkB,SAASC,QACvDC,aAAaC,UAAU,CAACC,QAAS,yBAGhCP,KAAKC,YAAYC,KAAKF,KAAKG,kBAAkB,WAAWC,QACzDC,aAAaC,UAAU,CAACC,QAAS,2BAOzCC,+BAEUA,8BAGDC,2BACAC,wBAMTC,YACIN,aAAaC,UAAU,CAACC,QAAS,qDAUrCK,kBAAkBC,cACPb,KAAKc,cAAc,OAAQD"}