Merge pull request #726 from gsw945/master

升级 wangEditor, 历史记录查看bug修复
pull/731/head
玖亖伍 2021-09-09 15:01:54 +08:00 committed by GitHub
commit dc386db159
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
32 changed files with 25524 additions and 20394 deletions

View File

@ -205,6 +205,10 @@ docker run -p 8181:8181 --name mindoc -e DB_ADAPTER=mysql -e MYSQL_PORT_3306_TCP
- ~~to-markdown~~[Turndown](https://github.com/domchristie/turndown) HTML转Markdown库
- ~~quill 富文本编辑器~~
- [wangEditor](https://github.com/wangeditor-team/wangEditor) 富文本编辑器
- 参考
- [wangEditor v4.7 富文本编辑器教程](https://www.bookstack.cn/books/wangeditor-4.7-zh)
- [扩展菜单注册太过繁琐 #2493](https://github.com/wangeditor-team/wangEditor/issues/2493)
- 工具: `https://babeljs.io/repl` + `@babel/plugin-transform-classes`
- [Vue.js](https://github.com/vuejs/vue) 框架

View File

@ -164,7 +164,7 @@ func (c *BookController) SaveBook() {
if !models.NewItemsets().Exist(itemId) {
c.JsonResult(6006, i18n.Tr(c.Lang, "message.project_space_not_exist"))
}
if editor != "markdown" && editor != "html" {
if editor != "markdown" && editor != "html" && editor != "new_html" {
editor = "markdown"
}

View File

@ -223,6 +223,8 @@ func (c *DocumentController) Edit() {
if bookResult.Editor == "markdown" {
c.TplName = "document/markdown_edit_template.tpl"
} else if bookResult.Editor == "html" {
c.TplName = "document/html_edit_template.tpl"
} else if bookResult.Editor == "new_html" {
c.TplName = "document/new_html_edit_template.tpl"
} else {
c.TplName = "document/" + bookResult.Editor + "_edit_template.tpl"

View File

@ -0,0 +1,106 @@
/**
* es6class使,
* https://babeljs.io/repl
* @babel/plugin-transform-classes
* `c2b`
*/
function c2b_classCallCheck(instance, Constructor) {
if (!(instance instanceof Constructor)) {
throw new TypeError("Cannot call a class as a function");
}
}
function _defineProperties(target, props) {
for (var i = 0; i < props.length; i++) {
var descriptor = props[i];
descriptor.enumerable = descriptor.enumerable || false;
descriptor.configurable = true;
if ("value" in descriptor) descriptor.writable = true;
Object.defineProperty(target, descriptor.key, descriptor);
}
}
function c2b_createClass(Constructor, protoProps, staticProps) {
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
if (staticProps) _defineProperties(Constructor, staticProps);
return Constructor;
}
function c2b_inherits(subClass, superClass) {
if (typeof superClass !== "function" && superClass !== null) {
throw new TypeError("Super expression must either be null or a function");
}
subClass.prototype = Object.create(superClass && superClass.prototype, {
constructor: { value: subClass, writable: true, configurable: true }
});
if (superClass) _setPrototypeOf(subClass, superClass);
}
function _setPrototypeOf(o, p) {
_setPrototypeOf =
Object.setPrototypeOf ||
function _setPrototypeOf(o, p) {
o.__proto__ = p;
return o;
};
return _setPrototypeOf(o, p);
}
function c2b_createSuper(Derived) {
var hasNativeReflectConstruct = _isNativeReflectConstruct();
return function _createSuperInternal() {
var Super = _getPrototypeOf(Derived),
result;
if (hasNativeReflectConstruct) {
var NewTarget = _getPrototypeOf(this).constructor;
result = Reflect.construct(Super, arguments, NewTarget);
} else {
result = Super.apply(this, arguments);
}
return _possibleConstructorReturn(this, result);
};
}
function _possibleConstructorReturn(self, call) {
if (call && (typeof call === "object" || typeof call === "function")) {
return call;
} else if (call !== void 0) {
throw new TypeError(
"Derived constructors may only return object or undefined"
);
}
return _assertThisInitialized(self);
}
function _assertThisInitialized(self) {
if (self === void 0) {
throw new ReferenceError(
"this hasn't been initialised - super() hasn't been called"
);
}
return self;
}
function _isNativeReflectConstruct() {
if (typeof Reflect === "undefined" || !Reflect.construct) return false;
if (Reflect.construct.sham) return false;
if (typeof Proxy === "function") return true;
try {
Boolean.prototype.valueOf.call(
Reflect.construct(Boolean, [], function () {})
);
return true;
} catch (e) {
return false;
}
}
function _getPrototypeOf(o) {
_getPrototypeOf = Object.setPrototypeOf
? Object.getPrototypeOf
: function _getPrototypeOf(o) {
return o.__proto__ || Object.getPrototypeOf(o);
};
return _getPrototypeOf(o);
}

View File

@ -1,21 +1,60 @@
$(function () {
wangEditor.config.mapAk = window.baiduMapKey;
window.addDocumentModalFormHtml = $(this).find("form").html();
wangEditor.config.printLog = false;
window.editor = new wangEditor('htmlEditor');
window.editor = new wangEditor('#htmlEditor');
editor.config.mapAk = window.baiduMapKey;
editor.config.printLog = false;
editor.config.showMenuTooltips = true
editor.config.menuTooltipPosition = 'down'
editor.config.uploadImgUrl = window.imageUploadURL;
editor.config.uploadImgFileName = "editormd-image-file";
editor.config.uploadParams = {
"editor" : "wangEditor"
};
wangEditor.config.menus.splice(0,0,"|");
wangEditor.config.menus.splice(0,0,"history");
wangEditor.config.menus.splice(0,0,"save");
wangEditor.config.menus.splice(0,0,"release");
wangEditor.config.menus.splice(29,0,"attach")
editor.config.uploadImgServer = window.imageUploadURL;
editor.config.customUploadImg = function (resultFiles, insertImgFn) {
// resultFiles 是 input 中选中的文件列表
// insertImgFn 是获取图片 url 后,插入到编辑器的方法
var file = resultFiles[0];
// file type is only image.
if (/^image\//.test(file.type)) {
var form = new FormData();
form.append('editormd-image-file', file, file.name);
var layerIndex = 0;
$.ajax({
url: window.imageUploadURL,
type: "POST",
dataType: "json",
data: form,
processData: false,
contentType: false,
error: function() {
layer.close(layerIndex);
layer.msg("图片上传失败");
},
success: function(data) {
layer.close(layerIndex);
if(data.errcode !== 0){
layer.msg(data.message);
}else{
insertImgFn(data.url);
}
}
});
} else {
console.warn('You could only upload images.');
}
};
/*
editor.config.menus.splice(0,0,"|");
editor.config.menus.splice(0,0,"history");
editor.config.menus.splice(0,0,"save");
editor.config.menus.splice(0,0,"release");
editor.config.menus.splice(29,0,"attach")
//移除地图、背景色
editor.config.menus = $.map(wangEditor.config.menus, function(item, key) {
editor.config.menus = $.map(editor.config.menus, function(item, key) {
if (item === 'fullscreen') {
return null;
@ -23,16 +62,8 @@ $(function () {
return item;
});
window.editor.ready(function () {
if(window.documentCategory.length > 0){
var item = window.documentCategory[0];
var $select_node = { node : {id : item.id}};
loadDocument($select_node);
}
});
*/
/*
window.editor.config.uploadImgFns.onload = function (resultText, xhr) {
// resultText 服务器端返回的text
// xhr 是 xmlHttpRequest 对象IE8、9中不支持
@ -47,13 +78,15 @@ $(function () {
layer.msg(res.message);
}
};
*/
window.editor.onchange = function () {
window.editor.config.onchange = function (newHtml) {
var saveMenu = window.editor.menus.menuList.find((item) => item.key == 'save');
// 判断内容是否改变
if (window.source !== this.$txt.html()) {
window.editor.menus.save.$domNormal.addClass('selected');
if (window.source !== window.editor.txt.html()) {
saveMenu.$elem.addClass('selected');
} else {
window.editor.menus.save.$domNormal.removeClass('selected');
saveMenu.$elem.removeClass('selected');
}
};
@ -62,7 +95,11 @@ $(function () {
$("#htmlEditor").css("height","100%");
if(window.documentCategory.length > 0){
var item = window.documentCategory[0];
var $select_node = { node : {id : item.id}};
loadDocument($select_node);
}
/***
*
@ -78,8 +115,8 @@ $(function () {
if(res.errcode === 0){
window.isLoad = true;
window.editor.clear();
window.editor.$txt.html(res.data.content);
window.editor.txt.clear();
window.editor.txt.html(res.data.content);
// 将原始内容备份
window.source = res.data.content;
var node = { "id" : res.data.doc_id,'parent' : res.data.parent_id === 0 ? '#' : res.data.parent_id ,"text" : res.data.doc_name,"identify" : res.data.identify,"version" : res.data.version};
@ -105,7 +142,7 @@ $(function () {
var index = null;
var node = window.selectNode;
var html = window.editor.$txt.html() ;
var html = window.editor.txt.html() ;
var content = "";
if($.trim(html) !== ""){
@ -149,7 +186,7 @@ $(function () {
// 更新内容备份
window.source = res.data.content;
// 触发编辑器 onchange 回调函数
window.editor.onchange();
window.editor.config.onchange();
if(typeof callback === "function"){
callback();
}
@ -267,7 +304,7 @@ $(function () {
}).on('loaded.jstree', function () {
window.treeCatalog = $(this).jstree();
}).on('select_node.jstree', function (node, selected, event) {
if(window.editor.menus.save.$domNormal.hasClass('selected')) {
if(window.editor.menus.menuList.find((item) => item.key == 'save').$elem.hasClass('selected')) {
if(confirm("编辑内容未保存,需要保存吗?")){
saveDocument(false,function () {
loadDocument(selected);
@ -283,7 +320,7 @@ $(function () {
window.releaseBook = function () {
if(Object.prototype.toString.call(window.documentCategory) === '[object Array]' && window.documentCategory.length > 0){
if(window.editor.menus.save.$domNormal.hasClass('selected')) {
if(window.editor.menus.menuList.find((item) => item.key == 'save').$elem.hasClass('selected')) {
if(confirm("编辑内容未保存,需要保存吗?")) {
saveDocument();
}
@ -305,4 +342,16 @@ $(function () {
layer.msg("没有需要发布的文档")
}
};
$(window).resize(function(e) {
var $container = $(editor.$textContainerElem.elems[0]);
var $manual = $container.closest('.manual-wangEditor');
var maxHeight = $manual.closest('.manual-editor-container').innerHeight();
var statusHeight = $manual.siblings('.manual-editor-status').outerHeight(true);
var manualHeihgt = maxHeight - statusHeight;
$manual.height(manualHeihgt);
var toolbarHeight = $container.siblings('.w-e-toolbar').outerHeight(true);
$container.height($container.parent().innerHeight() - toolbarHeight);
});
$(window).trigger('resize');
});

View File

@ -0,0 +1,42 @@
(function () {
// 获取 wangEditor 构造函数和 jquery
var E = window.wangEditor;
var $ = window.jQuery;
let AttachMenu = (function (_BtnMenu) {
c2b_inherits(AttachMenu, _BtnMenu);
var _super = c2b_createSuper(AttachMenu);
function AttachMenu(editor) {
c2b_classCallCheck(this, AttachMenu);
const $elem = E.$(`<div class="w-e-menu" data-title="附件">
<i class="fa fa-paperclip" aria-hidden="true"></i>
</div>`);
return _super.call(this, $elem, editor);
}
c2b_createClass(AttachMenu, [
{
key: "clickHandler",
value: function clickHandler() {
$("#uploadAttachModal").modal("show");
}
},
{
key: "tryChangeActive",
value: function tryChangeActive() {
// this.active();
}
}
]);
return AttachMenu;
})(E.BtnMenu);
var menuKey = 'attach';
E.registerMenu(menuKey, AttachMenu);
})();

View File

@ -0,0 +1,42 @@
(function () {
// 获取 wangEditor 构造函数和 jquery
var E = window.wangEditor;
var $ = window.jQuery;
let HistoryMenu = (function (_BtnMenu) {
c2b_inherits(HistoryMenu, _BtnMenu);
var _super = c2b_createSuper(HistoryMenu);
function HistoryMenu(editor) {
c2b_classCallCheck(this, HistoryMenu);
const $elem = E.$(`<div class="w-e-menu" data-title="history">
<i class="fa fa-history" aria-hidden="true"></i>
</div>`);
return _super.call(this, $elem, editor);
}
c2b_createClass(HistoryMenu, [
{
key: "clickHandler",
value: function clickHandler() {
window.documentHistory();
}
},
{
key: "tryChangeActive",
value: function tryChangeActive() {
// this.active();
}
}
]);
return HistoryMenu;
})(E.BtnMenu);
var menuKey = '';
E.registerMenu(menuKey, HistoryMenu);
})();

View File

@ -0,0 +1,42 @@
(function () {
// 获取 wangEditor 构造函数和 jquery
var E = window.wangEditor;
var $ = window.jQuery;
let ReleaseMenu = (function (_BtnMenu) {
c2b_inherits(ReleaseMenu, _BtnMenu);
var _super = c2b_createSuper(ReleaseMenu);
function ReleaseMenu(editor) {
c2b_classCallCheck(this, ReleaseMenu);
const $elem = E.$(`<div class="w-e-menu" data-title="发布">
<i class="fa fa-cloud-upload" aria-hidden="true"></i>
</div>`);
return _super.call(this, $elem, editor);
}
c2b_createClass(ReleaseMenu, [
{
key: "clickHandler",
value: function clickHandler() {
window.releaseBook();
}
},
{
key: "tryChangeActive",
value: function tryChangeActive() {
// this.active();
}
}
]);
return ReleaseMenu;
})(E.BtnMenu);
var menuKey = 'release';
E.registerMenu(menuKey, ReleaseMenu);
})();

View File

@ -0,0 +1,42 @@
(function () {
// 获取 wangEditor 构造函数和 jquery
var E = window.wangEditor;
var $ = window.jQuery;
let SaveMenu = (function (_BtnMenu) {
c2b_inherits(SaveMenu, _BtnMenu);
var _super = c2b_createSuper(SaveMenu);
function SaveMenu(editor) {
c2b_classCallCheck(this, SaveMenu);
const $elem = E.$(`<div class="w-e-menu" data-title="保存">
<i class="fa fa-floppy-o" aria-hidden="true"></i>
</div>`);
return _super.call(this, $elem, editor);
}
c2b_createClass(SaveMenu, [
{
key: "clickHandler",
value: function clickHandler() {
window.saveDocument();
}
},
{
key: "tryChangeActive",
value: function tryChangeActive() {
// this.active();
}
}
]);
return SaveMenu;
})(E.BtnMenu);
var menuKey = 'save';
E.registerMenu(menuKey, SaveMenu);
})();

View File

@ -1,831 +0,0 @@
/* 编辑器边框颜色 */
/* 菜单颜色、上边框颜色 */
/* 菜单选中状态的颜色 */
/* input focus 时的颜色 */
/* 按钮颜色 */
/* tab selected 状态下的颜色 */
.wangEditor-container {
position: relative;
background-color: #fff;
border: 1px solid #ccc;
z-index: 1;
width: 100%;
}
.wangEditor-container a:focus,
.wangEditor-container button:focus {
outline: none;
}
.wangEditor-container,
.wangEditor-container * {
margin: 0;
padding: 0;
box-sizing: border-box;
line-height: 1;
}
.wangEditor-container img {
border: none;
}
.wangEditor-container .clearfix:after {
content: '';
display: table;
clear: both;
}
.wangEditor-container .clearfix {
*zoom: 1;
}
.wangEditor-container textarea {
border: none;
}
.wangEditor-container textarea:focus {
outline: none;
}
.wangEditor-container .height-tip {
position: absolute;
width: 3px;
background-color: #ccc;
left: 0;
transition: top .2s;
}
.wangEditor-container .txt-toolbar {
position: absolute;
background-color: #fff;
padding: 3px 5px;
border-top: 2px solid #666;
box-shadow: 1px 3px 3px #999;
border-left: 1px\9 solid\9 #ccc\9;
border-bottom: 1px\9 solid\9 #999\9;
border-right: 1px\9 solid\9 #999\9;
}
.wangEditor-container .txt-toolbar .tip-triangle {
display: block;
position: absolute;
width: 0;
height: 0;
border: 5px solid;
border-color: transparent transparent #666 transparent;
top: -12px;
left: 50%;
margin-left: -5px;
}
.wangEditor-container .txt-toolbar a {
color: #666;
display: inline-block;
margin: 0 3px;
padding: 5px;
text-decoration: none;
border-radius: 3px;
}
.wangEditor-container .txt-toolbar a:hover {
background-color: #f1f1f1;
}
.wangEditor-container .img-drag-point {
display: block;
position: absolute;
width: 12px;
height: 12px;
border-radius: 50%;
cursor: se-resize;
background-color: #666;
margin-left: -6px;
margin-top: -6px;
box-shadow: 1px 1px 5px #999;
}
.wangEditor-container .wangEditor-upload-progress {
position: absolute;
height: 1px;
background: #1e88e5;
width: 0;
display: none;
-webkit-transition: width .5s;
-o-transition: width .5s;
transition: width .5s;
}
.wangEditor-fullscreen {
position: fixed;
top: 0;
bottom: 0;
left: 0;
right: 0;
}
.wangEditor-container .code-textarea {
resize: none;
width: 100%;
font-size: 14px;
line-height: 1.5;
font-family: 'Verdana';
color: #333;
padding: 0 15px 0 15px;
}
.wangEditor-menu-container {
width: 100%;
border-bottom: 1px solid #f1f1f1;
background-color: #fff;
}
.wangEditor-menu-container a {
text-decoration: none;
}
.wangEditor-menu-container .menu-group {
float: left;
padding: 0 8px;
border-right: 1px solid #f1f1f1;
}
.wangEditor-menu-container .menu-item {
float: left;
position: relative;
text-align: center;
height: 31px;
width: 35px;
}
.wangEditor-menu-container .menu-item:hover {
background-color: #f1f1f1;
}
.wangEditor-menu-container .menu-item a {
display: block;
text-align: center;
color: #666;
width: 100%;
padding: 8px 0;
font-size: 0.9em;
}
.wangEditor-menu-container .menu-item .selected {
color: #1e88e5;
}
.wangEditor-menu-container .menu-item .active {
background-color: #f1f1f1;
}
.wangEditor-menu-container .menu-item .disable {
opacity: 0.5;
filter: alpha(opacity=50);
}
.wangEditor-menu-container .menu-tip {
display: block;
position: absolute;
z-index: 20;
width: 60px;
text-align: center;
background-color: #666;
color: #fff;
padding: 7px 0;
font-size: 12px;
top: 100%;
left: 50%;
margin-left: -30px;
border-radius: 2px;
box-shadow: 1px 1px 5px #999;
display: none;
/*// 小三角
.tip-triangle {
display: block;
position: absolute;
width: 0;
height: 0;
border:5px solid;
border-color: transparent transparent @fore-color transparent;
top: -10px;
left: 50%;
margin-left: -5px;
}*/
}
.wangEditor-menu-container .menu-tip-40 {
width: 40px;
margin-left: -20px;
}
.wangEditor-menu-container .menu-tip-50 {
width: 50px;
margin-left: -25px;
}
.wangEditor-menu-shadow {
/*border-bottom-width: 0;*/
border-bottom: 1px\9 solid\9 #f1f1f1\9;
box-shadow: 0 1px 3px #999;
}
.wangEditor-container .wangEditor-txt {
width: 100%;
text-align: left;
padding: 15px;
padding-top: 0;
margin-top: 5px;
overflow-y: auto;
}
.wangEditor-container .wangEditor-txt p,
.wangEditor-container .wangEditor-txt h1,
.wangEditor-container .wangEditor-txt h2,
.wangEditor-container .wangEditor-txt h3,
.wangEditor-container .wangEditor-txt h4,
.wangEditor-container .wangEditor-txt h5 {
margin: 10px 0;
line-height: 1.8;
}
.wangEditor-container .wangEditor-txt p *,
.wangEditor-container .wangEditor-txt h1 *,
.wangEditor-container .wangEditor-txt h2 *,
.wangEditor-container .wangEditor-txt h3 *,
.wangEditor-container .wangEditor-txt h4 *,
.wangEditor-container .wangEditor-txt h5 * {
line-height: 1.8;
}
.wangEditor-container .wangEditor-txt ul,
.wangEditor-container .wangEditor-txt ol {
padding-left: 20px;
}
.wangEditor-container .wangEditor-txt img {
cursor: pointer;
}
.wangEditor-container .wangEditor-txt img.clicked {
box-shadow: 1px 1px 10px #999;
}
.wangEditor-container .wangEditor-txt table.clicked {
box-shadow: 1px 1px 10px #999;
}
.wangEditor-container .wangEditor-txt pre code {
line-height: 1.5;
}
.wangEditor-container .wangEditor-txt:focus {
outline: none;
}
.wangEditor-container .wangEditor-txt blockquote {
display: block;
border-left: 8px solid #d0e5f2;
padding: 5px 10px;
margin: 10px 0;
line-height: 1.4;
font-size: 100%;
background-color: #f1f1f1;
}
.wangEditor-container .wangEditor-txt table {
border: none;
border-collapse: collapse;
}
.wangEditor-container .wangEditor-txt table td,
.wangEditor-container .wangEditor-txt table th {
border: 1px solid #999;
padding: 3px 5px;
min-width: 50px;
height: 20px;
}
.wangEditor-container .wangEditor-txt pre {
border: 1px solid #ccc;
background-color: #f8f8f8;
padding: 10px;
margin: 5px 0px;
font-size: 0.8em;
border-radius: 3px;
}
.wangEditor-drop-list {
display: none;
position: absolute;
background-color: #fff;
overflow: hidden;
z-index: 10;
transition: height .7s;
border-top: 1px solid #f1f1f1;
box-shadow: 1px 3px 3px #999;
border-left: 1px\9 solid\9 #ccc\9;
border-bottom: 1px\9 solid\9 #999\9;
border-right: 1px\9 solid\9 #999\9;
}
.wangEditor-drop-list a {
text-decoration: none;
display: block;
color: #666;
padding: 3px 5px;
}
.wangEditor-drop-list a:hover {
background-color: #f1f1f1;
}
.wangEditor-drop-panel,
.txt-toolbar {
display: none;
position: absolute;
padding: 10px;
font-size: 14px;
/*border: 1px\9 solid\9 #cccccc\9;*/
background-color: #fff;
z-index: 10;
border-top: 2px solid #666;
box-shadow: 1px 3px 3px #999;
border-left: 1px\9 solid\9 #ccc\9;
border-bottom: 1px\9 solid\9 #999\9;
border-right: 1px\9 solid\9 #999\9;
}
.wangEditor-drop-panel .tip-triangle,
.txt-toolbar .tip-triangle {
display: block;
position: absolute;
width: 0;
height: 0;
border: 5px solid;
border-color: transparent transparent #666 transparent;
top: -12px;
left: 50%;
margin-left: -5px;
}
.wangEditor-drop-panel a,
.txt-toolbar a {
text-decoration: none;
}
.wangEditor-drop-panel input[type=text],
.txt-toolbar input[type=text] {
border: none;
border-bottom: 1px solid #ccc;
font-size: 14px;
height: 20px;
color: #333;
padding: 3px 0;
}
.wangEditor-drop-panel input[type=text]:focus,
.txt-toolbar input[type=text]:focus {
outline: none;
border-bottom: 2px solid #1e88e5;
}
.wangEditor-drop-panel input[type=text].block,
.txt-toolbar input[type=text].block {
display: block;
width: 100%;
}
.wangEditor-drop-panel textarea,
.txt-toolbar textarea {
border: 1px solid #ccc;
}
.wangEditor-drop-panel textarea:focus,
.txt-toolbar textarea:focus {
outline: none;
border-color: #1e88e5;
}
.wangEditor-drop-panel button,
.txt-toolbar button {
font-size: 14px;
color: #1e88e5;
border: none;
padding: 10px;
background-color: #fff;
cursor: pointer;
border-radius: 3px;
}
.wangEditor-drop-panel button:hover,
.txt-toolbar button:hover {
background-color: #f1f1f1;
}
.wangEditor-drop-panel button:focus,
.txt-toolbar button:focus {
outline: none;
}
.wangEditor-drop-panel button.right,
.txt-toolbar button.right {
float: right;
margin-left: 10px;
}
.wangEditor-drop-panel button.gray,
.txt-toolbar button.gray {
color: #999;
}
.wangEditor-drop-panel button.link,
.txt-toolbar button.link {
padding: 5px 10px;
}
.wangEditor-drop-panel button.link:hover,
.txt-toolbar button.link:hover {
background-color: #fff;
text-decoration: underline;
}
.wangEditor-drop-panel .color-item,
.txt-toolbar .color-item {
display: block;
float: left;
width: 25px;
height: 25px;
text-align: center;
padding: 2px;
border-radius: 2px;
text-decoration: underline;
}
.wangEditor-drop-panel .color-item:hover,
.txt-toolbar .color-item:hover {
background-color: #f1f1f1;
}
.wangEditor-drop-panel .list-menu-item,
.txt-toolbar .list-menu-item {
display: block;
float: left;
color: #333;
padding: 5px 5px;
border-radius: 2px;
}
.wangEditor-drop-panel .list-menu-item:hover,
.txt-toolbar .list-menu-item:hover {
background-color: #f1f1f1;
}
.wangEditor-drop-panel table.choose-table,
.txt-toolbar table.choose-table {
border: none;
border-collapse: collapse;
}
.wangEditor-drop-panel table.choose-table td,
.txt-toolbar table.choose-table td {
border: 1px solid #ccc;
width: 16px;
height: 12px;
}
.wangEditor-drop-panel table.choose-table td.active,
.txt-toolbar table.choose-table td.active {
background-color: #ccc;
opacity: .5;
filter: alpha(opacity=50);
}
.wangEditor-drop-panel .panel-tab .tab-container,
.txt-toolbar .panel-tab .tab-container {
margin-bottom: 5px;
}
.wangEditor-drop-panel .panel-tab .tab-container a,
.txt-toolbar .panel-tab .tab-container a {
display: inline-block;
color: #999;
text-align: center;
margin: 0 5px;
padding: 5px 5px;
}
.wangEditor-drop-panel .panel-tab .tab-container a.selected,
.txt-toolbar .panel-tab .tab-container a.selected {
color: #1e88e5;
border-bottom: 2px solid #1e88e5;
}
.wangEditor-drop-panel .panel-tab .content-container .content,
.txt-toolbar .panel-tab .content-container .content {
display: none;
}
.wangEditor-drop-panel .panel-tab .content-container .content a,
.txt-toolbar .panel-tab .content-container .content a {
display: inline-block;
margin: 2px;
padding: 2px;
border-radius: 2px;
}
.wangEditor-drop-panel .panel-tab .content-container .content a:hover,
.txt-toolbar .panel-tab .content-container .content a:hover {
background-color: #f1f1f1;
}
.wangEditor-drop-panel .panel-tab .content-container .selected,
.txt-toolbar .panel-tab .content-container .selected {
display: block;
}
.wangEditor-drop-panel .panel-tab .emotion-content-container,
.txt-toolbar .panel-tab .emotion-content-container {
height: 200px;
overflow-y: auto;
}
.wangEditor-drop-panel .upload-icon-container,
.txt-toolbar .upload-icon-container {
color: #ccc;
text-align: center;
margin: 20px 20px 15px 20px !important;
padding: 5px !important;
font-size: 65px;
cursor: pointer;
border: 2px dotted #f1f1f1;
display: block !important;
}
.wangEditor-drop-panel .upload-icon-container:hover,
.txt-toolbar .upload-icon-container:hover {
color: #666;
border-color: #ccc;
}
.wangEditor-modal {
position: absolute;
top: 50%;
left: 50%;
background-color: #fff;
border-top: 1px solid #f1f1f1;
box-shadow: 1px 3px 3px #999;
border-top: 1px\9 solid\9 #ccc\9;
border-left: 1px\9 solid\9 #ccc\9;
border-bottom: 1px\9 solid\9 #999\9;
border-right: 1px\9 solid\9 #999\9;
}
.wangEditor-modal .wangEditor-modal-close {
position: absolute;
top: 0;
right: 0;
margin-top: -25px;
margin-right: -25px;
font-size: 1.5em;
color: #666;
cursor: pointer;
}
@font-face {
font-family: 'icomoon';
src: url('../fonts/icomoon.eot?-qdfu1s');
src: url('../fonts/icomoon.eot?#iefix-qdfu1s') format('embedded-opentype'), url('../fonts/icomoon.ttf?-qdfu1s') format('truetype'), url('../fonts/icomoon.woff?-qdfu1s') format('woff'), url('../fonts/icomoon.svg?-qdfu1s#icomoon') format('svg');
font-weight: normal;
font-style: normal;
}
[class^="wangeditor-menu-img-"],
[class*=" wangeditor-menu-img-"] {
font-family: 'icomoon';
speak: none;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;
/* Better Font Rendering =========== */
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.wangeditor-menu-img-link:before {
content: "\e800";
}
.wangeditor-menu-img-unlink:before {
content: "\e801";
}
.wangeditor-menu-img-code:before {
content: "\e802";
}
.wangeditor-menu-img-cancel:before {
content: "\e803";
}
.wangeditor-menu-img-terminal:before {
content: "\e804";
}
.wangeditor-menu-img-angle-down:before {
content: "\e805";
}
.wangeditor-menu-img-font:before {
content: "\e806";
}
.wangeditor-menu-img-bold:before {
content: "\e807";
}
.wangeditor-menu-img-italic:before {
content: "\e808";
}
.wangeditor-menu-img-header:before {
content: "\e809";
}
.wangeditor-menu-img-align-left:before {
content: "\e80a";
}
.wangeditor-menu-img-align-center:before {
content: "\e80b";
}
.wangeditor-menu-img-align-right:before {
content: "\e80c";
}
.wangeditor-menu-img-list-bullet:before {
content: "\e80d";
}
.wangeditor-menu-img-indent-left:before {
content: "\e80e";
}
.wangeditor-menu-img-indent-right:before {
content: "\e80f";
}
.wangeditor-menu-img-list-numbered:before {
content: "\e810";
}
.wangeditor-menu-img-underline:before {
content: "\e811";
}
.wangeditor-menu-img-table:before {
content: "\e812";
}
.wangeditor-menu-img-eraser:before {
content: "\e813";
}
.wangeditor-menu-img-text-height:before {
content: "\e814";
}
.wangeditor-menu-img-brush:before {
content: "\e815";
}
.wangeditor-menu-img-pencil:before {
content: "\e816";
}
.wangeditor-menu-img-minus:before {
content: "\e817";
}
.wangeditor-menu-img-picture:before {
content: "\e818";
}
.wangeditor-menu-img-file-image:before {
content: "\e819";
}
.wangeditor-menu-img-cw:before {
content: "\e81a";
}
.wangeditor-menu-img-ccw:before {
content: "\e81b";
}
.wangeditor-menu-img-music:before {
content: "\e911";
}
.wangeditor-menu-img-play:before {
content: "\e912";
}
.wangeditor-menu-img-location:before {
content: "\e947";
}
.wangeditor-menu-img-happy:before {
content: "\e9df";
}
.wangeditor-menu-img-sigma:before {
content: "\ea67";
}
.wangeditor-menu-img-enlarge2:before {
content: "\e98b";
}
.wangeditor-menu-img-shrink2:before {
content: "\e98c";
}
.wangeditor-menu-img-newspaper:before {
content: "\e904";
}
.wangeditor-menu-img-camera:before {
content: "\e90f";
}
.wangeditor-menu-img-video-camera:before {
content: "\e914";
}
.wangeditor-menu-img-file-zip:before {
content: "\e92b";
}
.wangeditor-menu-img-stack:before {
content: "\e92e";
}
.wangeditor-menu-img-credit-card:before {
content: "\e93f";
}
.wangeditor-menu-img-address-book:before {
content: "\e944";
}
.wangeditor-menu-img-envelop:before {
content: "\e945";
}
.wangeditor-menu-img-drawer:before {
content: "\e95c";
}
.wangeditor-menu-img-download:before {
content: "\e960";
}
.wangeditor-menu-img-upload:before {
content: "\e961";
}
.wangeditor-menu-img-lock:before {
content: "\e98f";
}
.wangeditor-menu-img-unlocked:before {
content: "\e990";
}
.wangeditor-menu-img-wrench:before {
content: "\e991";
}
.wangeditor-menu-img-eye:before {
content: "\e9ce";
}
.wangeditor-menu-img-eye-blocked:before {
content: "\e9d1";
}
.wangeditor-menu-img-command:before {
content: "\ea4e";
}
.wangeditor-menu-img-font2:before {
content: "\ea5c";
}
.wangeditor-menu-img-libreoffice:before {
content: "\eade";
}
.wangeditor-menu-img-quotes-left:before {
content: "\e977";
}
.wangeditor-menu-img-strikethrough:before {
content: "\ea65";
}
.wangeditor-menu-img-desktop:before {
content: "\f108";
}
.wangeditor-menu-img-tablet:before {
content: "\f10a";
}
.wangeditor-menu-img-search-plus:before {
content: "\f00e";
}
.wangeditor-menu-img-search-minus:before {
content: "\f010";
}
.wangeditor-menu-img-trash-o:before {
content: "\f014";
}
.wangeditor-menu-img-align-justify:before {
content: "\f039";
}
.wangeditor-menu-img-arrows-v:before {
content: "\f07d";
}
.wangeditor-menu-img-sigma2:before {
content: "\ea68";
}
.wangeditor-menu-img-omega:before {
content: "\e900";
}
.wangeditor-menu-img-cancel-circle:before {
content: "\e901";
}
.hljs {
display: block;
overflow-x: auto;
padding: 0.5em;
color: #333;
background: #f8f8f8;
-webkit-text-size-adjust: none;
}
.hljs-comment,
.diff .hljs-header {
color: #998;
font-style: italic;
}
.hljs-keyword,
.css .rule .hljs-keyword,
.hljs-winutils,
.nginx .hljs-title,
.hljs-subst,
.hljs-request,
.hljs-status {
color: #333;
font-weight: bold;
}
.hljs-number,
.hljs-hexcolor,
.ruby .hljs-constant {
color: #008080;
}
.hljs-string,
.hljs-tag .hljs-value,
.hljs-doctag,
.tex .hljs-formula {
color: #d14;
}
.hljs-title,
.hljs-id,
.scss .hljs-preprocessor {
color: #900;
font-weight: bold;
}
.hljs-list .hljs-keyword,
.hljs-subst {
font-weight: normal;
}
.hljs-class .hljs-title,
.hljs-type,
.vhdl .hljs-literal,
.tex .hljs-command {
color: #458;
font-weight: bold;
}
.hljs-tag,
.hljs-tag .hljs-title,
.hljs-rule .hljs-property,
.django .hljs-tag .hljs-keyword {
color: #000080;
font-weight: normal;
}
.hljs-attribute,
.hljs-variable,
.lisp .hljs-body,
.hljs-name {
color: #008080;
}
.hljs-regexp {
color: #009926;
}
.hljs-symbol,
.ruby .hljs-symbol .hljs-string,
.lisp .hljs-keyword,
.clojure .hljs-keyword,
.scheme .hljs-keyword,
.tex .hljs-special,
.hljs-prompt {
color: #990073;
}
.hljs-built_in {
color: #0086b3;
}
.hljs-preprocessor,
.hljs-pragma,
.hljs-pi,
.hljs-doctype,
.hljs-shebang,
.hljs-cdata {
color: #999;
font-weight: bold;
}
.hljs-deletion {
background: #fdd;
}
.hljs-addition {
background: #dfd;
}
.diff .hljs-change {
background: #0086b3;
}
.hljs-chunk {
color: #aaa;
}

View File

@ -1,810 +0,0 @@
// ---------- begin 全局颜色配置 ------------
/* 编辑器边框颜色 */
@border-color: #ccc;
/* 菜单颜色、上边框颜色 */
@fore-color: #666;
/* 菜单选中状态的颜色 */
@selected-color: #1e88e5;
/* input focus 时的颜色 */
@focus-input-color: #1e88e5;
/* 按钮颜色 */
@button-color: #1e88e5;
/* tab selected 状态下的颜色 */
@selected-tab-color: #1e88e5;
// ---------- end 全局颜色配置 ------------
.wangEditor-container {
position: relative;
background-color: #fff;
border: 1px solid @border-color;
z-index: 1;
width: 100%;
a:focus,
button:focus{
outline:none;
}
&,* {
margin: 0;
padding: 0;
box-sizing: border-box;
line-height: 1;
}
img {
border: none;
}
.clearfix:after {
content: '';
display: table;
clear: both;
}
.clearfix {
*zoom: 1;
}
textarea {
border: none;
&:focus{
outline: none;
}
}
// 显示p head 高度的 tip
.height-tip {
position: absolute;
width: 3px;
background-color: #ccc;
left: 0;
transition: top .2s;
}
// 设置 img table 的 toolbar
.txt-toolbar {
position: absolute;
background-color: #fff;
padding: 3px 5px;
border-top: 2px solid @fore-color;
box-shadow: 1px 3px 3px #999;
// for IE8
border-left: 1px\9 solid\9 #ccc\9;
border-bottom: 1px\9 solid\9 #999\9;
border-right: 1px\9 solid\9 #999\9;
// 小三角
.tip-triangle {
display: block;
position: absolute;
width: 0;
height: 0;
border: 5px solid;
border-color: transparent transparent @fore-color transparent;
top: -12px;
left: 50%;
margin-left: -5px;
}
a {
color: @fore-color;
display: inline-block;
margin: 0 3px;
padding: 5px;
text-decoration: none;
border-radius: 3px;
&:hover {
background-color: #f1f1f1;
}
}
}
// 图品拖拽大小
.img-drag-point {
display: block;
position: absolute;
width: 12px;
height: 12px;
border-radius: 50%;
cursor: se-resize;
background-color: @fore-color;
margin-left: -6px;
margin-top: -6px;
box-shadow: 1px 1px 5px #999;
}
// 进度条
.wangEditor-upload-progress {
position: absolute;
height: 1px;
background: #1e88e5;
width: 0;
display: none;
-webkit-transition: width .5s;
-o-transition: width .5s;
transition: width .5s;
}
}
.wangEditor-fullscreen {
position: fixed;
top: 0;
bottom: 0;
left: 0;
right: 0;
}
.wangEditor-container {
.code-textarea {
resize: none;
width: 100%;
font-size: 14px;
line-height: 1.5;
font-family: 'Verdana';
color: #333;
padding: 0 15px 0 15px;
}
}
.wangEditor-menu-container {
width: 100%;
border-bottom: 1px solid #f1f1f1;
background-color: #fff;
a {
text-decoration: none;
}
// 菜单组
.menu-group {
float: left;
padding: 0 8px;
border-right: 1px solid #f1f1f1;
}
// 单个菜单容器
.menu-item {
float: left;
position: relative;
text-align: center;
height: 31px;
width: 35px;
&:hover {
background-color: #f1f1f1;
}
// 菜单
a {
display: block;
text-align: center;
color: @fore-color;
width: 100%;
padding: 8px 0;
font-size: 0.9em;
}
// 菜单选中状态
.selected {
color: @selected-color;
}
// 激活状态
.active {
background-color: #f1f1f1;
}
// 禁用状态
.disable {
opacity: 0.5;
filter: Alpha(opacity=50);
}
}
// tip提示
.menu-tip {
display: block;
position: absolute;
z-index: 20;
width: 60px;
text-align: center;
background-color: @fore-color;
color: #fff;
padding: 7px 0;
font-size: 12px;
top: 100%;
left: 50%;
margin-left: -30px;
border-radius: 2px;
box-shadow: 1px 1px 5px #999;
display: none;
/*// 小三角
.tip-triangle {
display: block;
position: absolute;
width: 0;
height: 0;
border:5px solid;
border-color: transparent transparent @fore-color transparent;
top: -10px;
left: 50%;
margin-left: -5px;
}*/
}
.menu-tip-40 {
width: 40px;
margin-left: -20px;
}
.menu-tip-50 {
width: 50px;
margin-left: -25px;
}
}
.wangEditor-menu-shadow {
/*border-bottom-width: 0;*/
border-bottom: 1px\9 solid\9 #f1f1f1\9;
box-shadow: 0 1px 3px #999;
}
.wangEditor-container {
.wangEditor-txt{
width: 100%;
text-align: left;
padding: 15px;
padding-top: 0;
margin-top: 5px;
overflow-y: auto;
p,h1,h2,h3,h4,h5 {
margin: 10px 0;
line-height: 1.8;
* {
line-height: 1.8;
}
}
ul, ol {
padding-left: 20px;
}
img {
cursor: pointer;
}
img.clicked {
box-shadow: 1px 1px 10px #999;
}
table.clicked {
box-shadow: 1px 1px 10px #999;
}
pre code {
line-height: 1.5;
}
&:focus{
outline: none;
}
}
}
.wangEditor-container {
.wangEditor-txt {
blockquote {
display: block;
border-left: 8px solid #d0e5f2;
padding: 5px 10px;
margin: 10px 0;
line-height: 1.4;
font-size: 100%;
background-color: #f1f1f1;
}
table {
border: none;
border-collapse: collapse;
}
table td,
table th {
border: 1px solid #999;
padding: 3px 5px;
min-width: 50px;
height: 20px;
}
pre {
border: 1px solid #ccc;
background-color: #f8f8f8;
padding: 10px;
margin: 5px 0px;
font-size: 0.8em;
border-radius: 3px;
}
}
}
.wangEditor-drop-list {
display: none;
position: absolute;
background-color: #fff;
overflow: hidden;
z-index: 10;
transition: height .7s;
border-top: 1px solid #f1f1f1;
box-shadow: 1px 3px 3px #999;
// for IE8
border-left: 1px\9 solid\9 #ccc\9;
border-bottom: 1px\9 solid\9 #999\9;
border-right: 1px\9 solid\9 #999\9;
a {
text-decoration: none;
display: block;
color: @fore-color;
padding: 3px 5px;
&:hover {
background-color: #f1f1f1;
}
}
}
.wangEditor-drop-panel,
.txt-toolbar {
display: none;
position: absolute;
padding: 10px;
font-size: 14px;
/*border: 1px\9 solid\9 #cccccc\9;*/
background-color: #fff;
z-index: 10;
border-top: 2px solid @fore-color;
box-shadow: 1px 3px 3px #999;
// for IE8
border-left: 1px\9 solid\9 #ccc\9;
border-bottom: 1px\9 solid\9 #999\9;
border-right: 1px\9 solid\9 #999\9;
// 小三角
.tip-triangle {
display: block;
position: absolute;
width: 0;
height: 0;
border: 5px solid;
border-color: transparent transparent @fore-color transparent;
top: -12px;
left: 50%;
margin-left: -5px;
}
a {
text-decoration: none;
}
// 输入框
input[type=text] {
border: none;
border-bottom: 1px solid #ccc;
font-size: 14px;
height: 20px;
color: #333;
padding: 3px 0;
&:focus{
outline: none;
border-bottom: 2px solid @focus-input-color;
}
}
input[type=text].block {
display: block;
width: 100%;
}
textarea {
border: 1px solid #ccc;
&:focus {
outline: none;
border-color: @focus-input-color;
}
}
// 按钮
button {
font-size: 14px;
color: @button-color;
border: none;
padding: 10px;
background-color: #fff;
cursor: pointer;
border-radius: 3px;
&:hover {
background-color: #f1f1f1;
}
&:focus{
outline: none;
}
}
button.right {
float: right;
margin-left: 10px;
}
button.gray {
color: #999;
}
button.link {
padding: 5px 10px;
&:hover {
background-color: #fff;
text-decoration: underline;
}
}
// 颜色块
.color-item {
display: block;
float: left;
width: 25px;
height: 25px;
text-align: center;
padding: 2px;
border-radius: 2px;
text-decoration: underline;
&:hover {
background-color: #f1f1f1;
}
}
// 列表
.list-menu-item {
display: block;
float: left;
color: #333;
padding: 5px 5px;
border-radius: 2px;
&:hover {
background-color: #f1f1f1;
}
}
// 表格
table.choose-table {
border: none;
border-collapse: collapse;
td {
border: 1px solid #ccc;
width: 16px;
height: 12px;
}
td.active {
background-color: #ccc;
opacity: .5;
filter: Alpha(opacity=50);
}
}
// tab
.panel-tab {
.tab-container {
margin-bottom: 5px;
a {
display: inline-block;
color: #999;
text-align: center;
margin: 0 5px;
padding: 5px 5px;
}
a.selected {
color: @selected-tab-color;
border-bottom: 2px solid @selected-tab-color;
}
}
.content-container {
.content {
display: none;
a {
display: inline-block;
margin: 2px;
padding: 2px;
border-radius: 2px;
&:hover {
background-color: #f1f1f1;
}
}
}
.selected {
display: block;
}
}
.emotion-content-container {
height: 200px;
overflow-y: auto;
}
}
// 上传图片
.upload-icon-container {
color: #ccc;
text-align: center;
margin: 20px 20px 15px 20px !important;
padding: 5px !important;
font-size: 65px;
cursor: pointer;
border: 2px dotted #f1f1f1;
display: block !important;
&:hover {
color: #666;
border-color: #ccc;
}
}
}
.wangEditor-modal {
position: absolute;
top: 50%;
left: 50%;
background-color: #fff;
border-top: 1px solid #f1f1f1;
box-shadow: 1px 3px 3px #999;
// for IE8
border-top: 1px\9 solid\9 #ccc\9;
border-left: 1px\9 solid\9 #ccc\9;
border-bottom: 1px\9 solid\9 #999\9;
border-right: 1px\9 solid\9 #999\9;
// 关闭按钮
.wangEditor-modal-close {
position: absolute;
top: 0;
right: 0;
margin-top: -25px;
margin-right: -25px;
font-size: 1.5em;
color: #666;
cursor: pointer;
}
}
@font-face {
font-family: 'icomoon';
src:url('../fonts/icomoon.eot?-qdfu1s');
src:url('../fonts/icomoon.eot?#iefix-qdfu1s') format('embedded-opentype'),
url('../fonts/icomoon.ttf?-qdfu1s') format('truetype'),
url('../fonts/icomoon.woff?-qdfu1s') format('woff'),
url('../fonts/icomoon.svg?-qdfu1s#icomoon') format('svg');
font-weight: normal;
font-style: normal;
}
[class^="wangeditor-menu-img-"], [class*=" wangeditor-menu-img-"] {
font-family: 'icomoon';
speak: none;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;
/* Better Font Rendering =========== */
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.wangeditor-menu-img-link:before {content: "\e800";}
.wangeditor-menu-img-unlink:before {content: "\e801";}
.wangeditor-menu-img-code:before {content: "\e802";}
.wangeditor-menu-img-cancel:before {content: "\e803";}
.wangeditor-menu-img-terminal:before {content: "\e804";}
.wangeditor-menu-img-angle-down:before {content: "\e805";}
.wangeditor-menu-img-font:before {content: "\e806";}
.wangeditor-menu-img-bold:before {content: "\e807";}
.wangeditor-menu-img-italic:before {content: "\e808";}
.wangeditor-menu-img-header:before {content: "\e809";}
.wangeditor-menu-img-align-left:before {content: "\e80a";}
.wangeditor-menu-img-align-center:before {content: "\e80b";}
.wangeditor-menu-img-align-right:before {content: "\e80c";}
.wangeditor-menu-img-list-bullet:before {content: "\e80d";}
.wangeditor-menu-img-indent-left:before {content: "\e80e";}
.wangeditor-menu-img-indent-right:before {content: "\e80f";}
.wangeditor-menu-img-list-numbered:before {content: "\e810";}
.wangeditor-menu-img-underline:before {content: "\e811";}
.wangeditor-menu-img-table:before {content: "\e812";}
.wangeditor-menu-img-eraser:before {content: "\e813";}
.wangeditor-menu-img-text-height:before {content: "\e814";}
.wangeditor-menu-img-brush:before {content: "\e815";}
.wangeditor-menu-img-pencil:before {content: "\e816";}
.wangeditor-menu-img-minus:before {content: "\e817";}
.wangeditor-menu-img-picture:before {content: "\e818";}
.wangeditor-menu-img-file-image:before {content: "\e819";}
.wangeditor-menu-img-cw:before {content: "\e81a";}
.wangeditor-menu-img-ccw:before {content: "\e81b";}
.wangeditor-menu-img-music:before {content: "\e911";}
.wangeditor-menu-img-play:before {content: "\e912";}
.wangeditor-menu-img-location:before {content: "\e947";}
.wangeditor-menu-img-happy:before {content: "\e9df";}
.wangeditor-menu-img-sigma:before {content: "\ea67";}
.wangeditor-menu-img-enlarge2:before {content: "\e98b";}
.wangeditor-menu-img-shrink2:before {content: "\e98c";}
.wangeditor-menu-img-newspaper:before{content: "\e904";}
.wangeditor-menu-img-camera:before{content: "\e90f";}
.wangeditor-menu-img-video-camera:before{content: "\e914";}
.wangeditor-menu-img-file-zip:before{content: "\e92b";}
.wangeditor-menu-img-stack:before{content: "\e92e";}
.wangeditor-menu-img-credit-card:before{content: "\e93f";}
.wangeditor-menu-img-address-book:before{content: "\e944";}
.wangeditor-menu-img-envelop:before{content: "\e945";}
.wangeditor-menu-img-drawer:before{content: "\e95c";}
.wangeditor-menu-img-download:before{content: "\e960";}
.wangeditor-menu-img-upload:before{content: "\e961";}
.wangeditor-menu-img-lock:before{content: "\e98f";}
.wangeditor-menu-img-unlocked:before{content: "\e990";}
.wangeditor-menu-img-wrench:before{content: "\e991";}
.wangeditor-menu-img-eye:before{content: "\e9ce";}
.wangeditor-menu-img-eye-blocked:before{content: "\e9d1";}
.wangeditor-menu-img-command:before{content: "\ea4e";}
.wangeditor-menu-img-font2:before{content: "\ea5c";}
.wangeditor-menu-img-libreoffice:before{content: "\eade";}
.wangeditor-menu-img-quotes-left:before{content: "\e977";}
.wangeditor-menu-img-strikethrough:before{content: "\ea65";}
.wangeditor-menu-img-desktop:before{content: "\f108";}
.wangeditor-menu-img-tablet:before{content: "\f10a";}
.wangeditor-menu-img-search-plus:before {
content: "\f00e";
}
.wangeditor-menu-img-search-minus:before {
content: "\f010";
}
.wangeditor-menu-img-trash-o:before {
content: "\f014";
}
.wangeditor-menu-img-align-justify:before {
content: "\f039";
}
.wangeditor-menu-img-arrows-v:before {
content: "\f07d";
}
.wangeditor-menu-img-sigma2:before {
content: "\ea68";
}
.wangeditor-menu-img-omega:before {
content: "\e900";
}
.wangeditor-menu-img-cancel-circle:before {
content: "\e901";
}
.hljs {
display: block;
overflow-x: auto;
padding: 0.5em;
color: #333;
background: #f8f8f8;
-webkit-text-size-adjust: none;
}
.hljs-comment,
.diff .hljs-header {
color: #998;
font-style: italic;
}
.hljs-keyword,
.css .rule .hljs-keyword,
.hljs-winutils,
.nginx .hljs-title,
.hljs-subst,
.hljs-request,
.hljs-status {
color: #333;
font-weight: bold;
}
.hljs-number,
.hljs-hexcolor,
.ruby .hljs-constant {
color: #008080;
}
.hljs-string,
.hljs-tag .hljs-value,
.hljs-doctag,
.tex .hljs-formula {
color: #d14;
}
.hljs-title,
.hljs-id,
.scss .hljs-preprocessor {
color: #900;
font-weight: bold;
}
.hljs-list .hljs-keyword,
.hljs-subst {
font-weight: normal;
}
.hljs-class .hljs-title,
.hljs-type,
.vhdl .hljs-literal,
.tex .hljs-command {
color: #458;
font-weight: bold;
}
.hljs-tag,
.hljs-tag .hljs-title,
.hljs-rule .hljs-property,
.django .hljs-tag .hljs-keyword {
color: #000080;
font-weight: normal;
}
.hljs-attribute,
.hljs-variable,
.lisp .hljs-body,
.hljs-name {
color: #008080;
}
.hljs-regexp {
color: #009926;
}
.hljs-symbol,
.ruby .hljs-symbol .hljs-string,
.lisp .hljs-keyword,
.clojure .hljs-keyword,
.scheme .hljs-keyword,
.tex .hljs-special,
.hljs-prompt {
color: #990073;
}
.hljs-built_in {
color: #0086b3;
}
.hljs-preprocessor,
.hljs-pragma,
.hljs-pi,
.hljs-doctype,
.hljs-shebang,
.hljs-cdata {
color: #999;
font-weight: bold;
}
.hljs-deletion {
background: #fdd;
}
.hljs-addition {
background: #dfd;
}
.diff .hljs-change {
background: #0086b3;
}
.hljs-chunk {
color: #aaa;
}

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@ -1,76 +0,0 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<svg xmlns="http://www.w3.org/2000/svg">
<metadata>Generated by IcoMoon</metadata>
<defs>
<font id="icomoon" horiz-adv-x="1024">
<font-face units-per-em="1024" ascent="960" descent="-64" />
<missing-glyph horiz-adv-x="1024" />
<glyph unicode="&#x20;" horiz-adv-x="512" d="" />
<glyph unicode="&#xe800;" glyph-name="link" horiz-adv-x="950" d="M831.488 264.704q0 23.552-15.36 38.912l-118.784 118.784q-16.384 16.384-38.912 16.384-24.576 0-40.96-18.432 1.024-1.024 10.24-10.24t12.288-12.288 9.216-11.264 7.168-14.336 2.048-15.36q0-23.552-16.384-38.912t-38.912-16.384q-8.192 0-15.36 2.048t-14.336 7.168-11.264 9.216-12.288 12.288-10.24 10.24q-19.456-17.408-19.456-40.96t16.384-38.912l117.76-118.784q15.36-15.36 38.912-15.36 22.528 0 38.912 15.36l83.968 82.944q15.36 16.384 15.36 37.888zM430.080 668.16q0 22.528-15.36 38.912l-117.76 117.76q-16.384 16.384-38.912 16.384t-38.912-15.36l-83.968-83.968q-16.384-15.36-16.384-37.888t16.384-38.912l118.784-118.784q15.36-15.36 38.912-15.36t40.96 17.408q-2.048 2.048-11.264 11.264t-12.288 12.288-8.192 10.24-7.168 14.336-2.048 16.384q0 22.528 15.36 38.912t38.912 15.36q9.216 0 16.384-2.048t14.336-7.168 10.24-8.192 12.288-12.288 11.264-11.264q18.432 17.408 18.432 41.984zM942.080 264.704q0-68.608-49.152-115.712l-83.968-82.944q-47.104-48.128-115.712-48.128-69.632 0-116.736 49.152l-117.76 117.76q-47.104 48.128-47.104 116.736 0 69.632 50.176 118.784l-50.176 50.176q-49.152-50.176-118.784-50.176-68.608 0-116.736 48.128l-118.784 118.784q-48.128 48.128-48.128 116.736t48.128 115.712l83.968 83.968q48.128 47.104 116.736 47.104t116.736-48.128l116.736-118.784q48.128-47.104 48.128-115.712 0-70.656-50.176-119.808l50.176-50.176q49.152 50.176 118.784 50.176 68.608 0 116.736-48.128l118.784-118.784q48.128-48.128 48.128-116.736z" />
<glyph unicode="&#xe801;" glyph-name="unlink" horiz-adv-x="950" d="M250.88 233.984l-146.432-146.432q-5.12-5.12-13.312-5.12-6.144 0-13.312 5.12-5.12 5.12-5.12 13.312t5.12 13.312l146.432 145.408q6.144 5.12 13.312 5.12t13.312-5.12q5.12-5.12 5.12-12.288t-5.12-13.312zM347.136 210.432v-183.296q0-8.192-5.12-13.312t-13.312-5.12-12.288 5.12-5.12 13.312v183.296q0 8.192 5.12 13.312t12.288 5.12 13.312-5.12 5.12-13.312zM219.136 338.432q0-8.192-5.12-13.312t-13.312-5.12h-182.272q-8.192 0-13.312 5.12t-5.12 13.312 5.12 13.312 13.312 5.12h182.272q8.192 0 13.312-5.12t5.12-13.312zM942.080 264.704q0-68.608-49.152-115.712l-83.968-82.944q-47.104-48.128-115.712-48.128-69.632 0-116.736 49.152l-190.464 191.488q-12.288 11.264-24.576 31.744l137.216 10.24 155.648-156.672q15.36-15.36 38.912-15.36t38.912 15.36l83.968 82.944q15.36 16.384 15.36 37.888 0 23.552-15.36 38.912l-156.672 157.696 10.24 136.192q20.48-12.288 31.744-23.552l192.512-192.512q48.128-49.152 48.128-116.736zM588.8 678.4l-136.192-10.24-155.648 156.672q-16.384 16.384-38.912 16.384t-38.912-15.36l-83.968-83.968q-16.384-15.36-16.384-37.888t16.384-38.912l156.672-156.672-10.24-137.216q-20.48 12.288-32.768 24.576l-191.488 191.488q-48.128 49.152-48.128 116.736 0 68.608 48.128 115.712l83.968 83.968q48.128 47.104 116.736 47.104t116.736-48.128l190.464-191.488q12.288-12.288 23.552-32.768zM951.296 631.296q0-8.192-5.12-13.312t-13.312-5.12h-183.296q-8.192 0-13.312 5.12t-5.12 13.312 5.12 12.288 13.312 5.12h183.296q8.192 0 13.312-5.12t5.12-12.288zM640 941.568v-182.272q0-8.192-5.12-13.312t-13.312-5.12-13.312 5.12-5.12 13.312v182.272q0 8.192 5.12 13.312t13.312 5.12 13.312-5.12 5.12-13.312zM872.448 855.552l-146.432-146.432q-6.144-5.12-13.312-5.12t-12.288 5.12q-5.12 6.144-5.12 13.312t5.12 13.312l145.408 145.408q6.144 5.12 13.312 5.12t13.312-5.12q5.12-5.12 5.12-12.288t-5.12-13.312z" />
<glyph unicode="&#xe802;" glyph-name="code" horiz-adv-x="1097" d="M352.256 160.256l-28.672-28.672q-5.12-5.12-12.288-5.12t-13.312 5.12l-266.24 266.24q-6.144 6.144-6.144 13.312t6.144 13.312l266.24 266.24q5.12 6.144 13.312 6.144t12.288-6.144l28.672-28.672q6.144-5.12 6.144-13.312t-6.144-12.288l-224.256-225.28 224.256-224.256q6.144-6.144 6.144-13.312t-6.144-13.312zM690.176 770.56l-212.992-738.304q-2.048-7.168-9.216-11.264t-13.312-1.024l-34.816 9.216q-8.192 3.072-11.264 9.216t-2.048 14.336l212.992 737.28q3.072 8.192 9.216 11.264t13.312 2.048l35.84-10.24q7.168-2.048 11.264-9.216t1.024-13.312zM1065.984 397.824l-266.24-266.24q-6.144-5.12-13.312-5.12t-13.312 5.12l-28.672 28.672q-5.12 6.144-5.12 13.312t5.12 13.312l224.256 224.256-224.256 225.28q-5.12 5.12-5.12 12.288t5.12 13.312l28.672 28.672q6.144 6.144 13.312 6.144t13.312-6.144l266.24-266.24q5.12-5.12 5.12-13.312t-5.12-13.312z" />
<glyph unicode="&#xe803;" glyph-name="cancel" horiz-adv-x="804" d="M741.376 204.288q0-22.528-15.36-38.912l-77.824-77.824q-16.384-15.36-38.912-15.36t-38.912 15.36l-167.936 168.96-167.936-168.96q-16.384-15.36-38.912-15.36t-38.912 15.36l-77.824 77.824q-16.384 16.384-16.384 38.912t16.384 38.912l167.936 167.936-167.936 167.936q-16.384 16.384-16.384 38.912t16.384 38.912l77.824 77.824q16.384 16.384 38.912 16.384t38.912-16.384l167.936-167.936 167.936 167.936q16.384 16.384 38.912 16.384t38.912-16.384l77.824-77.824q15.36-15.36 15.36-38.912t-15.36-38.912l-167.936-167.936 167.936-167.936q15.36-15.36 15.36-38.912z" />
<glyph unicode="&#xe804;" glyph-name="terminal" horiz-adv-x="950" d="M333.824 397.824l-266.24-266.24q-5.12-5.12-12.288-5.12t-13.312 5.12l-28.672 28.672q-6.144 6.144-6.144 13.312t6.144 13.312l224.256 224.256-224.256 225.28q-6.144 5.12-6.144 12.288t6.144 13.312l28.672 28.672q5.12 6.144 13.312 6.144t12.288-6.144l266.24-266.24q6.144-5.12 6.144-13.312t-6.144-13.312zM951.296 136.704v-35.84q0-8.192-5.12-13.312t-13.312-5.12h-548.864q-8.192 0-13.312 5.12t-5.12 13.312v35.84q0 8.192 5.12 13.312t13.312 5.12h548.864q8.192 0 13.312-5.12t5.12-13.312z" />
<glyph unicode="&#xe805;" glyph-name="angle-down" horiz-adv-x="657" d="M614.4 539.136q0-7.168-6.144-13.312l-266.24-266.24q-5.12-5.12-13.312-5.12t-12.288 5.12l-266.24 266.24q-6.144 6.144-6.144 13.312t6.144 13.312l27.648 28.672q6.144 6.144 13.312 6.144t13.312-6.144l224.256-224.256 225.28 224.256q5.12 6.144 13.312 6.144t12.288-6.144l28.672-28.672q6.144-5.12 6.144-13.312z" />
<glyph unicode="&#xe806;" glyph-name="font" horiz-adv-x="950" d="M414.72 640.512l-97.28-257.024q18.432 0 77.824-1.024t91.136-1.024q11.264 0 32.768 1.024-49.152 144.384-104.448 258.048zM0 8.704l1.024 45.056q13.312 4.096 31.744 7.168t32.768 6.144 28.672 8.192 25.6 17.408 17.408 28.672l135.168 352.256 159.744 413.696h73.728q4.096-8.192 6.144-12.288l116.736-274.432q19.456-45.056 61.44-147.456t64.512-156.672q9.216-19.456 33.792-82.944t40.96-96.256q11.264-25.6 19.456-31.744 11.264-9.216 50.176-17.408t48.128-11.264q4.096-22.528 4.096-32.768 0-2.048-1.024-7.168t0-8.192q-35.84 0-108.544 5.12t-109.568 4.096q-43.008 0-122.88-4.096t-101.376-4.096q0 24.576 2.048 44.032l74.752 16.384q1.024 0 7.168 1.024t9.216 2.048 8.192 3.072 9.216 4.096 6.144 4.096 5.12 6.144 1.024 8.192q0 9.216-17.408 55.296t-40.96 101.376-24.576 57.344l-257.024 1.024q-14.336-33.792-44.032-111.616t-28.672-93.184q0-12.288 8.192-21.504t24.576-14.336 27.648-7.168 32.768-5.12 23.552-2.048q1.024-11.264 1.024-32.768 0-5.12-2.048-16.384-32.768 0-99.328 6.144t-99.328 6.144q-5.12 0-15.36-3.072t-12.288-2.048q-46.080-8.192-107.52-8.192z" />
<glyph unicode="&#xe807;" glyph-name="bold" horiz-adv-x="804" d="M317.44 90.624q41.984-18.432 79.872-18.432 215.040 0 215.040 191.488 0 65.536-23.552 103.424-15.36 24.576-35.84 41.984t-37.888 26.624-46.080 14.336-48.128 6.144-54.272 1.024q-40.96 0-57.344-6.144 0-29.696 0-90.112t-1.024-91.136q0-4.096 0-37.888t0-55.296 2.048-48.128 7.168-37.888zM309.248 517.632q23.552-4.096 62.464-4.096 47.104 0 81.92 7.168t62.464 25.6 41.984 51.2 15.36 80.896q0 39.936-16.384 69.632t-46.080 47.104-61.44 24.576-70.656 8.192q-28.672 0-74.752-7.168 0-28.672 3.072-86.016t2.048-87.040q0-15.36 0-46.080t-1.024-45.056q0-26.624 1.024-38.912zM0 8.704l1.024 54.272q9.216 2.048 49.152 9.216t60.416 15.36q4.096 7.168 7.168 15.36t4.096 19.456 4.096 18.432 1.024 21.504 0 19.456v36.864q0 561.152-12.288 585.728-2.048 5.12-12.288 8.192t-25.6 6.144-28.672 4.096-27.648 3.072-17.408 2.048l-2.048 47.104q56.32 1.024 194.56 6.144t212.992 5.12q13.312 0 38.912 0t38.912 0q39.936 0 77.824-7.168t73.728-24.576 61.44-39.936 41.984-60.416 16.384-77.824q0-29.696-9.216-55.296t-22.528-40.96-36.864-32.768-41.984-25.6-48.128-22.528q88.064-20.48 147.456-76.8t58.368-142.336q0-56.32-20.48-102.4t-53.248-74.752-78.848-48.128-93.184-27.648-100.352-8.192q-25.6 0-75.776 2.048t-75.776 1.024q-60.416 0-175.104-6.144t-132.096-7.168z" />
<glyph unicode="&#xe808;" glyph-name="italic" horiz-adv-x="585" d="M0 9.728l10.24 49.152q3.072 1.024 46.080 12.288t63.488 21.504q16.384 19.456 23.552 57.344 1.024 4.096 35.84 165.888t64.512 310.272 29.696 168.96v14.336q-13.312 7.168-30.72 11.264t-39.936 4.096-32.768 3.072l10.24 59.392q19.456-2.048 68.608-4.096t86.016-4.096 68.608-1.024q27.648 0 56.32 1.024t68.608 4.096 56.32 4.096q-2.048-22.528-10.24-51.2-17.408-6.144-58.368-16.384t-61.44-19.456q-5.12-10.24-8.192-23.552t-5.12-23.552-4.096-25.6-4.096-24.576q-15.36-83.968-50.176-239.616t-44.032-202.752q-1.024-5.12-7.168-32.768t-11.264-52.224-9.216-47.104-4.096-32.768l1.024-10.24q9.216-3.072 105.472-18.432-2.048-24.576-9.216-56.32-6.144 0-18.432-1.024t-18.432-1.024q-16.384 0-50.176 6.144t-49.152 6.144q-78.848 1.024-117.76 1.024-28.672 0-80.896-5.12t-69.632-6.144z" />
<glyph unicode="&#xe809;" glyph-name="header" d="M961.536 8.704q-25.6 0-75.776 2.048t-76.8 2.048q-24.576 0-74.752-2.048t-75.776-2.048q-14.336 0-21.504 12.288t-7.168 25.6q0 17.408 9.216 26.624t22.528 9.216 29.696 4.096 25.6 9.216q18.432 11.264 18.432 79.872v223.232q0 12.288-1.024 17.408-7.168 3.072-28.672 3.072h-385.024q-22.528 0-29.696-3.072 0-5.12 0-17.408l-1.024-211.968q0-80.896 21.504-94.208 9.216-5.12 26.624-7.168t32.768-2.048 25.6-8.192 11.264-26.624q0-14.336-7.168-26.624t-20.48-13.312q-26.624 0-79.872 2.048t-78.848 2.048q-24.576 0-72.704-2.048t-72.704-2.048q-13.312 0-20.48 12.288t-7.168 25.6q0 17.408 9.216 25.6t20.48 10.24 26.624 4.096 24.576 9.216q18.432 13.312 18.432 81.92l-1.024 31.744v464.896q0 2.048 1.024 14.336t0 21.504-1.024 21.504-2.048 24.576-4.096 20.48-6.144 18.432-9.216 10.24q-8.192 5.12-25.6 6.144t-29.696 2.048-23.552 7.168-10.24 26.624q0 14.336 6.144 26.624t20.48 13.312q26.624 0 79.872-2.048t78.848-2.048q23.552 0 72.704 2.048t71.68 2.048q14.336 0 21.504-13.312t7.168-26.624q0-17.408-9.216-25.6t-22.528-8.192-28.672-2.048-24.576-7.168q-19.456-12.288-19.456-92.16l1.024-182.272q0-12.288 0-18.432 7.168-2.048 22.528-2.048h399.36q14.336 0 21.504 2.048 1.024 6.144 1.024 18.432v182.272q0 79.872-19.456 92.16-10.24 6.144-33.792 7.168t-37.888 7.168-14.336 28.672q0 14.336 7.168 26.624t21.504 13.312q24.576 0 75.776-2.048t74.752-2.048q24.576 0 73.728 2.048t73.728 2.048q14.336 0 21.504-13.312t7.168-26.624q0-17.408-10.24-25.6t-22.528-8.192-29.696-2.048-24.576-7.168q-20.48-13.312-20.48-92.16l1.024-538.624q0-67.584 19.456-79.872 9.216-6.144 25.6-7.168t30.72-3.072 23.552-9.216 10.24-24.576q0-15.36-6.144-27.648t-20.48-13.312z" />
<glyph unicode="&#xe80a;" glyph-name="align-left" d="M1024 192v-72.704q0-15.36-11.264-25.6t-25.6-11.264h-950.272q-15.36 0-25.6 11.264t-11.264 25.6v72.704q0 15.36 11.264 25.6t25.6 11.264h950.272q15.36 0 25.6-11.264t11.264-25.6zM804.864 411.136v-72.704q0-15.36-11.264-25.6t-25.6-11.264h-731.136q-15.36 0-25.6 11.264t-11.264 25.6v72.704q0 15.36 11.264 25.6t25.6 11.264h731.136q15.36 0 25.6-11.264t11.264-25.6zM951.296 631.296v-73.728q0-14.336-11.264-25.6t-25.6-11.264h-877.568q-15.36 0-25.6 11.264t-11.264 25.6v73.728q0 14.336 11.264 25.6t25.6 10.24h877.568q14.336 0 25.6-10.24t11.264-25.6zM731.136 850.432v-73.728q0-14.336-10.24-25.6t-25.6-10.24h-658.432q-15.36 0-25.6 10.24t-11.264 25.6v73.728q0 14.336 11.264 25.6t25.6 11.264h658.432q14.336 0 25.6-11.264t10.24-25.6z" />
<glyph unicode="&#xe80b;" glyph-name="align-center" d="M1024 192v-72.704q0-15.36-11.264-25.6t-25.6-11.264h-950.272q-15.36 0-25.6 11.264t-11.264 25.6v72.704q0 15.36 11.264 25.6t25.6 11.264h950.272q15.36 0 25.6-11.264t11.264-25.6zM804.864 411.136v-72.704q0-15.36-11.264-25.6t-25.6-11.264h-512q-14.336 0-25.6 11.264t-11.264 25.6v72.704q0 15.36 11.264 25.6t25.6 11.264h512q15.36 0 25.6-11.264t11.264-25.6zM951.296 631.296v-73.728q0-14.336-11.264-25.6t-25.6-11.264h-804.864q-14.336 0-25.6 11.264t-11.264 25.6v73.728q0 14.336 11.264 25.6t25.6 10.24h804.864q14.336 0 25.6-10.24t11.264-25.6zM731.136 850.432v-73.728q0-14.336-10.24-25.6t-25.6-10.24h-366.592q-14.336 0-25.6 10.24t-10.24 25.6v73.728q0 14.336 10.24 25.6t25.6 11.264h366.592q14.336 0 25.6-11.264t10.24-25.6z" />
<glyph unicode="&#xe80c;" glyph-name="align-right" d="M1024 192v-72.704q0-15.36-11.264-25.6t-25.6-11.264h-950.272q-15.36 0-25.6 11.264t-11.264 25.6v72.704q0 15.36 11.264 25.6t25.6 11.264h950.272q15.36 0 25.6-11.264t11.264-25.6zM1024 411.136v-72.704q0-15.36-11.264-25.6t-25.6-11.264h-731.136q-14.336 0-25.6 11.264t-11.264 25.6v72.704q0 15.36 11.264 25.6t25.6 11.264h731.136q15.36 0 25.6-11.264t11.264-25.6zM1024 631.296v-73.728q0-14.336-11.264-25.6t-25.6-11.264h-877.568q-14.336 0-25.6 11.264t-11.264 25.6v73.728q0 14.336 11.264 25.6t25.6 10.24h877.568q15.36 0 25.6-10.24t11.264-25.6zM1024 850.432v-73.728q0-14.336-11.264-25.6t-25.6-10.24h-658.432q-14.336 0-25.6 10.24t-10.24 25.6v73.728q0 14.336 10.24 25.6t25.6 11.264h658.432q15.36 0 25.6-11.264t11.264-25.6z" />
<glyph unicode="&#xe80d;" glyph-name="list-bullet" d="M219.136 155.136q0-45.056-31.744-77.824t-77.824-31.744-77.824 31.744-31.744 77.824 31.744 77.824 77.824 31.744 77.824-31.744 31.744-77.824zM219.136 448q0-46.080-31.744-77.824t-77.824-31.744-77.824 31.744-31.744 77.824 31.744 77.824 77.824 31.744 77.824-31.744 31.744-77.824zM1024 210.432v-109.568q0-7.168-5.12-13.312t-13.312-5.12h-694.272q-8.192 0-13.312 5.12t-5.12 13.312v109.568q0 7.168 5.12 12.288t13.312 6.144h694.272q7.168 0 13.312-6.144t5.12-12.288zM219.136 740.864q0-46.080-31.744-77.824t-77.824-31.744-77.824 31.744-31.744 77.824 31.744 77.824 77.824 31.744 77.824-31.744 31.744-77.824zM1024 503.296v-110.592q0-7.168-5.12-12.288t-13.312-5.12h-694.272q-8.192 0-13.312 5.12t-5.12 12.288v110.592q0 7.168 5.12 12.288t13.312 5.12h694.272q7.168 0 13.312-5.12t5.12-12.288zM1024 795.136v-109.568q0-7.168-5.12-12.288t-13.312-6.144h-694.272q-8.192 0-13.312 6.144t-5.12 12.288v109.568q0 8.192 5.12 13.312t13.312 5.12h694.272q7.168 0 13.312-5.12t5.12-13.312z" />
<glyph unicode="&#xe80e;" glyph-name="indent-left" d="M219.136 648.704v-328.704q0-7.168-5.12-13.312t-13.312-5.12q-7.168 0-12.288 5.12l-164.864 164.864q-5.12 5.12-5.12 13.312t5.12 13.312l164.864 163.84q5.12 5.12 12.288 5.12 8.192 0 13.312-5.12t5.12-13.312zM1024 210.432v-109.568q0-7.168-5.12-13.312t-13.312-5.12h-987.136q-7.168 0-13.312 5.12t-5.12 13.312v109.568q0 7.168 5.12 12.288t13.312 6.144h987.136q7.168 0 13.312-6.144t5.12-12.288zM1024 429.568v-109.568q0-7.168-5.12-13.312t-13.312-5.12h-621.568q-7.168 0-13.312 5.12t-5.12 13.312v109.568q0 7.168 5.12 13.312t13.312 5.12h621.568q7.168 0 13.312-5.12t5.12-13.312zM1024 648.704v-109.568q0-7.168-5.12-12.288t-13.312-6.144h-621.568q-7.168 0-13.312 6.144t-5.12 12.288v109.568q0 8.192 5.12 13.312t13.312 5.12h621.568q7.168 0 13.312-5.12t5.12-13.312zM1024 868.864v-109.568q0-8.192-5.12-13.312t-13.312-5.12h-987.136q-7.168 0-13.312 5.12t-5.12 13.312v109.568q0 7.168 5.12 12.288t13.312 6.144h987.136q7.168 0 13.312-6.144t5.12-12.288z" />
<glyph unicode="&#xe80f;" glyph-name="indent-right" d="M200.704 484.864q0-8.192-5.12-13.312l-163.84-164.864q-5.12-5.12-13.312-5.12-7.168 0-13.312 5.12t-5.12 13.312v328.704q0 8.192 5.12 13.312t13.312 5.12 13.312-5.12l163.84-163.84q5.12-5.12 5.12-13.312zM1024 210.432v-109.568q0-7.168-5.12-13.312t-13.312-5.12h-987.136q-7.168 0-13.312 5.12t-5.12 13.312v109.568q0 7.168 5.12 12.288t13.312 6.144h987.136q7.168 0 13.312-6.144t5.12-12.288zM1024 429.568v-109.568q0-7.168-5.12-13.312t-13.312-5.12h-621.568q-7.168 0-13.312 5.12t-5.12 13.312v109.568q0 7.168 5.12 13.312t13.312 5.12h621.568q7.168 0 13.312-5.12t5.12-13.312zM1024 648.704v-109.568q0-7.168-5.12-12.288t-13.312-6.144h-621.568q-7.168 0-13.312 6.144t-5.12 12.288v109.568q0 8.192 5.12 13.312t13.312 5.12h621.568q7.168 0 13.312-5.12t5.12-13.312zM1024 868.864v-109.568q0-8.192-5.12-13.312t-13.312-5.12h-987.136q-7.168 0-13.312 5.12t-5.12 13.312v109.568q0 7.168 5.12 12.288t13.312 6.144h987.136q7.168 0 13.312-6.144t5.12-12.288z" />
<glyph unicode="&#xe810;" glyph-name="list-numbered" d="M218.112 34.304q0-46.080-31.744-71.68t-76.8-26.624q-61.44 0-98.304 37.888l31.744 50.176q28.672-25.6 61.44-25.6 16.384 0 28.672 8.192t12.288 24.576q0 35.84-60.416 31.744l-14.336 31.744q4.096 6.144 18.432 24.576t24.576 31.744 20.48 21.504v1.024q-9.216 0-27.648-1.024t-27.648 0v-30.72h-60.416v87.040h190.464v-50.176l-54.272-66.56q28.672-6.144 46.080-27.648t17.408-50.176zM219.136 392.704v-91.136h-206.848q-4.096 20.48-4.096 30.72 0 29.696 14.336 53.248t31.744 38.912 37.888 27.648 31.744 24.576 14.336 25.6q0 14.336-9.216 22.528t-22.528 7.168q-25.6 0-46.080-32.768l-48.128 33.792q13.312 28.672 40.96 45.056t60.416 16.384q40.96 0 69.632-23.552t28.672-64.512q0-28.672-19.456-52.224t-43.008-36.864-43.008-28.672-20.48-30.72h72.704v34.816h60.416zM1024 210.432v-109.568q0-8.192-5.12-13.312t-13.312-5.12h-694.272q-8.192 0-13.312 5.12t-5.12 13.312v109.568q0 8.192 5.12 13.312t13.312 5.12h694.272q7.168 0 13.312-6.144t5.12-12.288zM219.136 724.48v-57.344h-191.488v57.344h61.44q0 22.528 0 69.632t1.024 68.608v7.168h-1.024q-5.12-10.24-28.672-30.72l-40.96 43.008 77.824 72.704h60.416v-230.4h61.44zM1024 503.296v-110.592q0-7.168-5.12-12.288t-13.312-5.12h-694.272q-8.192 0-13.312 5.12t-5.12 12.288v110.592q0 7.168 5.12 12.288t13.312 5.12h694.272q7.168 0 13.312-5.12t5.12-12.288zM1024 795.136v-109.568q0-7.168-5.12-12.288t-13.312-6.144h-694.272q-8.192 0-13.312 6.144t-5.12 12.288v109.568q0 8.192 5.12 13.312t13.312 5.12h694.272q7.168 0 13.312-5.12t5.12-13.312z" />
<glyph unicode="&#xe811;" glyph-name="underline" horiz-adv-x="878" d="M27.648 833.024q-21.504 1.024-25.6 2.048l-2.048 50.176q7.168 0 22.528 0 34.816 0 64.512-2.048 75.776-4.096 94.208-4.096 49.152 0 96.256 2.048 66.56 2.048 83.968 3.072 31.744 0 49.152 1.024l-1.024-8.192 1.024-36.864v-5.12q-33.792-5.12-70.656-5.12-33.792 0-45.056-14.336-7.168-7.168-7.168-74.752 0-8.192 0-18.432t0-15.36l1.024-131.072 8.192-159.744q3.072-70.656 28.672-114.688 20.48-33.792 55.296-53.248 50.176-26.624 100.352-26.624 59.392 0 109.568 16.384 31.744 10.24 56.32 28.672 27.648 20.48 37.888 36.864 20.48 31.744 29.696 64.512 12.288 41.984 12.288 131.072 0 45.056-2.048 73.728t-6.144 69.632-8.192 91.136l-2.048 33.792q-3.072 37.888-13.312 50.176-19.456 20.48-44.032 19.456l-57.344-1.024-8.192 2.048 1.024 49.152h48.128l116.736-6.144q44.032-2.048 112.64 6.144l10.24-2.048q3.072-21.504 3.072-28.672 0-4.096-2.048-17.408-25.6-7.168-48.128-8.192-41.984-6.144-45.056-9.216-8.192-9.216-8.192-23.552 0-4.096 0-15.36t1.024-17.408q5.12-11.264 13.312-226.304 3.072-111.616-9.216-174.080-8.192-43.008-23.552-69.632-21.504-36.864-63.488-70.656-43.008-32.768-104.448-50.176-62.464-19.456-145.408-19.456-95.232 0-162.816 26.624t-101.376 69.632q-34.816 43.008-48.128 111.616-9.216 45.056-9.216 135.168v190.464q0 107.52-9.216 121.856-14.336 20.48-83.968 21.504zM877.568 27.136v36.864q0 8.192-5.12 13.312t-13.312 5.12h-840.704q-8.192 0-13.312-5.12t-5.12-13.312v-36.864q0-8.192 5.12-13.312t13.312-5.12h840.704q8.192 0 13.312 5.12t5.12 13.312z" />
<glyph unicode="&#xe812;" glyph-name="table" horiz-adv-x="950" d="M292.864 173.568v109.568q0 8.192-5.12 13.312t-13.312 5.12h-183.296q-7.168 0-13.312-5.12t-5.12-13.312v-109.568q0-8.192 5.12-13.312t13.312-5.12h183.296q8.192 0 13.312 5.12t5.12 13.312zM292.864 392.704v110.592q0 7.168-5.12 12.288t-13.312 5.12h-183.296q-7.168 0-13.312-5.12t-5.12-12.288v-110.592q0-7.168 5.12-12.288t13.312-5.12h183.296q8.192 0 13.312 5.12t5.12 12.288zM584.704 173.568v109.568q0 8.192-5.12 13.312t-12.288 5.12h-183.296q-8.192 0-13.312-5.12t-5.12-13.312v-109.568q0-8.192 5.12-13.312t13.312-5.12h183.296q7.168 0 12.288 5.12t5.12 13.312zM292.864 612.864v109.568q0 8.192-5.12 13.312t-13.312 5.12h-183.296q-7.168 0-13.312-5.12t-5.12-13.312v-109.568q0-8.192 5.12-13.312t13.312-5.12h183.296q8.192 0 13.312 5.12t5.12 13.312zM584.704 392.704v110.592q0 7.168-5.12 12.288t-12.288 5.12h-183.296q-8.192 0-13.312-5.12t-5.12-12.288v-110.592q0-7.168 5.12-12.288t13.312-5.12h183.296q7.168 0 12.288 5.12t5.12 12.288zM877.568 173.568v109.568q0 8.192-5.12 13.312t-13.312 5.12h-182.272q-8.192 0-13.312-5.12t-5.12-13.312v-109.568q0-8.192 5.12-13.312t13.312-5.12h182.272q8.192 0 13.312 5.12t5.12 13.312zM584.704 612.864v109.568q0 8.192-5.12 13.312t-12.288 5.12h-183.296q-8.192 0-13.312-5.12t-5.12-13.312v-109.568q0-8.192 5.12-13.312t13.312-5.12h183.296q7.168 0 12.288 5.12t5.12 13.312zM877.568 392.704v110.592q0 7.168-5.12 12.288t-13.312 5.12h-182.272q-8.192 0-13.312-5.12t-5.12-12.288v-110.592q0-7.168 5.12-12.288t13.312-5.12h182.272q8.192 0 13.312 5.12t5.12 12.288zM877.568 612.864v109.568q0 8.192-5.12 13.312t-13.312 5.12h-182.272q-8.192 0-13.312-5.12t-5.12-13.312v-109.568q0-8.192 5.12-13.312t13.312-5.12h182.272q8.192 0 13.312 5.12t5.12 13.312zM951.296 795.136v-621.568q0-37.888-27.648-64.512t-64.512-26.624h-768q-36.864 0-64.512 26.624t-26.624 64.512v621.568q0 37.888 26.624 64.512t64.512 27.648h768q37.888 0 64.512-27.648t27.648-64.512z" />
<glyph unicode="&#xe813;" glyph-name="eraser" horiz-adv-x="1097" d="M512 155.136l192.512 220.16h-439.296l-192.512-220.16h439.296zM1090.56 770.56q9.216-19.456 6.144-40.96t-17.408-36.864l-512-585.728q-22.528-24.576-55.296-24.576h-439.296q-21.504 0-38.912 11.264t-27.648 31.744q-8.192 19.456-5.12 40.96t17.408 36.864l512 585.728q21.504 24.576 54.272 24.576h439.296q21.504 0 39.936-11.264t26.624-31.744z" />
<glyph unicode="&#xe814;" glyph-name="text-height" d="M996.352 155.136q19.456 0 24.576-10.24t-6.144-25.6l-72.704-92.16q-11.264-15.36-27.648-15.36t-27.648 15.36l-72.704 92.16q-11.264 15.36-6.144 25.6t23.552 10.24h46.080v585.728h-46.080q-18.432 0-23.552 10.24t6.144 25.6l72.704 92.16q11.264 15.36 27.648 15.36t27.648-15.36l72.704-92.16q11.264-15.36 6.144-25.6t-24.576-10.24h-45.056v-585.728h45.056zM46.080 886.272l30.72-15.36q7.168-3.072 120.832-3.072 25.6 0 75.776 1.024t74.752 1.024q21.504 0 61.44 0t61.44 0h167.936q3.072 0 12.288 0t11.264 0 9.216 1.024 10.24 5.12 8.192 10.24l24.576 1.024q2.048 0 7.168-1.024t8.192 0q1.024-63.488 1.024-191.488 0-46.080-2.048-62.464-22.528-8.192-38.912-10.24-14.336 24.576-31.744 72.704-1.024 5.12-6.144 27.648t-8.192 41.984-4.096 20.48q-3.072 4.096-7.168 7.168t-8.192 3.072-8.192 1.024-10.24 1.024-9.216-1.024q-9.216 0-37.888 1.024t-43.008 0-35.84-1.024-40.96-4.096q-5.12-46.080-4.096-76.8 0-54.272 1.024-222.208t1.024-260.096q0-9.216-1.024-40.96t0-52.224 7.168-38.912q22.528-12.288 70.656-24.576t68.608-21.504q2.048-22.528 2.048-28.672 0-8.192-1.024-16.384l-19.456-1.024q-44.032-1.024-124.928 5.12t-117.76 5.12q-28.672 0-87.040-5.12t-86.016-5.12q-2.048 29.696-2.048 29.696v5.12q9.216 15.36 34.816 24.576t56.32 17.408 45.056 15.36q10.24 23.552 10.24 218.112 0 58.368-1.024 173.056t-2.048 174.080v66.56q0 1.024 0 8.192t1.024 14.336-1.024 15.36-2.048 13.312-3.072 8.192q-6.144 7.168-92.16 7.168-18.432 0-53.248-7.168t-45.056-15.36q-11.264-7.168-19.456-40.96t-18.432-63.488-24.576-30.72q-23.552 15.36-31.744 25.6v218.112z" />
<glyph unicode="&#xe815;" glyph-name="brush" d="M922.624 960q39.936 0 70.656-26.624t29.696-66.56q0-35.84-25.6-86.016-189.44-359.424-266.24-430.080-55.296-52.224-123.904-52.224-72.704 0-123.904 53.248t-52.224 124.928q0 73.728 53.248 121.856l364.544 330.752q33.792 30.72 73.728 30.72zM403.456 369.152q22.528-43.008 60.416-74.752t86.016-43.008l1.024-40.96q2.048-121.856-73.728-197.632t-199.68-76.8q-69.632 0-123.904 26.624t-88.064 72.704-49.152 104.448-16.384 125.952q4.096-3.072 23.552-17.408t35.84-25.6 32.768-20.48 26.624-9.216q23.552 0 31.744 20.48 14.336 37.888 32.768 64.512t39.936 43.008 50.176 27.648 58.368 14.336 71.68 6.144z" />
<glyph unicode="&#xe816;" glyph-name="pencil" horiz-adv-x="878" d="M207.872 82.432l51.2 52.224-134.144 134.144-52.224-52.224v-61.44h73.728v-72.704h61.44zM505.856 612.864q0 12.288-12.288 12.288-5.12 0-9.216-4.096l-310.272-309.248q-4.096-4.096-4.096-10.24 0-12.288 13.312-12.288 5.12 0 9.216 4.096l310.272 309.248q3.072 4.096 3.072 10.24zM475.136 722.432l237.568-237.568-475.136-476.16h-237.568v238.592zM865.28 667.136q0-29.696-20.48-51.2l-95.232-95.232-237.568 238.592 95.232 94.208q20.48 21.504 51.2 21.504 29.696 0 52.224-21.504l134.144-134.144q20.48-22.528 20.48-52.224z" />
<glyph unicode="&#xe817;" glyph-name="minus" horiz-adv-x="804" d="M804.864 539.136v-109.568q0-22.528-16.384-38.912t-38.912-15.36h-694.272q-23.552 0-38.912 15.36t-16.384 38.912v109.568q0 23.552 16.384 38.912t38.912 16.384h694.272q22.528 0 38.912-16.384t16.384-38.912z" />
<glyph unicode="&#xe818;" glyph-name="picture" horiz-adv-x="1097" d="M365.568 631.296q0-46.080-31.744-77.824t-77.824-32.768-77.824 32.768-31.744 77.824 31.744 76.8 77.824 32.768 77.824-32.768 31.744-76.8zM951.296 411.136v-256h-804.864v109.568l182.272 183.296 92.16-91.136 291.84 291.84zM1005.568 813.568h-914.432q-7.168 0-12.288-5.12t-6.144-13.312v-694.272q0-8.192 6.144-13.312t12.288-5.12h914.432q7.168 0 13.312 5.12t5.12 13.312v694.272q0 7.168-5.12 13.312t-13.312 5.12zM1096.704 795.136v-694.272q0-37.888-26.624-64.512t-64.512-27.648h-914.432q-36.864 0-64.512 27.648t-26.624 64.512v694.272q0 37.888 26.624 64.512t64.512 27.648h914.432q37.888 0 64.512-27.648t26.624-64.512z" />
<glyph unicode="&#xe819;" glyph-name="file-image" horiz-adv-x="878" d="M838.656 742.912q16.384-16.384 27.648-43.008t11.264-51.2v-657.408q0-23.552-15.36-38.912t-38.912-16.384h-768q-23.552 0-38.912 16.384t-16.384 38.912v913.408q0 23.552 16.384 38.912t38.912 16.384h512q22.528 0 50.176-11.264t43.008-27.648zM584.704 882.176v-215.040h215.040q-5.12 16.384-12.288 23.552l-179.2 179.2q-6.144 7.168-23.552 12.288zM804.864 8.704v585.728h-237.568q-23.552 0-38.912 15.36t-16.384 38.912v238.592h-439.296v-878.592h732.16zM731.136 264.704v-182.272h-584.704v109.568l109.568 109.568 72.704-72.704 220.16 219.136zM256 375.296q-46.080 0-77.824 31.744t-31.744 77.824 31.744 77.824 77.824 31.744 77.824-31.744 31.744-77.824-31.744-77.824-77.824-31.744z" />
<glyph unicode="&#xe81a;" glyph-name="cw" horiz-adv-x="878" d="M877.568 813.568v-256q0-14.336-10.24-25.6t-26.624-11.264h-256q-23.552 0-32.768 23.552-10.24 22.528 7.168 38.912l78.848 78.848q-83.968 78.848-198.656 78.848-59.392 0-113.664-23.552t-93.184-62.464-63.488-93.184-22.528-113.664 22.528-113.664 63.488-93.184 93.184-62.464 113.664-23.552q67.584 0 128 29.696t102.4 83.968q4.096 6.144 13.312 7.168 8.192 0 14.336-5.12l77.824-78.848q5.12-4.096 6.144-11.264t-5.12-13.312q-61.44-75.776-150.528-116.736t-186.368-41.984q-89.088 0-171.008 34.816t-139.264 94.208-94.208 140.288-34.816 169.984 34.816 169.984 94.208 140.288 139.264 94.208 171.008 34.816q83.968 0 161.792-31.744t140.288-90.112l73.728 73.728q16.384 18.432 39.936 8.192 22.528-9.216 22.528-33.792z" />
<glyph unicode="&#xe81b;" glyph-name="ccw" horiz-adv-x="878" d="M877.568 448q0-89.088-34.816-169.984t-93.184-140.288-140.288-94.208-169.984-34.816q-98.304 0-187.392 41.984t-150.528 116.736q-4.096 6.144-4.096 13.312t5.12 11.264l77.824 78.848q6.144 5.12 14.336 5.12 9.216-1.024 13.312-7.168 41.984-54.272 102.4-83.968t129.024-29.696q59.392 0 112.64 23.552t94.208 62.464 62.464 93.184 22.528 113.664-22.528 113.664-62.464 93.184-94.208 62.464-112.64 23.552q-56.32 0-107.52-20.48t-92.16-58.368l78.848-78.848q17.408-16.384 8.192-38.912-10.24-23.552-33.792-23.552h-256q-15.36 0-25.6 11.264t-11.264 25.6v256q0 24.576 22.528 33.792 22.528 10.24 39.936-8.192l73.728-73.728q61.44 58.368 140.288 90.112t162.816 31.744q89.088 0 169.984-34.816t140.288-94.208 93.184-140.288 34.816-169.984z" />
<glyph unicode="&#xe900;" glyph-name="omega" d="M704 64h256l64 128v-256h-384v214.214c131.112 56.484 224 197.162 224 361.786 0 214.432-157.598 382.266-352 382.266-194.406 0-352-167.832-352-382.266 0-164.624 92.886-305.302 224-361.786v-214.214h-384v256l64-128h256v32.59c-187.63 66.46-320 227.402-320 415.41 0 247.424 229.23 448 512 448s512-200.576 512-448c0-188.008-132.37-348.95-320-415.41v-32.59z" />
<glyph unicode="&#xe901;" glyph-name="cancel-circle" d="M512 960c-282.77 0-512-229.23-512-512s229.23-512 512-512 512 229.23 512 512-229.23 512-512 512zM512 32c-229.75 0-416 186.25-416 416s186.25 416 416 416 416-186.25 416-416-186.25-416-416-416zM672 704l-160-160-160 160-96-96 160-160-160-160 96-96 160 160 160-160 96 96-160 160 160 160z" />
<glyph unicode="&#xe904;" glyph-name="newspaper" d="M896 704v128h-896v-704c0-35.346 28.654-64 64-64h864c53.022 0 96 42.978 96 96v544h-128zM832 128h-768v640h768v-640zM128 640h640v-64h-640zM512 512h256v-64h-256zM512 384h256v-64h-256zM512 256h192v-64h-192zM128 512h320v-320h-320z" />
<glyph unicode="&#xe90f;" glyph-name="camera" d="M304 352c0-114.876 93.124-208 208-208s208 93.124 208 208-93.124 208-208 208-208-93.124-208-208zM960 704h-224c-16 64-32 128-96 128h-256c-64 0-80-64-96-128h-224c-35.2 0-64-28.8-64-64v-576c0-35.2 28.8-64 64-64h896c35.2 0 64 28.8 64 64v576c0 35.2-28.8 64-64 64zM512 68c-156.85 0-284 127.148-284 284 0 156.85 127.15 284 284 284 156.852 0 284-127.15 284-284 0-156.852-127.146-284-284-284zM960 512h-128v64h128v-64z" />
<glyph unicode="&#xe911;" glyph-name="music" d="M960 960h64v-736c0-88.366-100.29-160-224-160s-224 71.634-224 160c0 88.368 100.29 160 224 160 62.684 0 119.342-18.4 160-48.040v368.040l-512-113.778v-494.222c0-88.366-100.288-160-224-160s-224 71.634-224 160c0 88.368 100.288 160 224 160 62.684 0 119.342-18.4 160-48.040v624.040l576 128z" />
<glyph unicode="&#xe912;" glyph-name="play" d="M981.188 799.892c-143.632 20.65-302.332 32.108-469.186 32.108-166.86 0-325.556-11.458-469.194-32.108-27.53-107.726-42.808-226.75-42.808-351.892 0-125.14 15.278-244.166 42.808-351.89 143.638-20.652 302.336-32.11 469.194-32.11 166.854 0 325.552 11.458 469.186 32.11 27.532 107.724 42.812 226.75 42.812 351.89 0 125.142-15.28 244.166-42.812 351.892zM384.002 256v384l320-192-320-192z" />
<glyph unicode="&#xe914;" glyph-name="video-camera" d="M384 672c0 88.366 71.634 160 160 160s160-71.634 160-160c0-88.366-71.634-160-160-160s-160 71.634-160 160zM0 672c0 88.366 71.634 160 160 160s160-71.634 160-160c0-88.366-71.634-160-160-160s-160 71.634-160 160zM768 352v96c0 35.2-28.8 64-64 64h-640c-35.2 0-64-28.8-64-64v-320c0-35.2 28.8-64 64-64h640c35.2 0 64 28.8 64 64v96l256-160v448l-256-160zM640 192h-512v192h512v-192z" />
<glyph unicode="&#xe92b;" glyph-name="file-zip" d="M917.806 730.924c-22.208 30.292-53.174 65.7-87.178 99.704s-69.412 64.964-99.704 87.178c-51.574 37.82-76.592 42.194-90.924 42.194h-496c-44.112 0-80-35.888-80-80v-864c0-44.112 35.884-80 80-80h736c44.112 0 80 35.888 80 80v624c0 14.332-4.372 39.35-42.194 90.924v0 0zM785.374 785.374c30.7-30.7 54.8-58.398 72.58-81.374h-153.954v153.946c22.98-17.78 50.678-41.878 81.374-72.572v0 0zM896 16c0-8.672-7.328-16-16-16h-736c-8.672 0-16 7.328-16 16v864c0 8.672 7.328 16 16 16 0 0 495.956 0.002 496 0v-224c0-17.672 14.322-32 32-32h224v-624zM256 896h128v-64h-128v64zM384 832h128v-64h-128v64zM256 768h128v-64h-128v64zM384 704h128v-64h-128v64zM256 640h128v-64h-128v64zM384 576h128v-64h-128v64zM256 512h128v-64h-128v64zM384 448h128v-64h-128v64zM256 112c0-26.4 21.6-48 48-48h160c26.4 0 48 21.6 48 48v160c0 26.4-21.6 48-48 48h-80v64h-128v-272zM448 192v-64h-128v64h128z" />
<glyph unicode="&#xe92e;" glyph-name="stack" d="M1024 640l-512 256-512-256 512-256 512 256zM512 811.030l342.058-171.030-342.058-171.030-342.058 171.030 342.058 171.030zM921.444 499.278l102.556-51.278-512-256-512 256 102.556 51.278 409.444-204.722zM921.444 307.278l102.556-51.278-512-256-512 256 102.556 51.278 409.444-204.722z" />
<glyph unicode="&#xe93f;" glyph-name="credit-card" d="M928 832h-832c-52.8 0-96-43.2-96-96v-576c0-52.8 43.2-96 96-96h832c52.8 0 96 43.2 96 96v576c0 52.8-43.2 96-96 96zM96 768h832c17.346 0 32-14.654 32-32v-96h-896v96c0 17.346 14.654 32 32 32zM928 128h-832c-17.346 0-32 14.654-32 32v288h896v-288c0-17.346-14.654-32-32-32zM128 320h64v-128h-64zM256 320h64v-128h-64zM384 320h64v-128h-64z" />
<glyph unicode="&#xe944;" glyph-name="address-book" d="M192 960v-1024h768v1024h-768zM576 703.67c70.51 0 127.67-57.16 127.67-127.67s-57.16-127.67-127.67-127.67-127.67 57.16-127.67 127.67 57.16 127.67 127.67 127.67v0zM768 192h-384v64c0 70.696 57.306 128 128 128v0h128c70.696 0 128-57.304 128-128v-64zM64 896h96v-192h-96v192zM64 640h96v-192h-96v192zM64 384h96v-192h-96v192zM64 128h96v-192h-96v192z" />
<glyph unicode="&#xe945;" glyph-name="envelop" d="M928 832h-832c-52.8 0-96-43.2-96-96v-640c0-52.8 43.2-96 96-96h832c52.8 0 96 43.2 96 96v640c0 52.8-43.2 96-96 96zM398.74 409.628l-270.74-210.892v501.642l270.74-290.75zM176.38 704h671.24l-335.62-252-335.62 252zM409.288 398.302l102.712-110.302 102.71 110.302 210.554-270.302h-626.528l210.552 270.302zM625.26 409.628l270.74 290.75v-501.642l-270.74 210.892z" />
<glyph unicode="&#xe947;" glyph-name="location" d="M512 960c-176.732 0-320-143.268-320-320 0-320 320-704 320-704s320 384 320 704c0 176.732-143.27 320-320 320zM512 448c-106.040 0-192 85.96-192 192s85.96 192 192 192 192-85.96 192-192-85.96-192-192-192z" />
<glyph unicode="&#xe95c;" glyph-name="drawer" d="M1016.988 307.99l-256 320c-6.074 7.592-15.266 12.010-24.988 12.010h-448c-9.72 0-18.916-4.418-24.988-12.010l-256-320c-4.538-5.674-7.012-12.724-7.012-19.99v-288c0-35.346 28.654-64 64-64h896c35.348 0 64 28.654 64 64v288c0 7.266-2.472 14.316-7.012 19.99zM960 256h-224l-128-128h-192l-128 128h-224v20.776l239.38 299.224h417.24l239.38-299.224v-20.776zM736 448h-448c-17.672 0-32 14.328-32 32s14.328 32 32 32h448c17.674 0 32-14.328 32-32s-14.326-32-32-32zM800 320h-576c-17.672 0-32 14.326-32 32s14.328 32 32 32h576c17.674 0 32-14.326 32-32s-14.326-32-32-32z" />
<glyph unicode="&#xe960;" glyph-name="download" d="M512 384l256 256h-192v256h-128v-256h-192zM744.726 488.728l-71.74-71.742 260.080-96.986-421.066-157.018-421.066 157.018 260.080 96.986-71.742 71.742-279.272-104.728v-256l512-192 512 192v256z" />
<glyph unicode="&#xe961;" glyph-name="upload" d="M448 384h128v256h192l-256 256-256-256h192zM640 528v-98.712l293.066-109.288-421.066-157.018-421.066 157.018 293.066 109.288v98.712l-384-144v-256l512-192 512 192v256z" />
<glyph unicode="&#xe977;" glyph-name="quotes-left" d="M225 512c123.712 0 224-100.29 224-224 0-123.712-100.288-224-224-224s-224 100.288-224 224l-1 32c0 247.424 200.576 448 448 448v-128c-85.474 0-165.834-33.286-226.274-93.726-11.634-11.636-22.252-24.016-31.83-37.020 11.438 1.8 23.16 2.746 35.104 2.746zM801 512c123.71 0 224-100.29 224-224 0-123.712-100.29-224-224-224s-224 100.288-224 224l-1 32c0 247.424 200.576 448 448 448v-128c-85.474 0-165.834-33.286-226.274-93.726-11.636-11.636-22.254-24.016-31.832-37.020 11.44 1.8 23.16 2.746 35.106 2.746z" />
<glyph unicode="&#xe98b;" glyph-name="enlarge2" d="M1024 960v-416l-160 160-192-192-96 96 192 192-160 160zM448 288l-192-192 160-160h-416v416l160-160 192 192z" />
<glyph unicode="&#xe98c;" glyph-name="shrink2" d="M448 384v-416l-160 160-192-192-96 96 192 192-160 160zM1024 864l-192-192 160-160h-416v416l160-160 192 192z" />
<glyph unicode="&#xe98f;" glyph-name="lock" d="M592 512h-16v192c0 105.87-86.13 192-192 192h-128c-105.87 0-192-86.13-192-192v-192h-16c-26.4 0-48-21.6-48-48v-480c0-26.4 21.6-48 48-48h544c26.4 0 48 21.6 48 48v480c0 26.4-21.6 48-48 48zM192 704c0 35.29 28.71 64 64 64h128c35.29 0 64-28.71 64-64v-192h-256v192z" />
<glyph unicode="&#xe990;" glyph-name="unlocked" d="M768 896c105.87 0 192-86.13 192-192v-192h-128v192c0 35.29-28.71 64-64 64h-128c-35.29 0-64-28.71-64-64v-192h16c26.4 0 48-21.6 48-48v-480c0-26.4-21.6-48-48-48h-544c-26.4 0-48 21.6-48 48v480c0 26.4 21.6 48 48 48h400v192c0 105.87 86.13 192 192 192h128z" />
<glyph unicode="&#xe991;" glyph-name="wrench" d="M1002.934 142.124l-460.552 394.76c21.448 40.298 33.618 86.282 33.618 135.116 0 159.058-128.942 288-288 288-29.094 0-57.172-4.332-83.646-12.354l166.39-166.39c24.89-24.89 24.89-65.62 0-90.51l-101.49-101.49c-24.89-24.89-65.62-24.89-90.51 0l-166.39 166.39c-8.022-26.474-12.354-54.552-12.354-83.646 0-159.058 128.942-288 288-288 48.834 0 94.818 12.17 135.116 33.62l394.76-460.552c22.908-26.724 62.016-28.226 86.904-3.338l101.492 101.492c24.888 24.888 23.386 63.994-3.338 86.902z" />
<glyph unicode="&#xe9ce;" glyph-name="eye" d="M512 768c-223.318 0-416.882-130.042-512-320 95.118-189.958 288.682-320 512-320 223.312 0 416.876 130.042 512 320-95.116 189.958-288.688 320-512 320zM764.45 598.296c60.162-38.374 111.142-89.774 149.434-150.296-38.292-60.522-89.274-111.922-149.436-150.296-75.594-48.218-162.89-73.704-252.448-73.704-89.56 0-176.858 25.486-252.452 73.704-60.158 38.372-111.138 89.772-149.432 150.296 38.292 60.524 89.274 111.924 149.434 150.296 3.918 2.5 7.876 4.922 11.86 7.3-9.96-27.328-15.41-56.822-15.41-87.596 0-141.382 114.616-256 256-256 141.382 0 256 114.618 256 256 0 30.774-5.452 60.268-15.408 87.598 3.978-2.378 7.938-4.802 11.858-7.302v0zM512 544c0-53.020-42.98-96-96-96s-96 42.98-96 96 42.98 96 96 96 96-42.982 96-96z" />
<glyph unicode="&#xe9d1;" glyph-name="eye-blocked" d="M945.942 945.942c-18.746 18.744-49.136 18.744-67.882 0l-202.164-202.164c-51.938 15.754-106.948 24.222-163.896 24.222-223.318 0-416.882-130.042-512-320 41.122-82.124 100.648-153.040 173.022-207.096l-158.962-158.962c-18.746-18.746-18.746-49.136 0-67.882 9.372-9.374 21.656-14.060 33.94-14.060s24.568 4.686 33.942 14.058l864 864c18.744 18.746 18.744 49.138 0 67.884zM416 640c42.24 0 78.082-27.294 90.92-65.196l-121.724-121.724c-37.902 12.838-65.196 48.68-65.196 90.92 0 53.020 42.98 96 96 96zM110.116 448c38.292 60.524 89.274 111.924 149.434 150.296 3.918 2.5 7.876 4.922 11.862 7.3-9.962-27.328-15.412-56.822-15.412-87.596 0-54.89 17.286-105.738 46.7-147.418l-60.924-60.924c-52.446 36.842-97.202 83.882-131.66 138.342zM768 518c0 27.166-4.256 53.334-12.102 77.898l-321.808-321.808c24.568-7.842 50.742-12.090 77.91-12.090 141.382 0 256 114.618 256 256zM830.026 670.026l-69.362-69.362c1.264-0.786 2.53-1.568 3.786-2.368 60.162-38.374 111.142-89.774 149.434-150.296-38.292-60.522-89.274-111.922-149.436-150.296-75.594-48.218-162.89-73.704-252.448-73.704-38.664 0-76.902 4.76-113.962 14.040l-76.894-76.894c59.718-21.462 123.95-33.146 190.856-33.146 223.31 0 416.876 130.042 512 320-45.022 89.916-112.118 166.396-193.974 222.026z" />
<glyph unicode="&#xe9df;" glyph-name="happy" d="M512-64c282.77 0 512 229.23 512 512s-229.23 512-512 512-512-229.23-512-512 229.23-512 512-512zM512 864c229.75 0 416-186.25 416-416s-186.25-416-416-416-416 186.25-416 416 186.25 416 416 416zM512 361.24c115.95 0 226.23 30.806 320 84.92-14.574-178.438-153.128-318.16-320-318.16-166.868 0-305.422 139.872-320 318.304 93.77-54.112 204.050-85.064 320-85.064zM256 608c0 53.019 28.654 96 64 96s64-42.981 64-96c0-53.019-28.654-96-64-96s-64 42.981-64 96zM640 608c0 53.019 28.654 96 64 96s64-42.981 64-96c0-53.019-28.654-96-64-96s-64 42.981-64 96z" />
<glyph unicode="&#xea4e;" glyph-name="command" d="M736 64c-88.224 0-160 71.776-160 160v96h-128v-96c0-88.224-71.776-160-160-160s-160 71.776-160 160 71.776 160 160 160h96v128h-96c-88.224 0-160 71.776-160 160s71.776 160 160 160 160-71.776 160-160v-96h128v96c0 88.224 71.776 160 160 160s160-71.776 160-160-71.776-160-160-160h-96v-128h96c88.224 0 160-71.776 160-160s-71.774-160-160-160zM640 320v-96c0-52.934 43.066-96 96-96s96 43.066 96 96-43.066 96-96 96h-96zM288 320c-52.934 0-96-43.066-96-96s43.066-96 96-96 96 43.066 96 96v96h-96zM448 384h128v128h-128v-128zM640 576h96c52.934 0 96 43.066 96 96s-43.066 96-96 96-96-43.066-96-96v-96zM288 768c-52.934 0-96-43.066-96-96s43.066-96 96-96h96v96c0 52.934-43.064 96-96 96z" />
<glyph unicode="&#xea5c;" glyph-name="font2" d="M799.596 943.792c-90.526 0-148.62 16.208-241.848 16.208-301.284 0-441.792-171.584-441.792-345.872 0-102.678 48.64-136.458 144.564-136.458-6.758 14.864-18.914 31.080-18.914 104.034 0 204.010 77.006 263.458 175.636 267.51 0 0-80.918-793.374-315.778-888.542v-24.672h316.594l108.026 512h197.844l44.072 128h-214.908l51.944 246.19c59.446-12.156 117.542-24.316 167.532-24.316 62.148 0 118.894 18.914 149.968 162.126-37.826-12.16-78.362-16.208-122.94-16.208z" />
<glyph unicode="&#xea65;" glyph-name="strikethrough" d="M1024 448v-64h-234.506c27.504-38.51 42.506-82.692 42.506-128 0-70.878-36.66-139.026-100.58-186.964-59.358-44.518-137.284-69.036-219.42-69.036-82.138 0-160.062 24.518-219.42 69.036-63.92 47.938-100.58 116.086-100.58 186.964h128c0-69.382 87.926-128 192-128s192 58.618 192 128c0 69.382-87.926 128-192 128h-512v64h299.518c-2.338 1.654-4.656 3.324-6.938 5.036-63.92 47.94-100.58 116.086-100.58 186.964s36.66 139.024 100.58 186.964c59.358 44.518 137.282 69.036 219.42 69.036 82.136 0 160.062-24.518 219.42-69.036 63.92-47.94 100.58-116.086 100.58-186.964h-128c0 69.382-87.926 128-192 128s-192-58.618-192-128c0-69.382 87.926-128 192-128 78.978 0 154.054-22.678 212.482-64h299.518z" />
<glyph unicode="&#xea67;" glyph-name="sigma" d="M941.606 225.292l44.394 94.708h38l-64-384h-960v74.242l331.546 391.212-331.546 331.546v227h980l44-256h-34.376l-18.72 38.88c-35.318 73.364-61.904 89.12-138.904 89.12h-662l353.056-353.056-297.42-350.944h542.364c116.008 0 146.648 41.578 173.606 97.292z" />
<glyph unicode="&#xea68;" glyph-name="sigma2" d="M941.606 225.292l44.394 94.708h38l-64-384h-960v74.242l331.546 391.212-331.546 331.546v227h980l44-256h-34.376l-18.72 38.88c-35.318 73.364-61.904 89.12-138.904 89.12h-662l353.056-353.056-297.42-350.944h542.364c116.008 0 146.648 41.578 173.606 97.292z" />
<glyph unicode="&#xeade;" glyph-name="libreoffice" d="M534.626 937.372c-12.444 12.444-37.026 22.628-54.626 22.628h-384c-17.6 0-32-14.4-32-32v-960c0-17.6 14.4-32 32-32h768c17.6 0 32 14.4 32 32v576c0 17.6-10.182 42.182-22.626 54.626l-338.748 338.746zM832 0h-704v896h351.158c2.916-0.48 8.408-2.754 10.81-4.478l337.556-337.554c1.722-2.402 3.996-7.894 4.476-10.81v-543.158zM864 960h-192c-17.6 0-21.818-10.182-9.374-22.626l210.746-210.746c12.446-12.446 22.628-8.228 22.628 9.372v192c0 17.6-14.4 32-32 32z" />
<glyph unicode="&#xf00e;" glyph-name="search-plus" horiz-adv-x="951" d="M585.143 493.714v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-128v-128q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v128h-128q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h128v128q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857v-128h128q7.429 0 12.857-5.429t5.429-12.857zM658.286 475.428q0 105.714-75.143 180.857t-180.857 75.143-180.857-75.143-75.143-180.857 75.143-180.857 180.857-75.143 180.857 75.143 75.143 180.857zM950.857 0q0-30.286-21.429-51.714t-51.714-21.429q-30.857 0-51.429 21.714l-196 195.429q-102.286-70.857-228-70.857-81.714 0-156.286 31.714t-128.571 85.714-85.714 128.571-31.714 156.286 31.714 156.286 85.714 128.571 128.571 85.714 156.286 31.714 156.286-31.714 128.571-85.714 85.714-128.571 31.714-156.286q0-125.714-70.857-228l196-196q21.143-21.143 21.143-51.429z" />
<glyph unicode="&#xf010;" glyph-name="search-minus" horiz-adv-x="951" d="M585.143 493.714v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-329.143q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h329.143q7.429 0 12.857-5.429t5.429-12.857zM658.286 475.428q0 105.714-75.143 180.857t-180.857 75.143-180.857-75.143-75.143-180.857 75.143-180.857 180.857-75.143 180.857 75.143 75.143 180.857zM950.857 0q0-30.286-21.429-51.714t-51.714-21.429q-30.857 0-51.429 21.714l-196 195.429q-102.286-70.857-228-70.857-81.714 0-156.286 31.714t-128.571 85.714-85.714 128.571-31.714 156.286 31.714 156.286 85.714 128.571 128.571 85.714 156.286 31.714 156.286-31.714 128.571-85.714 85.714-128.571 31.714-156.286q0-125.714-70.857-228l196-196q21.143-21.143 21.143-51.429z" />
<glyph unicode="&#xf014;" glyph-name="trash-o" horiz-adv-x="805" d="M292.571 530.286v-329.143q0-8-5.143-13.143t-13.143-5.143h-36.571q-8 0-13.143 5.143t-5.143 13.143v329.143q0 8 5.143 13.143t13.143 5.143h36.571q8 0 13.143-5.143t5.143-13.143zM438.857 530.286v-329.143q0-8-5.143-13.143t-13.143-5.143h-36.571q-8 0-13.143 5.143t-5.143 13.143v329.143q0 8 5.143 13.143t13.143 5.143h36.571q8 0 13.143-5.143t5.143-13.143zM585.143 530.286v-329.143q0-8-5.143-13.143t-13.143-5.143h-36.571q-8 0-13.143 5.143t-5.143 13.143v329.143q0 8 5.143 13.143t13.143 5.143h36.571q8 0 13.143-5.143t5.143-13.143zM658.286 116.571v541.714h-512v-541.714q0-12.571 4-23.143t8.286-15.429 6-4.857h475.429q1.714 0 6 4.857t8.286 15.429 4 23.143zM274.286 731.428h256l-27.429 66.857q-4 5.143-9.714 6.286h-181.143q-5.714-1.143-9.714-6.286zM804.571 713.143v-36.571q0-8-5.143-13.143t-13.143-5.143h-54.857v-541.714q0-47.429-26.857-82t-64.571-34.571h-475.429q-37.714 0-64.571 33.429t-26.857 80.857v544h-54.857q-8 0-13.143 5.143t-5.143 13.143v36.571q0 8 5.143 13.143t13.143 5.143h176.571l40 95.429q8.571 21.143 30.857 36t45.143 14.857h182.857q22.857 0 45.143-14.857t30.857-36l40-95.429h176.571q8 0 13.143-5.143t5.143-13.143z" />
<glyph unicode="&#xf039;" glyph-name="align-justify" d="M1024 182.857v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-950.857q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h950.857q14.857 0 25.714-10.857t10.857-25.714zM1024 402.286v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-950.857q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h950.857q14.857 0 25.714-10.857t10.857-25.714zM1024 621.714v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-950.857q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h950.857q14.857 0 25.714-10.857t10.857-25.714zM1024 841.143v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-950.857q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h950.857q14.857 0 25.714-10.857t10.857-25.714z" />
<glyph unicode="&#xf07d;" glyph-name="arrows-v" horiz-adv-x="439" d="M402.286 768q0-14.857-10.857-25.714t-25.714-10.857h-73.143v-585.143h73.143q14.857 0 25.714-10.857t10.857-25.714-10.857-25.714l-146.286-146.286q-10.857-10.857-25.714-10.857t-25.714 10.857l-146.286 146.286q-10.857 10.857-10.857 25.714t10.857 25.714 25.714 10.857h73.143v585.143h-73.143q-14.857 0-25.714 10.857t-10.857 25.714 10.857 25.714l146.286 146.286q10.857 10.857 25.714 10.857t25.714-10.857l146.286-146.286q10.857-10.857 10.857-25.714z" />
<glyph unicode="&#xf108;" glyph-name="desktop" horiz-adv-x="1097" d="M1024 384v475.429q0 7.429-5.429 12.857t-12.857 5.429h-914.286q-7.429 0-12.857-5.429t-5.429-12.857v-475.429q0-7.429 5.429-12.857t12.857-5.429h914.286q7.429 0 12.857 5.429t5.429 12.857zM1097.143 859.428v-621.714q0-37.714-26.857-64.571t-64.571-26.857h-310.857q0-21.143 9.143-44.286t18.286-40.571 9.143-24.857q0-14.857-10.857-25.714t-25.714-10.857h-292.571q-14.857 0-25.714 10.857t-10.857 25.714q0 8 9.143 25.143t18.286 40 9.143 44.571h-310.857q-37.714 0-64.571 26.857t-26.857 64.571v621.714q0 37.714 26.857 64.571t64.571 26.857h914.286q37.714 0 64.571-26.857t26.857-64.571z" />
<glyph unicode="&#xf10a;" glyph-name="tablet" horiz-adv-x="658" d="M365.714 146.286q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM585.143 237.714v548.571q0 7.429-5.429 12.857t-12.857 5.429h-475.429q-7.429 0-12.857-5.429t-5.429-12.857v-548.571q0-7.429 5.429-12.857t12.857-5.429h475.429q7.429 0 12.857 5.429t5.429 12.857zM658.286 786.286v-621.714q0-37.714-26.857-64.571t-64.571-26.857h-475.429q-37.714 0-64.571 26.857t-26.857 64.571v621.714q0 37.714 26.857 64.571t64.571 26.857h475.429q37.714 0 64.571-26.857t26.857-64.571z" />
</font></defs></svg>

Before

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -1,47 +0,0 @@
(function () {
// 获取 wangEditor 构造函数和 jquery
var E = window.wangEditor;
var $ = window.jQuery;
// 用 createMenu 方法创建菜单
E.createMenu(function (check) {
// 定义菜单id不要和其他菜单id重复。编辑器自带的所有菜单id可通过『参数配置-自定义菜单』一节查看
var menuId = 'attach';
// check将检查菜单配置『参数配置-自定义菜单』一节描述中是否该菜单id如果没有则忽略下面的代码。
if (!check(menuId)) {
return;
}
// this 指向 editor 对象自身
var editor = this;
// 创建 menu 对象
var menu = new E.Menu({
editor: editor, // 编辑器对象
id: menuId, // 菜单id
title: '', // 菜单标题
// 正常状态和选中状态下的dom对象样式需要自定义
$domNormal: $('<a href="#" tabindex="-1"><i class="fa fa-paperclip" aria-hidden="true" name="release"></i></a>'),
$domSelected: $('<a href="#" tabindex="-1" class="selected"><i class="fa fa-paperclip" aria-hidden="true" name="release"></i></a>')
});
// 菜单正常状态下,点击将触发该事件
menu.clickEvent = function (e) {
$("#uploadAttachModal").modal("show");
};
// 菜单选中状态下,点击将触发该事件
menu.clickEventSelected = function (e) {
};
// 增加到editor对象中
editor.menus[menuId] = menu;
});
})();

View File

@ -1,47 +0,0 @@
(function () {
// 获取 wangEditor 构造函数和 jquery
var E = window.wangEditor;
var $ = window.jQuery;
// 用 createMenu 方法创建菜单
E.createMenu(function (check) {
// 定义菜单id不要和其他菜单id重复。编辑器自带的所有菜单id可通过『参数配置-自定义菜单』一节查看
var menuId = 'history';
// check将检查菜单配置『参数配置-自定义菜单』一节描述中是否该菜单id如果没有则忽略下面的代码。
if (!check(menuId)) {
return;
}
// this 指向 editor 对象自身
var editor = this;
// 创建 menu 对象
var menu = new E.Menu({
editor: editor, // 编辑器对象
id: menuId, // 菜单id
title: '', // 菜单标题
// 正常状态和选中状态下的dom对象样式需要自定义
$domNormal: $('<a href="#" tabindex="-1"><i class="fa fa-history" aria-hidden="true" name="history"></i></a>'),
$domSelected: $('<a href="#" tabindex="-1" class="selected"><i class="fa fa-history" aria-hidden="true" name="history"></i></a>')
});
// 菜单正常状态下,点击将触发该事件
menu.clickEvent = function (e) {
window.documentHistory();
};
// 菜单选中状态下,点击将触发该事件
menu.clickEventSelected = function (e) {
};
// 增加到editor对象中
editor.menus[menuId] = menu;
});
})();

View File

@ -1,47 +0,0 @@
(function () {
// 获取 wangEditor 构造函数和 jquery
var E = window.wangEditor;
var $ = window.jQuery;
// 用 createMenu 方法创建菜单
E.createMenu(function (check) {
// 定义菜单id不要和其他菜单id重复。编辑器自带的所有菜单id可通过『参数配置-自定义菜单』一节查看
var menuId = 'release';
// check将检查菜单配置『参数配置-自定义菜单』一节描述中是否该菜单id如果没有则忽略下面的代码。
if (!check(menuId)) {
return;
}
// this 指向 editor 对象自身
var editor = this;
// 创建 menu 对象
var menu = new E.Menu({
editor: editor, // 编辑器对象
id: menuId, // 菜单id
title: '', // 菜单标题
// 正常状态和选中状态下的dom对象样式需要自定义
$domNormal: $('<a href="#" tabindex="-1"><i class="fa fa-cloud-upload" aria-hidden="true" name="release"></i></a>'),
$domSelected: $('<a href="#" tabindex="-1" class="selected"><i class="fa fa-cloud-upload" aria-hidden="true" name="release"></i></a>')
});
// 菜单正常状态下,点击将触发该事件
menu.clickEvent = function (e) {
window.releaseBook();
};
// 菜单选中状态下,点击将触发该事件
menu.clickEventSelected = function (e) {
};
// 增加到editor对象中
editor.menus[menuId] = menu;
});
})();

View File

@ -1,47 +0,0 @@
(function () {
// 获取 wangEditor 构造函数和 jquery
var E = window.wangEditor;
var $ = window.jQuery;
// 用 createMenu 方法创建菜单
E.createMenu(function (check) {
// 定义菜单id不要和其他菜单id重复。编辑器自带的所有菜单id可通过『参数配置-自定义菜单』一节查看
var menuId = 'save';
// check将检查菜单配置『参数配置-自定义菜单』一节描述中是否该菜单id如果没有则忽略下面的代码。
if (!check(menuId)) {
return;
}
// this 指向 editor 对象自身
var editor = this;
// 创建 menu 对象
var menu = new E.Menu({
editor: editor, // 编辑器对象
id: menuId, // 菜单id
title: '', // 菜单标题
// 正常状态和选中状态下的dom对象样式需要自定义
$domNormal: $('<a href="#" tabindex="-1"><i class="fa fa-save" aria-hidden="true" name="save"></i></a>'),
$domSelected: $('<a href="#" tabindex="-1" class="selected"><i class="fa fa-save" aria-hidden="true" name="save"></i></a>')
});
// 菜单正常状态下,点击将触发该事件
menu.clickEvent = function (e) {
window.saveDocument();
};
// 菜单选中状态下,点击将触发该事件
menu.clickEventSelected = function (e) {
};
// 增加到editor对象中
editor.menus[menuId] = menu;
});
})();

View File

@ -0,0 +1,14 @@
/**
* @description
* @author wangfupeng
*/
import './assets/style/common.less';
import './assets/style/icon.less';
import './assets/style/menus.less';
import './assets/style/text.less';
import './assets/style/panel.less';
import './assets/style/droplist.less';
import './utils/polyfill';
import Editor from './editor/index';
export * from './menus/menu-constructors/index';
export default Editor;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -89,7 +89,10 @@
<input type="radio"{{if eq .Model.Editor "markdown"}} checked{{end}} name="editor" value="markdown"> Markdown {{i18n $.Lang "blog.text_editor"}}
</label>
<label class="radio-inline">
<input type="radio"{{if eq .Model.Editor "html"}} checked{{end}} name="editor" value="html"> Html {{i18n $.Lang "blog.text_editor"}}
<input type="radio"{{if eq .Model.Editor "new_html"}} checked{{end}} name="editor" value="new_html"> Html {{i18n $.Lang "blog.text_editor"}}(Quill)
</label>
<label class="radio-inline">
<input type="radio"{{if eq .Model.Editor "html"}} checked{{end}} name="editor" value="html"> Html {{i18n $.Lang "blog.text_editor"}}(wangEditor)
</label>
</div>
</div>

View File

@ -3,7 +3,7 @@
<html lang="en">
<head>
<meta charset="utf-8" />
<title>i18n.Tr(c.Lang, "doc.comparision") - Powered by MinDoc</title>
<title>{{i18n .Lang "doc.comparision"}} - Powered by MinDoc</title>
<link rel="shortcut icon" href="{{cdnimg "/favicon.ico"}}" />
<link href="{{cdncss "/static/fonts/notosans.css"}}" rel='stylesheet' type='text/css' />
<link type='text/css' rel='stylesheet' href="{{cdncss "/static/mergely/editor/lib/wicked-ui.css"}}" />
@ -29,19 +29,19 @@
<body style="visibility:hidden">
<!-- toolbar -->
<ul id="toolbar">
<li id="tb-file-save" data-icon="icon-save" title="i18n.Tr(c.Lang, "common.save")">i18n.Tr(c.Lang, "doc.save_merge")</li>
<li id="tb-file-save" data-icon="icon-save" title="{{i18n .Lang "common.save"}}">{{i18n .Lang "doc.save_merge"}}</li>
<li class="separator"></li>
<li id="tb-view-change-prev" data-icon="icon-arrow-up" title="i18n.Tr(c.Lang, "doc.prev_diff")">i18n.Tr(c.Lang, "doc.prev_diff")</li>
<li id="tb-view-change-next" data-icon="icon-arrow-down" title="i18n.Tr(c.Lang, "doc.next_diff")">i18n.Tr(c.Lang, "doc.next_diff")</li>
<li id="tb-view-change-prev" data-icon="icon-arrow-up" title="{{i18n .Lang "doc.prev_diff"}}">{{i18n .Lang "doc.prev_diff"}}</li>
<li id="tb-view-change-next" data-icon="icon-arrow-down" title="{{i18n .Lang "doc.next_diff"}}">{{i18n .Lang "doc.next_diff"}}</li>
<li class="separator"></li>
<li id="tb-edit-right-merge-left" data-icon="icon-arrow-left-v" title="i18n.Tr(c.Lang, "doc.merge_to_left")">i18n.Tr(c.Lang, "doc.merge_to_left")</li>
<li id="tb-edit-left-merge-right" data-icon="icon-arrow-right-v" title="i18n.Tr(c.Lang, "doc.merge_to_right")">i18n.Tr(c.Lang, "doc.merge_to_right")</li>
<li id="tb-view-swap" data-icon="icon-swap" title="i18n.Tr(c.Lang, "doc.exchange_left_right")">i18n.Tr(c.Lang, "doc.exchange_left_right")</li>
<li id="tb-edit-right-merge-left" data-icon="icon-arrow-left-v" title="{{i18n .Lang "doc.merge_to_left"}}">{{i18n .Lang "doc.merge_to_left"}}</li>
<li id="tb-edit-left-merge-right" data-icon="icon-arrow-right-v" title="{{i18n .Lang "doc.merge_to_right"}}">{{i18n .Lang "doc.merge_to_right"}}</li>
<li id="tb-view-swap" data-icon="icon-swap" title="{{i18n .Lang "doc.exchange_left_right"}}">{{i18n .Lang "doc.exchange_left_right"}}</li>
</ul>
<!-- find -->
<div class="find">
<input type="text" placeholder="i18n.Tr(c.Lang, "message.keyword_placeholder")"/>
<input type="text" placeholder="{{i18n .Lang "message.keyword_placeholder"}}"/>
<button class="find-prev"><span class="icon icon-arrow-up"></span></button>
<button class="find-next"><span class="icon icon-arrow-down"></span></button>
<button class="find-close"><span class="icon icon-x-mark"></span></button>

View File

@ -46,15 +46,15 @@
<td>{{$item.ModifyName}}</td>
<td>{{$item.Version}}</td>
<td>
<button class="btn btn-danger btn-sm delete-btn" data-id="{{$item.HistoryId}}" data-loading-text="{{i18n .Lang "message.processing"}}">
{{i18n .Lang "doc.delete"}}
<button class="btn btn-danger btn-sm delete-btn" data-id="{{$item.HistoryId}}" data-loading-text="{{i18n $.Lang "message.processing"}}">
{{i18n $.Lang "doc.delete"}}
</button>
<button class="btn btn-success btn-sm restore-btn" data-id="{{$item.HistoryId}}" data-loading-text="{{i18n .Lang "message.processing"}}">
{{i18n .Lang "doc.recover"}}
<button class="btn btn-success btn-sm restore-btn" data-id="{{$item.HistoryId}}" data-loading-text="{{i18n $.Lang "message.processing"}}">
{{i18n $.Lang "doc.recover"}}
</button>
{{if eq $.Model.Editor "markdown"}}
<button class="btn btn-success btn-sm compare-btn" data-id="{{$item.HistoryId}}">
{{i18n .Lang "doc.merge"}}
{{i18n $.Lang "doc.merge"}}
</button>
{{end}}
</td>

View File

@ -6,6 +6,11 @@
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>编辑文档 - Powered by MinDoc</title>
<style type="text/css">
.w-e-menu.selected > i {
color: #44B036 !important;
}
</style>
<script type="text/javascript">
window.editor = null;
@ -27,7 +32,7 @@
<link href="{{cdncss "/static/bootstrap/css/bootstrap.min.css"}}" rel="stylesheet">
<link href="{{cdncss "/static/font-awesome/css/font-awesome.min.css"}}" rel="stylesheet">
<link href="{{cdncss "/static/jstree/3.3.4/themes/default/style.min.css"}}" rel="stylesheet">
<link href="{{cdncss "/static/wangEditor/css/wangEditor.min.css"}}" rel="stylesheet">
<!-- <link href="{{cdncss "/static/wangEditor/css/wangEditor.min.css"}}" rel="stylesheet"> -->
<link href="{{cdncss (print "/static/editor.md/lib/highlight/styles/" .HighlightStyle ".css") "version"}}" rel="stylesheet">
<link href="{{cdncss "/static/webuploader/webuploader.css"}}" rel="stylesheet">
@ -74,6 +79,9 @@
<div class="manual-category" id="manualCategory" style="top: 0;">
<div class="manual-nav">
<div class="nav-item active"><i class="fa fa-bars" aria-hidden="true"></i> 文档</div>
<div class="nav-plus pull-right" data-toggle="tooltip" data-title="返回" data-direction="right">
<a style="color: #999999;" href="{{urlfor "BookController.Dashboard" ":key" .Model.Identify}}" target="_blank"><i class="fa fa-chevron-left" aria-hidden="true"></i></a>
</div>
<div class="nav-plus pull-right" id="btnAddDocument" data-toggle="tooltip" data-title="创建文档" data-direction="right"><i class="fa fa-plus" aria-hidden="true"></i></div>
<div class="clearfix"></div>
</div>
@ -86,14 +94,14 @@
<div id="htmlEditor" class="manual-editormd-active" style="height: 100%"></div>
</div>
<div class="manual-editor-status">
<div id="attachInfo" class="item">0 个附件</div>
<div id="attachInfo" class="item" style="display: inline-block; padding: 0 3em;">0 个附件</div>
</div>
</div>
</div>
</div>
<!-- Modal -->
<div class="modal fade" id="addDocumentModal" tabindex="-1" role="dialog" aria-labelledby="addDocumentModalLabel">
<div class="modal fade" id="addDocumentModal" tabindex="-1" style="z-index: 10001 !important;" role="dialog" aria-labelledby="addDocumentModalLabel">
<div class="modal-dialog" role="document">
<form method="post" action="{{urlfor "DocumentController.Create" ":key" .Model.Identify}}" id="addDocumentForm" class="form-horizontal">
<input type="hidden" name="identify" value="{{.Model.Identify}}">
@ -129,7 +137,7 @@
</form>
</div>
</div>
<div class="modal fade" id="uploadAttachModal" tabindex="-1" role="dialog" aria-labelledby="uploadAttachModalLabel">
<div class="modal fade" id="uploadAttachModal" tabindex="-1" style="z-index: 10001 !important;" role="dialog" aria-labelledby="uploadAttachModalLabel">
<div class="modal-dialog" role="document">
<form method="post" action="{{urlfor "DocumentController.Create" ":key" .Model.Identify}}" id="addDocumentForm" class="form-horizontal">
<input type="hidden" name="identify" value="{{.Model.Identify}}">
@ -188,11 +196,12 @@
<script src="{{cdnjs "/static/vuejs/vue.min.js"}}" type="text/javascript"></script>
<script src="{{cdnjs "/static/jstree/3.3.4/jstree.min.js"}}" type="text/javascript"></script>
<script src="{{cdnjs "/static/webuploader/webuploader.min.js"}}" type="text/javascript"></script>
<script src="{{cdnjs "/static/wangEditor/js/wangEditor.min.js"}}" type="text/javascript"></script>
<script src="{{cdnjs "/static/wangEditor/plugins/save-menu.js"}}" type="text/javascript"></script>
<script src="{{cdnjs "/static/wangEditor/plugins/release-menu.js"}}" type="text/javascript"></script>
<script src="{{cdnjs "/static/wangEditor/plugins/attach-menu.js"}}" type="text/javascript"></script>
<script src="{{cdnjs "/static/wangEditor/plugins/history-menu.js"}}" type="text/javascript"></script>
<script src="{{cdnjs "/static/js/class2browser.js"}}" type="text/javascript"></script>
<script src="{{cdnjs "/static/wangEditor/wangEditor.min.js"}}" type="text/javascript"></script>
<script src="{{cdnjs "/static/js/wangEditor-plugins/save-menu.js"}}" type="text/javascript"></script>
<script src="{{cdnjs "/static/js/wangEditor-plugins/release-menu.js"}}" type="text/javascript"></script>
<script src="{{cdnjs "/static/js/wangEditor-plugins/attach-menu.js"}}" type="text/javascript"></script>
<script src="{{cdnjs "/static/js/wangEditor-plugins/history-menu.js"}}" type="text/javascript"></script>
<script src="{{cdnjs "/static/layer/layer.js"}}" type="text/javascript" ></script>
<script src="{{cdnjs "/static/to-markdown/dist/to-markdown.js"}}" type="text/javascript"></script>
<script src="{{cdnjs "/static/js/jquery.form.js"}}" type="text/javascript"></script>