froala-editor
Version:
A beautiful Javascript WYSIWYG HTML rich text editor. High performance and modern design make it easy to use for developers and loved by users.
7 lines (6 loc) • 2.11 kB
JavaScript
/*!
* froala_editor v2.8.3 (https://www.froala.com/wysiwyg-editor)
* License https://froala.com/wysiwyg-editor/terms/
* Copyright 2014-2018 Froala Labs
*/
!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?a(require("jquery")):"function"==typeof define&&define.amd?define(["jquery"],a):a(e.jQuery)}(this,function(e){"use strict";var a=(e=e&&e.hasOwnProperty("default")?e["default"]:e).FE;Object.assign(a.DEFAULTS,{paragraphStyles:{"fr-text-gray":"Gray","fr-text-bordered":"Bordered","fr-text-spaced":"Spaced","fr-text-uppercase":"Uppercase"},paragraphMultipleStyles:!0}),a.PLUGINS.paragraphStyle=function(o){var p=o.$;return{_init:function(){},apply:function(e,a,t){void 0===a&&(a=o.opts.paragraphStyles),void 0===t&&(t=o.opts.paragraphMultipleStyles);var r="";t||((r=Object.keys(a)).splice(r.indexOf(e),1),r=r.join(" ")),o.selection.save(),o.html.wrap(!0,!0,!0,!0),o.selection.restore();var s=o.selection.blocks();o.selection.save();for(var l=p(s[0]).hasClass(e),n=0;n<s.length;n++)p(s[n]).removeClass(r).toggleClass(e,!l),p(s[n]).hasClass("fr-temp-div")&&p(s[n]).removeClass("fr-temp-div"),""===p(s[n]).attr("class")&&p(s[n]).removeAttr("class");o.html.unwrap(),o.selection.restore()},refreshOnShow:function(e,a){var t=o.selection.blocks();if(t.length){var r=p(t[0]);a.find(".fr-command").each(function(){var e=p(this).data("param1"),a=r.hasClass(e);p(this).toggleClass("fr-active",a).attr("aria-selected",a)})}}}},a.RegisterCommand("paragraphStyle",{type:"dropdown",html:function(){var e='<ul class="fr-dropdown-list" role="presentation">',a=this.opts.paragraphStyles;for(var t in a)Object.prototype.hasOwnProperty.call(a,t)&&(e+='<li role="presentation"><a class="fr-command '+t+'" tabIndex="-1" role="option" data-cmd="paragraphStyle" data-param1="'+t+'" title="'+this.language.translate(a[t])+'">'+this.language.translate(a[t])+"</a></li>");return e+="</ul>"},title:"Paragraph Style",callback:function(e,a){this.paragraphStyle.apply(a)},refreshOnShow:function(e,a){this.paragraphStyle.refreshOnShow(e,a)},plugin:"paragraphStyle"}),a.DefineIcon("paragraphStyle",{NAME:"magic"})});