Proyectos de Subversion Moodle

Rev

Autoría | Ultima modificación | Ver Log |

define("mod_unilabel/dragdrop",["exports","core/log","core/config"],(function(_exports,_log,_config){Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.init=void 0,_log=_interopRequireDefault(_log),_config=_interopRequireDefault(_config);var _systemImportTransformerGlobalIdentifier="undefined"!=typeof window?window:"undefined"!=typeof self?self:"undefined"!=typeof global?global:{};function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}let _formid,_type,_useDragdrop,_contextid;const initDragElement=(item,index)=>{_useDragdrop&&item.classList.add("draggable"),item.dataset.index=index},resortList=()=>{let i=0;_log.default.debug("Changed sortorder"),document.querySelectorAll("#"+_formid+" fieldset.draggable").forEach((sortitem=>{let elementindex=sortitem.dataset.index;_log.default.debug("Set sortorder in element: unilabeltype_"+_type+"_sortorder["+elementindex+"]");let hiddenelement=document.forms[_formid].elements["unilabeltype_"+_type+"_sortorder["+elementindex+"]"],oldvalue=hiddenelement.value;hiddenelement.value=i+1,_log.default.debug("Element: "+elementindex+" - old value: "+oldvalue+", new value: "+hiddenelement.value),i++}))};_exports.init=async(type,formid,useDragdrop)=>{_type=type,_formid=formid,_useDragdrop=useDragdrop;const items=(formid=>{let fieldsets=document.querySelectorAll("#"+formid+" fieldset");const items=[];return fieldsets.forEach((fieldset=>{fieldset.id.startsWith("id_singleelementheader_")&&items.push(fieldset)})),items})(formid);let index=0;items.forEach((item=>{initDragElement(item,index),index++})),document.querySelector("#"+formid).addEventListener("itemadded",(e=>{_log.default.debug("New element created with index: "+e.detail);var newitem=document.querySelector("#id_singleelementheader_"+e.detail);initDragElement(newitem,e.detail),_useDragdrop&&resortList()})),document.querySelector("#"+formid).addEventListener("itemremoved",(e=>{_log.default.debug("Element has been deleted: "+e.detail),_useDragdrop&&resortList()}));const Sortable=await("function"==typeof _systemImportTransformerGlobalIdentifier.define&&_systemImportTransformerGlobalIdentifier.define.amd?new Promise((function(resolve,reject){_systemImportTransformerGlobalIdentifier.require([_config.default.wwwroot+"/mod/unilabel/js/Sortable.min.js"],resolve,reject)})):"undefined"!=typeof module&&module.exports&&"undefined"!=typeof require||"undefined"!=typeof module&&module.component&&_systemImportTransformerGlobalIdentifier.require&&"component"===_systemImportTransformerGlobalIdentifier.require.loader?Promise.resolve(require(_config.default.wwwroot+"/mod/unilabel/js/Sortable.min.js")):Promise.resolve(_systemImportTransformerGlobalIdentifier[_config.default.wwwroot+"/mod/unilabel/js/Sortable.min.js"]));_contextid=_config.default.contextid;const mysortablelist=document.querySelector("#"+formid);var sortable=Sortable.create(mysortablelist,{draggable:".draggable",handle:".draghandle",animation:150,swapThreshold:.5,onEnd:async e=>{if(_log.default.debug(e.item),void 0!==globalThis.tinymce){var fieldsetselector="#"+e.item.id;_log.default.debug(fieldsetselector);var repeatindex=parseInt(document.querySelector(fieldsetselector).dataset.index);let tinyeditor=await("function"==typeof _systemImportTransformerGlobalIdentifier.define&&_systemImportTransformerGlobalIdentifier.define.amd?new Promise((function(resolve,reject){_systemImportTransformerGlobalIdentifier.require(["editor_tiny/editor"],resolve,reject)})):"undefined"!=typeof module&&module.exports&&"undefined"!=typeof require||"undefined"!=typeof module&&module.component&&_systemImportTransformerGlobalIdentifier.require&&"component"===_systemImportTransformerGlobalIdentifier.require.loader?Promise.resolve(require("editor_tiny/editor")):Promise.resolve(_systemImportTransformerGlobalIdentifier["editor_tiny/editor"])),tinyconfig=await("function"==typeof _systemImportTransformerGlobalIdentifier.define&&_systemImportTransformerGlobalIdentifier.define.amd?new Promise((function(resolve,reject){_systemImportTransformerGlobalIdentifier.require(["mod_unilabel/tinyconfig"],resolve,reject)})):"undefined"!=typeof module&&module.exports&&"undefined"!=typeof require||"undefined"!=typeof module&&module.component&&_systemImportTransformerGlobalIdentifier.require&&"component"===_systemImportTransformerGlobalIdentifier.require.loader?Promise.resolve(require("mod_unilabel/tinyconfig")):Promise.resolve(_systemImportTransformerGlobalIdentifier["mod_unilabel/tinyconfig"]));globalThis.tinymce.remove("#"+e.item.id+" textarea"),document.querySelectorAll("#id_singleelementheader_"+repeatindex+' [data-fieldtype="editor"]').forEach((async editorcontainer=>{let target=editorcontainer.querySelector("textarea"),targetid=target.getAttribute("id"),targetname=target.getAttribute("name"),draftitemidselector=targetname.replace("[text]","[itemid]"),draftitemid=document.forms[_formid][draftitemidselector].value,config=await tinyconfig.getTinyConfig(_contextid,targetid,targetname,draftitemid,repeatindex);await tinyeditor.setupForTarget(target,config)}))}return resortList(),!0}});return _log.default.debug("Initialized sortable list"),sortable}}));

//# sourceMappingURL=dragdrop.min.js.map