MDL-77979 tiny_noautolink: Add the noautolink plugin to the quickbar

Modified the addQuickbarsToolbarItem function on the util to make the additional toolbar item work.
This commit is contained in:
meirzamoodle 2023-08-22 10:32:35 +07:00
parent f26b42d000
commit 9526b815f5
6 changed files with 17 additions and 14 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -186,17 +186,19 @@ export const addContextmenuItem = (contextmenu, ...menuitems) => {
};
/**
* Given a TinyMCE quickbars configuration, add items to the meun.
* Given a TinyMCE quickbars configuration, add items to the menu.
*
* @param {string} toolbar
* @param {string[]} menuitems
* @param {string} quicktoolbar
* @param {string[]} toolbaritems
* @returns {string}
*/
// eslint-disable-next-line no-unused-vars
export const addQuickbarsToolbarItem = (toolbar, ...menuitems) => {
// For the moment we have disabled use of this menu.
// The configuration is left in place to allow plugins to declare that they would like to support it in the future.
return toolbar;
export const addQuickbarsToolbarItem = (quicktoolbar, ...toolbaritems) => {
const quicktoolbarItems = (quicktoolbar ?? '').split(' ');
return quicktoolbarItems
.concat(toolbaritems)
.filter((item) => item !== '')
.join(' ');
};
/**

View File

@ -1,3 +1,3 @@
define("tiny_noautolink/configuration",["exports","./common","editor_tiny/utils"],(function(_exports,_common,_utils){Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.configure=void 0;_exports.configure=instanceConfig=>({toolbar:(0,_utils.addToolbarButton)(instanceConfig.toolbar,"content",_common.component),menu:(0,_utils.addMenubarItem)(instanceConfig.menu,"format"," | "+_common.component)})}));
define("tiny_noautolink/configuration",["exports","./common","editor_tiny/utils"],(function(_exports,_common,_utils){Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.configure=void 0;_exports.configure=instanceConfig=>({quickbars_selection_toolbar:(0,_utils.addQuickbarsToolbarItem)(instanceConfig.quickbars_selection_toolbar,"|",_common.component),toolbar:(0,_utils.addToolbarButton)(instanceConfig.toolbar,"content",_common.component),menu:(0,_utils.addMenubarItem)(instanceConfig.menu,"format"," | "+_common.component)})}));
//# sourceMappingURL=configuration.min.js.map

View File

@ -1 +1 @@
{"version":3,"file":"configuration.min.js","sources":["../src/configuration.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 <http://www.gnu.org/licenses/>.\n\n/**\n * Tiny noautolink configuration.\n *\n * @module tiny_noautolink/configuration\n * @copyright 2023 Meirza <meirza.arson@moodle.com>\n * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later\n */\n\n\nimport {component as buttonName} from './common';\nimport {addToolbarButton, addMenubarItem} from 'editor_tiny/utils';\n\nexport const configure = (instanceConfig) => {\n // Update the instance configuration to add the noautolink menu option to the menus and toolbars.\n return {\n toolbar: addToolbarButton(instanceConfig.toolbar, 'content', buttonName),\n menu: addMenubarItem(instanceConfig.menu, 'format', ' | ' + buttonName),\n };\n};\n"],"names":["instanceConfig","toolbar","buttonName","menu"],"mappings":"0NA2B0BA,iBAEf,CACHC,SAAS,2BAAiBD,eAAeC,QAAS,UAAWC,mBAC7DC,MAAM,yBAAeH,eAAeG,KAAM,SAAU,MAAQD"}
{"version":3,"file":"configuration.min.js","sources":["../src/configuration.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 <http://www.gnu.org/licenses/>.\n\n/**\n * Tiny noautolink configuration.\n *\n * @module tiny_noautolink/configuration\n * @copyright 2023 Meirza <meirza.arson@moodle.com>\n * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later\n */\n\nimport {component as buttonName} from './common';\nimport {addQuickbarsToolbarItem, addToolbarButton, addMenubarItem} from 'editor_tiny/utils';\n\nexport const configure = (instanceConfig) => {\n // Update the instance configuration to add the noautolink menu option to the menus and toolbars.\n return {\n // eslint-disable-next-line camelcase\n quickbars_selection_toolbar: addQuickbarsToolbarItem(instanceConfig.quickbars_selection_toolbar, '|', buttonName),\n toolbar: addToolbarButton(instanceConfig.toolbar, 'content', buttonName),\n menu: addMenubarItem(instanceConfig.menu, 'format', ' | ' + buttonName),\n };\n};\n"],"names":["instanceConfig","quickbars_selection_toolbar","buttonName","toolbar","menu"],"mappings":"0NA0B0BA,iBAEf,CAEHC,6BAA6B,kCAAwBD,eAAeC,4BAA6B,IAAKC,mBACtGC,SAAS,2BAAiBH,eAAeG,QAAS,UAAWD,mBAC7DE,MAAM,yBAAeJ,eAAeI,KAAM,SAAU,MAAQF"}

View File

@ -21,13 +21,14 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
import {component as buttonName} from './common';
import {addToolbarButton, addMenubarItem} from 'editor_tiny/utils';
import {addQuickbarsToolbarItem, addToolbarButton, addMenubarItem} from 'editor_tiny/utils';
export const configure = (instanceConfig) => {
// Update the instance configuration to add the noautolink menu option to the menus and toolbars.
return {
// eslint-disable-next-line camelcase
quickbars_selection_toolbar: addQuickbarsToolbarItem(instanceConfig.quickbars_selection_toolbar, '|', buttonName),
toolbar: addToolbarButton(instanceConfig.toolbar, 'content', buttonName),
menu: addMenubarItem(instanceConfig.menu, 'format', ' | ' + buttonName),
};