zx-editor
Version:
ZxEditor is a HTML5 rich text editor
1 lines • 1.4 kB
JavaScript
;function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function findAlertSetting(t,n,e,i){n=(t||"").match(new RegExp("".concat(n,":(([^\\r\\n|]*))")));return n?i?i(n[1]):n[1]:i?i(e):e}require(["gitbook","jQuery"],function(f,e){f.events.bind("page.change",function(){var a=f.state.config.pluginsConfig["flexible-alerts"];e("blockquote").each(function(){var t=e(this).html(),n=t.replace(/\[!(\w*)((?:\|\w*:.*)*?)\]([\s\S]*)/g,function(t,n,e,i){var o=a[n.toLowerCase()];if(!o)return t;var c=findAlertSetting(e,"style",a.style),r=findAlertSetting(e,"iconVisibility","visible",function(t){return"hidden"!==t}),l=findAlertSetting(e,"labelVisibility","visible",function(t){return"hidden"!==t}),n=findAlertSetting(e,"label",o.label),t=findAlertSetting(e,"icon",o.icon),e=findAlertSetting(e,"className",o.className);"object"===_typeof(n)&&((o=f.state.innerLanguage)&&n.hasOwnProperty(o)?n=n[o]:r=l=!1);t='<i class="'.concat(t,'"></i>');return'<div class="alert '.concat(c," ").concat(e,'">\n <p class="title">\n ').concat(r?t:"","\n ").concat(l?n:"","\n </p>\n <p>").concat(i,"\n </div>")});n!==t&&e(this).replaceWith(n)})})});