UNPKG

froala-editor

Version:

The next generation Javascript WYSIWYG HTML rich text editor made by devs for devs. High performance and modern design make it easy to use for developers and loved by users.

7 lines (6 loc) 3.66 kB
/*! * froala_editor v5.2.0 (https://www.froala.com/wysiwyg-editor) * License https://froala.com/wysiwyg-editor/terms/ * Copyright 2014-2026 Froala Labs */ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(require("froala-editor")):"function"==typeof define&&define.amd?define(["froala-editor"],t):t(("undefined"!=typeof globalThis?globalThis:e||self).FroalaEditor)}(this,function(e){"use strict";function i(e,t,o){(t=function(e){e=function(e,t){if("object"!=typeof e||!e)return e;var o=e[Symbol.toPrimitive];if(void 0===o)return("string"===t?String:Number)(e);e=o.call(e,t);if("object"!=typeof e)return e;throw new TypeError("@@toPrimitive must return a primitive value.")}(e,"string");return"symbol"==typeof e?e:e+""}(t))in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o}function r(t,e){var o,i=Object.keys(t);return Object.getOwnPropertySymbols&&(o=Object.getOwnPropertySymbols(t),e&&(o=o.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,o)),i}function u(t){for(var e=1;e<arguments.length;e++){var o=null!=arguments[e]?arguments[e]:{};e%2?r(Object(o),!0).forEach(function(e){i(t,e,o[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(o)):r(Object(o)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(o,e))})}return t}if(Object.assign(e.DEFAULTS,{filerobotOptions:{theme:{palette:{"bg-primary-active":"#4CA6FF"},typography:{fontFamily:"Roboto, Arial"}},annotationsCommon:{fill:"#ff0000"},Text:{text:"Enter text..."},Rotate:{angle:90,componentType:"buttons"},tabsIds:["Adjust","Annotate","Filters","Finetune","Resize","Watermark"],defaultTabId:"Annotate",defaultToolId:"Text",savingPixelRatio:0,previewPixelRatio:0,closeAfterSave:!0,defaultSavedImageType:"png"},FilerobotImageEditor:window.FilerobotImageEditor}),e.PLUGINS.imageFilerobot=function(o){var i=null;function c(e){i&&(i.terminate(),i=null);var t=o.o_doc.getElementById("filerobot-editor");t&&t.remove(),e.classList.remove("active"),o.events.trigger("filerobot.closed")}return{_init:function(){var e=o.o_doc.body,t=o.o_doc.createElement("div");t.setAttribute("id","filerobotContainer"),e.appendChild(t)},launch:function(n,a){var l;if("undefined"!=typeof n.opts.FilerobotImageEditor&&!1!==n.events.trigger("filerobot.beforeOpen",[],!0)){if(a){if(!(l=n.image.get()))return;t=l[0].src}var e=n.o_doc.createElement("div"),f=(e.setAttribute("id","filerobot-editor"),n.o_doc.getElementById("filerobotContainer")),t=(f.innerHTML="",f.appendChild(e),f.classList.add("active"),u(u({},n.opts.filerobotOptions),{},{source:t,onSave:function(e){var t,o,i,r;!1!==n.events.trigger("filerobot.beforeSave",[e],!0)&&(t=e,o=n,i=l,r=a,fetch(t.imageBase64).then(function(e){return e.blob()}).then(function(e){e=new Blob([e],{type:t.mimeType||"image/png"});r&&(o.image.edit(i),o.image.upload([e],i,{fullName:t.fullName,name:t.name,extension:t.extension,mimeType:t.mimeType,height:t.height,width:t.width})),o.events.trigger("filerobot.saved",[t])})["catch"](function(e){}),c(f))},onClose:function(){c(f)}}));(i=new n.opts.FilerobotImageEditor(e,t)).render({onClose:function(){c(f)}}),n.events.trigger("filerobot.opened",[i])}}}},e.DefineIcon("imageFilerobot",{NAME:"sliders",FA5NAME:"sliders-h",SVG_KEY:"advancedImageEditor"}),e.RegisterCommand("imageFilerobot",{title:"Advanced Edit (File-Robot)",undo:!1,focus:!1,callback:function(){this.imageFilerobot.launch(this,!0)},plugin:"imageFilerobot"}),!e.PLUGINS.image)throw new Error("Filerobot image editor plugin requires image plugin.");e.DEFAULTS.imageEditButtons.push("imageFilerobot")});