mirror of
https://github.com/mindoc-org/mindoc.git
synced 2026-02-27 17:03:57 +08:00
feat:通过mermaid插件实现甘特图支持
This commit is contained in:
@@ -29,6 +29,7 @@
|
|||||||
"jquery", "marked",
|
"jquery", "marked",
|
||||||
//"prettify",
|
//"prettify",
|
||||||
"highlight/highlight",
|
"highlight/highlight",
|
||||||
|
"mermaid/mermaid",
|
||||||
"katex", "raphael", "underscore", "flowchart", "jqueryflowchart", "sequenceDiagram",
|
"katex", "raphael", "underscore", "flowchart", "jqueryflowchart", "sequenceDiagram",
|
||||||
|
|
||||||
"codemirror/lib/codemirror",
|
"codemirror/lib/codemirror",
|
||||||
@@ -240,6 +241,9 @@
|
|||||||
tex : false, // TeX(LaTeX), based on KaTeX
|
tex : false, // TeX(LaTeX), based on KaTeX
|
||||||
flowChart : false, // flowChart.js only support IE9+
|
flowChart : false, // flowChart.js only support IE9+
|
||||||
sequenceDiagram : false, // sequenceDiagram.js only support IE9+
|
sequenceDiagram : false, // sequenceDiagram.js only support IE9+
|
||||||
|
mermaidGantt : false, //mermaid/mermaid.js
|
||||||
|
mermaidSequence : false,
|
||||||
|
mermaidFlowChat : false,
|
||||||
previewCodeHighlight : true,
|
previewCodeHighlight : true,
|
||||||
highlightStyle : "github",
|
highlightStyle : "github",
|
||||||
|
|
||||||
@@ -578,7 +582,12 @@
|
|||||||
|
|
||||||
return ;
|
return ;
|
||||||
}
|
}
|
||||||
|
if (settings.mermaidGantt || settings.mermaidFlowChat || settings.mermaidSequence) {
|
||||||
|
console.log("aa")
|
||||||
|
editormd.loadScript(loadPath + "mermaid/mermaid.min", function () {
|
||||||
|
_this.loadedDisplay();
|
||||||
|
});
|
||||||
|
}
|
||||||
if (settings.flowChart || settings.sequenceDiagram)
|
if (settings.flowChart || settings.sequenceDiagram)
|
||||||
{
|
{
|
||||||
editormd.loadScript(loadPath + "raphael.min", function() {
|
editormd.loadScript(loadPath + "raphael.min", function() {
|
||||||
@@ -3704,6 +3713,8 @@
|
|||||||
if (lang === "seq" || lang === "sequence")
|
if (lang === "seq" || lang === "sequence")
|
||||||
{
|
{
|
||||||
return "<div class=\"sequence-diagram\">" + code + "</div>";
|
return "<div class=\"sequence-diagram\">" + code + "</div>";
|
||||||
|
} else if (lang === "gantt"){
|
||||||
|
return "<div class=\"mermain-gantt\""> + code + "</div>"
|
||||||
}
|
}
|
||||||
else if ( lang === "flow")
|
else if ( lang === "flow")
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -101,7 +101,7 @@
|
|||||||
height : "100%",
|
height : "100%",
|
||||||
path : "./lib/", // Dependents module file directory
|
path : "./lib/", // Dependents module file directory
|
||||||
pluginPath : "", // If this empty, default use settings.path + "../plugins/"
|
pluginPath : "", // If this empty, default use settings.path + "../plugins/"
|
||||||
delay : 300, // Delay parse markdown to html, Uint : ms
|
delay : 500, // Delay parse markdown to html, Uint : ms
|
||||||
autoLoadModules : true, // Automatic load dependent module files
|
autoLoadModules : true, // Automatic load dependent module files
|
||||||
watch : true,
|
watch : true,
|
||||||
placeholder : "Enjoy Markdown! coding now...",
|
placeholder : "Enjoy Markdown! coding now...",
|
||||||
@@ -168,6 +168,7 @@
|
|||||||
tex : false, // TeX(LaTeX), based on KaTeX
|
tex : false, // TeX(LaTeX), based on KaTeX
|
||||||
flowChart : false, // flowChart.js only support IE9+
|
flowChart : false, // flowChart.js only support IE9+
|
||||||
sequenceDiagram : false, // sequenceDiagram.js only support IE9+
|
sequenceDiagram : false, // sequenceDiagram.js only support IE9+
|
||||||
|
mermaid : true,
|
||||||
previewCodeHighlight : true,
|
previewCodeHighlight : true,
|
||||||
|
|
||||||
toolbar : true, // show/hide toolbar
|
toolbar : true, // show/hide toolbar
|
||||||
@@ -505,7 +506,47 @@
|
|||||||
|
|
||||||
return ;
|
return ;
|
||||||
}
|
}
|
||||||
|
if (settings.mermaid) {
|
||||||
|
editormd.loadCSS(loadPath + "mermaid/mermaid", function () {
|
||||||
|
editormd.loadScript(loadPath + "mermaid/mermaid.min", function () {
|
||||||
|
window.mermaid.initialize({
|
||||||
|
theme: 'default',
|
||||||
|
startOnLoad:true,
|
||||||
|
cloneCssStyles: true,
|
||||||
|
flowchart: {
|
||||||
|
htmlLabels: false,
|
||||||
|
useMaxWidth:false
|
||||||
|
},
|
||||||
|
});
|
||||||
|
mermaid.ganttConfig = {
|
||||||
|
axisFormatter: [
|
||||||
|
// Within a day
|
||||||
|
['%I:%M', function (d) {
|
||||||
|
return d.getHours();
|
||||||
|
}],
|
||||||
|
// Monday a week
|
||||||
|
['%m/%d', function (d) { // redefine date here as '%m/%d'instead of 'w. %U', search mermaid.js
|
||||||
|
return d.getDay() == 1;
|
||||||
|
}],
|
||||||
|
// Day within a week (not monday)
|
||||||
|
['%a %d', function (d) {
|
||||||
|
return d.getDay() && d.getDate() != 1;
|
||||||
|
}],
|
||||||
|
// within a month
|
||||||
|
['%b %d', function (d) {
|
||||||
|
return d.getDate() != 1;
|
||||||
|
}],
|
||||||
|
// Month
|
||||||
|
['%m-%y', function (d) {
|
||||||
|
return d.getMonth();
|
||||||
|
}],[ "%m-%Y", function () {
|
||||||
|
return d.getFullYear();
|
||||||
|
}]]
|
||||||
|
};
|
||||||
|
_this.loadedDisplay();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
if (settings.flowChart || settings.sequenceDiagram)
|
if (settings.flowChart || settings.sequenceDiagram)
|
||||||
{
|
{
|
||||||
editormd.loadScript(loadPath + "raphael.min", function() {
|
editormd.loadScript(loadPath + "raphael.min", function() {
|
||||||
@@ -1530,6 +1571,12 @@
|
|||||||
if (editormd.isIE8) {
|
if (editormd.isIE8) {
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
if (settings.mermaid) {
|
||||||
|
var mermaid = previewContainer.find(".lang-mermaid");
|
||||||
|
if (mermaid) {
|
||||||
|
window.mermaid.init(void 0, mermaid.removeClass("hide"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (settings.flowChart) {
|
if (settings.flowChart) {
|
||||||
if (flowchartTimer === null) {
|
if (flowchartTimer === null) {
|
||||||
@@ -1539,7 +1586,7 @@
|
|||||||
previewContainer.find(".flowchart").flowChart();
|
previewContainer.find(".flowchart").flowChart();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (settings.sequenceDiagram) {
|
if (settings.sequence) {
|
||||||
previewContainer.find(".sequence-diagram").sequenceDiagram({theme: "simple"});
|
previewContainer.find(".sequence-diagram").sequenceDiagram({theme: "simple"});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2006,6 +2053,7 @@
|
|||||||
flowChart : settings.flowChart,
|
flowChart : settings.flowChart,
|
||||||
sequenceDiagram : settings.sequenceDiagram,
|
sequenceDiagram : settings.sequenceDiagram,
|
||||||
previewCodeHighlight : settings.previewCodeHighlight,
|
previewCodeHighlight : settings.previewCodeHighlight,
|
||||||
|
mermaid : settings.mermaid,
|
||||||
};
|
};
|
||||||
|
|
||||||
var markedOptions = this.markedOptions = {
|
var markedOptions = this.markedOptions = {
|
||||||
@@ -2086,7 +2134,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (settings.flowChart || settings.sequenceDiagram)
|
if (settings.flowChart || settings.sequenceDiagram || settings.mermaid)
|
||||||
{
|
{
|
||||||
flowchartTimer = setTimeout(function(){
|
flowchartTimer = setTimeout(function(){
|
||||||
clearTimeout(flowchartTimer);
|
clearTimeout(flowchartTimer);
|
||||||
@@ -3402,6 +3450,7 @@
|
|||||||
tex : false, // TeX(LaTeX), based on KaTeX
|
tex : false, // TeX(LaTeX), based on KaTeX
|
||||||
flowChart : false, // flowChart.js only support IE9+
|
flowChart : false, // flowChart.js only support IE9+
|
||||||
sequenceDiagram : false, // sequenceDiagram.js only support IE9+
|
sequenceDiagram : false, // sequenceDiagram.js only support IE9+
|
||||||
|
mermaid : true,
|
||||||
};
|
};
|
||||||
|
|
||||||
var settings = $.extend(defaults, options || {});
|
var settings = $.extend(defaults, options || {});
|
||||||
@@ -3631,6 +3680,17 @@
|
|||||||
{
|
{
|
||||||
return "<div class=\"sequence-diagram\">" + code + "</div>";
|
return "<div class=\"sequence-diagram\">" + code + "</div>";
|
||||||
}
|
}
|
||||||
|
else if (lang === "mermaid"){
|
||||||
|
var $chars = 'ABCDEFGHJKLMNOPQRSTUVWXYZabcdefhijlkmnopqrstuvwxyz012345678';
|
||||||
|
|
||||||
|
var maxPos = $chars.length;
|
||||||
|
var id = '';
|
||||||
|
for (var i = 0; i < 4; i++) {
|
||||||
|
id += $chars.charAt(Math.floor(Math.random() * maxPos));
|
||||||
|
}
|
||||||
|
|
||||||
|
return "<div class=\"lang-mermaid hide\" data-anchor-id=\""+id+"\">" + code + "</div>";
|
||||||
|
}
|
||||||
else if ( lang === "flow")
|
else if ( lang === "flow")
|
||||||
{
|
{
|
||||||
return "<div class=\"flowchart\">" + code + "</div>";
|
return "<div class=\"flowchart\">" + code + "</div>";
|
||||||
@@ -3919,7 +3979,8 @@
|
|||||||
emoji : false,
|
emoji : false,
|
||||||
flowChart : false,
|
flowChart : false,
|
||||||
sequenceDiagram : false,
|
sequenceDiagram : false,
|
||||||
previewCodeHighlight : true
|
previewCodeHighlight : true,
|
||||||
|
mermaid : true,
|
||||||
};
|
};
|
||||||
|
|
||||||
editormd.$marked = marked;
|
editormd.$marked = marked;
|
||||||
@@ -3949,6 +4010,7 @@
|
|||||||
emailLink : settings.emailLink, // for mail address auto link
|
emailLink : settings.emailLink, // for mail address auto link
|
||||||
flowChart : settings.flowChart,
|
flowChart : settings.flowChart,
|
||||||
sequenceDiagram : settings.sequenceDiagram,
|
sequenceDiagram : settings.sequenceDiagram,
|
||||||
|
mermaid : settings.mermaid,
|
||||||
previewCodeHighlight : settings.previewCodeHighlight,
|
previewCodeHighlight : settings.previewCodeHighlight,
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -4014,6 +4076,9 @@
|
|||||||
if (settings.sequenceDiagram) {
|
if (settings.sequenceDiagram) {
|
||||||
div.find(".sequence-diagram").sequenceDiagram({theme: "simple"});
|
div.find(".sequence-diagram").sequenceDiagram({theme: "simple"});
|
||||||
}
|
}
|
||||||
|
if (settings.mermaid) {
|
||||||
|
window.mermaid.init(void 0, div.find(".lang-mermaid"));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (settings.tex)
|
if (settings.tex)
|
||||||
|
|||||||
Executable
+273
@@ -0,0 +1,273 @@
|
|||||||
|
/* Flowchart variables */
|
||||||
|
/* Sequence Diagram variables */
|
||||||
|
/* Gantt chart variables */
|
||||||
|
.mermaid .label {
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
.node rect,
|
||||||
|
.node circle,
|
||||||
|
.node ellipse,
|
||||||
|
.node polygon {
|
||||||
|
fill: #ECECFF;
|
||||||
|
stroke: #CCCCFF;
|
||||||
|
stroke-width: 1px;
|
||||||
|
}
|
||||||
|
.edgePath .path {
|
||||||
|
stroke: #333333;
|
||||||
|
}
|
||||||
|
.edgeLabel {
|
||||||
|
background-color: #e8e8e8;
|
||||||
|
}
|
||||||
|
.cluster rect {
|
||||||
|
fill: #ffffde !important;
|
||||||
|
rx: 4 !important;
|
||||||
|
stroke: #aaaa33 !important;
|
||||||
|
stroke-width: 1px !important;
|
||||||
|
}
|
||||||
|
.cluster text {
|
||||||
|
fill: #333;
|
||||||
|
}
|
||||||
|
.actor {
|
||||||
|
stroke: #CCCCFF;
|
||||||
|
fill: #ECECFF;
|
||||||
|
}
|
||||||
|
text.actor {
|
||||||
|
fill: black;
|
||||||
|
stroke: none;
|
||||||
|
}
|
||||||
|
.actor-line {
|
||||||
|
stroke: grey;
|
||||||
|
}
|
||||||
|
.messageLine0 {
|
||||||
|
stroke-width: 1.5;
|
||||||
|
stroke-dasharray: "2 2";
|
||||||
|
marker-end: "url(#arrowhead)";
|
||||||
|
stroke: #333;
|
||||||
|
}
|
||||||
|
.messageLine1 {
|
||||||
|
stroke-width: 1.5;
|
||||||
|
stroke-dasharray: "2 2";
|
||||||
|
stroke: #333;
|
||||||
|
}
|
||||||
|
#arrowhead {
|
||||||
|
fill: #333;
|
||||||
|
}
|
||||||
|
#crosshead path {
|
||||||
|
fill: #333 !important;
|
||||||
|
stroke: #333 !important;
|
||||||
|
}
|
||||||
|
.messageText {
|
||||||
|
fill: #333;
|
||||||
|
stroke: none;
|
||||||
|
}
|
||||||
|
.labelBox {
|
||||||
|
stroke: #CCCCFF;
|
||||||
|
fill: #ECECFF;
|
||||||
|
}
|
||||||
|
.labelText {
|
||||||
|
fill: black;
|
||||||
|
stroke: none;
|
||||||
|
}
|
||||||
|
.loopText {
|
||||||
|
fill: black;
|
||||||
|
stroke: none;
|
||||||
|
}
|
||||||
|
.loopLine {
|
||||||
|
stroke-width: 2;
|
||||||
|
stroke-dasharray: "2 2";
|
||||||
|
marker-end: "url(#arrowhead)";
|
||||||
|
stroke: #CCCCFF;
|
||||||
|
}
|
||||||
|
.note {
|
||||||
|
stroke: #aaaa33;
|
||||||
|
fill: #fff5ad;
|
||||||
|
}
|
||||||
|
.noteText {
|
||||||
|
fill: black;
|
||||||
|
stroke: none;
|
||||||
|
font-family: 'trebuchet ms', verdana, arial;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
/** Section styling */
|
||||||
|
.section {
|
||||||
|
stroke: none;
|
||||||
|
opacity: 0.2;
|
||||||
|
}
|
||||||
|
.section0 {
|
||||||
|
fill: rgba(102, 102, 255, 0.49);
|
||||||
|
}
|
||||||
|
.section2 {
|
||||||
|
fill: #fff400;
|
||||||
|
}
|
||||||
|
.section1,
|
||||||
|
.section3 {
|
||||||
|
fill: white;
|
||||||
|
opacity: 0.2;
|
||||||
|
}
|
||||||
|
.sectionTitle0 {
|
||||||
|
fill: #333;
|
||||||
|
}
|
||||||
|
.sectionTitle1 {
|
||||||
|
fill: #333;
|
||||||
|
}
|
||||||
|
.sectionTitle2 {
|
||||||
|
fill: #333;
|
||||||
|
}
|
||||||
|
.sectionTitle3 {
|
||||||
|
fill: #333;
|
||||||
|
}
|
||||||
|
.sectionTitle {
|
||||||
|
text-anchor: start;
|
||||||
|
font-size: 11px;
|
||||||
|
text-height: 14px;
|
||||||
|
}
|
||||||
|
/* Grid and axis */
|
||||||
|
.grid .tick {
|
||||||
|
stroke: lightgrey;
|
||||||
|
opacity: 0.3;
|
||||||
|
shape-rendering: crispEdges;
|
||||||
|
}
|
||||||
|
.grid path {
|
||||||
|
stroke-width: 0;
|
||||||
|
}
|
||||||
|
/* Today line */
|
||||||
|
.today {
|
||||||
|
fill: none;
|
||||||
|
stroke: red;
|
||||||
|
stroke-width: 2px;
|
||||||
|
}
|
||||||
|
/* Task styling */
|
||||||
|
/* Default task */
|
||||||
|
.task {
|
||||||
|
stroke-width: 2;
|
||||||
|
}
|
||||||
|
.taskText {
|
||||||
|
text-anchor: middle;
|
||||||
|
font-size: 11px;
|
||||||
|
}
|
||||||
|
.taskTextOutsideRight {
|
||||||
|
fill: black;
|
||||||
|
text-anchor: start;
|
||||||
|
font-size: 11px;
|
||||||
|
}
|
||||||
|
.taskTextOutsideLeft {
|
||||||
|
fill: black;
|
||||||
|
text-anchor: end;
|
||||||
|
font-size: 11px;
|
||||||
|
}
|
||||||
|
/* Specific task settings for the sections*/
|
||||||
|
.taskText0,
|
||||||
|
.taskText1,
|
||||||
|
.taskText2,
|
||||||
|
.taskText3 {
|
||||||
|
fill: white;
|
||||||
|
}
|
||||||
|
.task0,
|
||||||
|
.task1,
|
||||||
|
.task2,
|
||||||
|
.task3 {
|
||||||
|
fill: #8a90dd;
|
||||||
|
stroke: #534fbc;
|
||||||
|
}
|
||||||
|
.taskTextOutside0,
|
||||||
|
.taskTextOutside2 {
|
||||||
|
fill: black;
|
||||||
|
}
|
||||||
|
.taskTextOutside1,
|
||||||
|
.taskTextOutside3 {
|
||||||
|
fill: black;
|
||||||
|
}
|
||||||
|
/* Active task */
|
||||||
|
.active0,
|
||||||
|
.active1,
|
||||||
|
.active2,
|
||||||
|
.active3 {
|
||||||
|
fill: #bfc7ff;
|
||||||
|
stroke: #534fbc;
|
||||||
|
}
|
||||||
|
.activeText0,
|
||||||
|
.activeText1,
|
||||||
|
.activeText2,
|
||||||
|
.activeText3 {
|
||||||
|
fill: black !important;
|
||||||
|
}
|
||||||
|
/* Completed task */
|
||||||
|
.done0,
|
||||||
|
.done1,
|
||||||
|
.done2,
|
||||||
|
.done3 {
|
||||||
|
stroke: grey;
|
||||||
|
fill: lightgrey;
|
||||||
|
stroke-width: 2;
|
||||||
|
}
|
||||||
|
.doneText0,
|
||||||
|
.doneText1,
|
||||||
|
.doneText2,
|
||||||
|
.doneText3 {
|
||||||
|
fill: black !important;
|
||||||
|
}
|
||||||
|
/* Tasks on the critical line */
|
||||||
|
.crit0,
|
||||||
|
.crit1,
|
||||||
|
.crit2,
|
||||||
|
.crit3 {
|
||||||
|
stroke: #ff8888;
|
||||||
|
fill: red;
|
||||||
|
stroke-width: 2;
|
||||||
|
}
|
||||||
|
.activeCrit0,
|
||||||
|
.activeCrit1,
|
||||||
|
.activeCrit2,
|
||||||
|
.activeCrit3 {
|
||||||
|
stroke: #ff8888;
|
||||||
|
fill: #bfc7ff;
|
||||||
|
stroke-width: 2;
|
||||||
|
}
|
||||||
|
.doneCrit0,
|
||||||
|
.doneCrit1,
|
||||||
|
.doneCrit2,
|
||||||
|
.doneCrit3 {
|
||||||
|
stroke: #ff8888;
|
||||||
|
fill: lightgrey;
|
||||||
|
stroke-width: 2;
|
||||||
|
cursor: pointer;
|
||||||
|
shape-rendering: crispEdges;
|
||||||
|
}
|
||||||
|
.doneCritText0,
|
||||||
|
.doneCritText1,
|
||||||
|
.doneCritText2,
|
||||||
|
.doneCritText3 {
|
||||||
|
fill: black !important;
|
||||||
|
}
|
||||||
|
.activeCritText0,
|
||||||
|
.activeCritText1,
|
||||||
|
.activeCritText2,
|
||||||
|
.activeCritText3 {
|
||||||
|
fill: black !important;
|
||||||
|
}
|
||||||
|
.titleText {
|
||||||
|
text-anchor: middle;
|
||||||
|
font-size: 18px;
|
||||||
|
fill: black;
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
|
||||||
|
|
||||||
|
*/
|
||||||
|
.node text {
|
||||||
|
font-family: 'trebuchet ms', verdana, arial;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
div.mermaidTooltip {
|
||||||
|
position: absolute;
|
||||||
|
text-align: center;
|
||||||
|
max-width: 200px;
|
||||||
|
padding: 2px;
|
||||||
|
font-family: 'trebuchet ms', verdana, arial;
|
||||||
|
font-size: 12px;
|
||||||
|
background: #ffffde;
|
||||||
|
border: 1px solid #aaaa33;
|
||||||
|
border-radius: 2px;
|
||||||
|
pointer-events: none;
|
||||||
|
z-index: 100;
|
||||||
|
}
|
||||||
+275
@@ -0,0 +1,275 @@
|
|||||||
|
/* Flowchart variables */
|
||||||
|
/* Sequence Diagram variables */
|
||||||
|
/* Gantt chart variables */
|
||||||
|
.mermaid .label {
|
||||||
|
color: #323D47;
|
||||||
|
}
|
||||||
|
.node rect,
|
||||||
|
.node circle,
|
||||||
|
.node ellipse,
|
||||||
|
.node polygon {
|
||||||
|
fill: #BDD5EA;
|
||||||
|
stroke: #81B1DB;
|
||||||
|
stroke-width: 1px;
|
||||||
|
}
|
||||||
|
.edgePath .path {
|
||||||
|
stroke: lightgrey;
|
||||||
|
}
|
||||||
|
.edgeLabel {
|
||||||
|
background-color: #e8e8e8;
|
||||||
|
}
|
||||||
|
.cluster rect {
|
||||||
|
fill: #6D6D65 !important;
|
||||||
|
rx: 4 !important;
|
||||||
|
stroke: rgba(255, 255, 255, 0.25) !important;
|
||||||
|
stroke-width: 1px !important;
|
||||||
|
}
|
||||||
|
.cluster text {
|
||||||
|
fill: #F9FFFE;
|
||||||
|
}
|
||||||
|
.actor {
|
||||||
|
stroke: #81B1DB;
|
||||||
|
fill: #BDD5EA;
|
||||||
|
}
|
||||||
|
text.actor {
|
||||||
|
fill: black;
|
||||||
|
stroke: none;
|
||||||
|
}
|
||||||
|
.actor-line {
|
||||||
|
stroke: lightgrey;
|
||||||
|
}
|
||||||
|
.messageLine0 {
|
||||||
|
stroke-width: 1.5;
|
||||||
|
stroke-dasharray: "2 2";
|
||||||
|
marker-end: "url(#arrowhead)";
|
||||||
|
stroke: lightgrey;
|
||||||
|
}
|
||||||
|
.messageLine1 {
|
||||||
|
stroke-width: 1.5;
|
||||||
|
stroke-dasharray: "2 2";
|
||||||
|
stroke: lightgrey;
|
||||||
|
}
|
||||||
|
#arrowhead {
|
||||||
|
fill: lightgrey !important;
|
||||||
|
}
|
||||||
|
#crosshead path {
|
||||||
|
fill: lightgrey !important;
|
||||||
|
stroke: lightgrey !important;
|
||||||
|
}
|
||||||
|
.messageText {
|
||||||
|
fill: lightgrey;
|
||||||
|
stroke: none;
|
||||||
|
}
|
||||||
|
.labelBox {
|
||||||
|
stroke: #81B1DB;
|
||||||
|
fill: #BDD5EA;
|
||||||
|
}
|
||||||
|
.labelText {
|
||||||
|
fill: #323D47;
|
||||||
|
stroke: none;
|
||||||
|
}
|
||||||
|
.loopText {
|
||||||
|
fill: lightgrey;
|
||||||
|
stroke: none;
|
||||||
|
}
|
||||||
|
.loopLine {
|
||||||
|
stroke-width: 2;
|
||||||
|
stroke-dasharray: "2 2";
|
||||||
|
marker-end: "url(#arrowhead)";
|
||||||
|
stroke: #81B1DB;
|
||||||
|
}
|
||||||
|
.note {
|
||||||
|
stroke: rgba(255, 255, 255, 0.25);
|
||||||
|
fill: #fff5ad;
|
||||||
|
}
|
||||||
|
.noteText {
|
||||||
|
fill: black;
|
||||||
|
stroke: none;
|
||||||
|
font-family: 'trebuchet ms', verdana, arial;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
/** Section styling */
|
||||||
|
.section {
|
||||||
|
stroke: none;
|
||||||
|
opacity: 0.2;
|
||||||
|
}
|
||||||
|
.section0 {
|
||||||
|
fill: rgba(255, 255, 255, 0.3);
|
||||||
|
}
|
||||||
|
.section2 {
|
||||||
|
fill: #EAE8B9;
|
||||||
|
}
|
||||||
|
.section1,
|
||||||
|
.section3 {
|
||||||
|
fill: white;
|
||||||
|
opacity: 0.2;
|
||||||
|
}
|
||||||
|
.sectionTitle0 {
|
||||||
|
fill: #F9FFFE;
|
||||||
|
}
|
||||||
|
.sectionTitle1 {
|
||||||
|
fill: #F9FFFE;
|
||||||
|
}
|
||||||
|
.sectionTitle2 {
|
||||||
|
fill: #F9FFFE;
|
||||||
|
}
|
||||||
|
.sectionTitle3 {
|
||||||
|
fill: #F9FFFE;
|
||||||
|
}
|
||||||
|
.sectionTitle {
|
||||||
|
text-anchor: start;
|
||||||
|
font-size: 11px;
|
||||||
|
text-height: 14px;
|
||||||
|
}
|
||||||
|
/* Grid and axis */
|
||||||
|
.grid .tick {
|
||||||
|
stroke: rgba(255, 255, 255, 0.3);
|
||||||
|
opacity: 0.3;
|
||||||
|
shape-rendering: crispEdges;
|
||||||
|
}
|
||||||
|
.grid .tick text {
|
||||||
|
fill: lightgrey;
|
||||||
|
opacity: 0.5;
|
||||||
|
}
|
||||||
|
.grid path {
|
||||||
|
stroke-width: 0;
|
||||||
|
}
|
||||||
|
/* Today line */
|
||||||
|
.today {
|
||||||
|
fill: none;
|
||||||
|
stroke: #DB5757;
|
||||||
|
stroke-width: 2px;
|
||||||
|
}
|
||||||
|
/* Task styling */
|
||||||
|
/* Default task */
|
||||||
|
.task {
|
||||||
|
stroke-width: 1;
|
||||||
|
}
|
||||||
|
.taskText {
|
||||||
|
text-anchor: middle;
|
||||||
|
font-size: 11px;
|
||||||
|
}
|
||||||
|
.taskTextOutsideRight {
|
||||||
|
fill: #323D47;
|
||||||
|
text-anchor: start;
|
||||||
|
font-size: 11px;
|
||||||
|
}
|
||||||
|
.taskTextOutsideLeft {
|
||||||
|
fill: #323D47;
|
||||||
|
text-anchor: end;
|
||||||
|
font-size: 11px;
|
||||||
|
}
|
||||||
|
/* Specific task settings for the sections*/
|
||||||
|
.taskText0,
|
||||||
|
.taskText1,
|
||||||
|
.taskText2,
|
||||||
|
.taskText3 {
|
||||||
|
fill: #323D47;
|
||||||
|
}
|
||||||
|
.task0,
|
||||||
|
.task1,
|
||||||
|
.task2,
|
||||||
|
.task3 {
|
||||||
|
fill: #BDD5EA;
|
||||||
|
stroke: rgba(255, 255, 255, 0.5);
|
||||||
|
}
|
||||||
|
.taskTextOutside0,
|
||||||
|
.taskTextOutside2 {
|
||||||
|
fill: lightgrey;
|
||||||
|
}
|
||||||
|
.taskTextOutside1,
|
||||||
|
.taskTextOutside3 {
|
||||||
|
fill: lightgrey;
|
||||||
|
}
|
||||||
|
/* Active task */
|
||||||
|
.active0,
|
||||||
|
.active1,
|
||||||
|
.active2,
|
||||||
|
.active3 {
|
||||||
|
fill: #81B1DB;
|
||||||
|
stroke: rgba(255, 255, 255, 0.5);
|
||||||
|
}
|
||||||
|
.activeText0,
|
||||||
|
.activeText1,
|
||||||
|
.activeText2,
|
||||||
|
.activeText3 {
|
||||||
|
fill: #323D47 !important;
|
||||||
|
}
|
||||||
|
/* Completed task */
|
||||||
|
.done0,
|
||||||
|
.done1,
|
||||||
|
.done2,
|
||||||
|
.done3 {
|
||||||
|
fill: lightgrey;
|
||||||
|
}
|
||||||
|
.doneText0,
|
||||||
|
.doneText1,
|
||||||
|
.doneText2,
|
||||||
|
.doneText3 {
|
||||||
|
fill: #323D47 !important;
|
||||||
|
}
|
||||||
|
/* Tasks on the critical line */
|
||||||
|
.crit0,
|
||||||
|
.crit1,
|
||||||
|
.crit2,
|
||||||
|
.crit3 {
|
||||||
|
stroke: #E83737;
|
||||||
|
fill: #E83737;
|
||||||
|
stroke-width: 2;
|
||||||
|
}
|
||||||
|
.activeCrit0,
|
||||||
|
.activeCrit1,
|
||||||
|
.activeCrit2,
|
||||||
|
.activeCrit3 {
|
||||||
|
stroke: #E83737;
|
||||||
|
fill: #81B1DB;
|
||||||
|
stroke-width: 2;
|
||||||
|
}
|
||||||
|
.doneCrit0,
|
||||||
|
.doneCrit1,
|
||||||
|
.doneCrit2,
|
||||||
|
.doneCrit3 {
|
||||||
|
stroke: #E83737;
|
||||||
|
fill: lightgrey;
|
||||||
|
stroke-width: 1;
|
||||||
|
cursor: pointer;
|
||||||
|
shape-rendering: crispEdges;
|
||||||
|
}
|
||||||
|
.doneCritText0,
|
||||||
|
.doneCritText1,
|
||||||
|
.doneCritText2,
|
||||||
|
.doneCritText3 {
|
||||||
|
fill: lightgrey !important;
|
||||||
|
}
|
||||||
|
.activeCritText0,
|
||||||
|
.activeCritText1,
|
||||||
|
.activeCritText2,
|
||||||
|
.activeCritText3 {
|
||||||
|
fill: #323D47 !important;
|
||||||
|
}
|
||||||
|
.titleText {
|
||||||
|
text-anchor: middle;
|
||||||
|
font-size: 18px;
|
||||||
|
fill: lightgrey;
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
|
||||||
|
|
||||||
|
*/
|
||||||
|
.node text {
|
||||||
|
font-family: 'trebuchet ms', verdana, arial;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
div.mermaidTooltip {
|
||||||
|
position: absolute;
|
||||||
|
text-align: center;
|
||||||
|
max-width: 200px;
|
||||||
|
padding: 2px;
|
||||||
|
font-family: 'trebuchet ms', verdana, arial;
|
||||||
|
font-size: 12px;
|
||||||
|
background: #6D6D65;
|
||||||
|
border: 1px solid rgba(255, 255, 255, 0.25);
|
||||||
|
border-radius: 2px;
|
||||||
|
pointer-events: none;
|
||||||
|
z-index: 100;
|
||||||
|
}
|
||||||
+353
@@ -0,0 +1,353 @@
|
|||||||
|
/* Flowchart variables */
|
||||||
|
/* Sequence Diagram variables */
|
||||||
|
/* Gantt chart variables */
|
||||||
|
.mermaid .label {
|
||||||
|
font-family: 'trebuchet ms', verdana, arial;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
.node rect,
|
||||||
|
.node circle,
|
||||||
|
.node ellipse,
|
||||||
|
.node polygon {
|
||||||
|
fill: #cde498;
|
||||||
|
stroke: #13540c;
|
||||||
|
stroke-width: 1px;
|
||||||
|
}
|
||||||
|
.edgePath .path {
|
||||||
|
stroke: green;
|
||||||
|
stroke-width: 1.5px;
|
||||||
|
}
|
||||||
|
.edgeLabel {
|
||||||
|
background-color: #e8e8e8;
|
||||||
|
}
|
||||||
|
.cluster rect {
|
||||||
|
fill: #cdffb2 !important;
|
||||||
|
rx: 4 !important;
|
||||||
|
stroke: #6eaa49 !important;
|
||||||
|
stroke-width: 1px !important;
|
||||||
|
}
|
||||||
|
.cluster text {
|
||||||
|
fill: #333;
|
||||||
|
}
|
||||||
|
.actor {
|
||||||
|
stroke: #13540c;
|
||||||
|
fill: #cde498;
|
||||||
|
}
|
||||||
|
text.actor {
|
||||||
|
fill: black;
|
||||||
|
stroke: none;
|
||||||
|
}
|
||||||
|
.actor-line {
|
||||||
|
stroke: grey;
|
||||||
|
}
|
||||||
|
.messageLine0 {
|
||||||
|
stroke-width: 1.5;
|
||||||
|
stroke-dasharray: "2 2";
|
||||||
|
marker-end: "url(#arrowhead)";
|
||||||
|
stroke: #333;
|
||||||
|
}
|
||||||
|
.messageLine1 {
|
||||||
|
stroke-width: 1.5;
|
||||||
|
stroke-dasharray: "2 2";
|
||||||
|
stroke: #333;
|
||||||
|
}
|
||||||
|
#arrowhead {
|
||||||
|
fill: #333;
|
||||||
|
}
|
||||||
|
#crosshead path {
|
||||||
|
fill: #333 !important;
|
||||||
|
stroke: #333 !important;
|
||||||
|
}
|
||||||
|
.messageText {
|
||||||
|
fill: #333;
|
||||||
|
stroke: none;
|
||||||
|
}
|
||||||
|
.labelBox {
|
||||||
|
stroke: #326932;
|
||||||
|
fill: #cde498;
|
||||||
|
}
|
||||||
|
.labelText {
|
||||||
|
fill: black;
|
||||||
|
stroke: none;
|
||||||
|
}
|
||||||
|
.loopText {
|
||||||
|
fill: black;
|
||||||
|
stroke: none;
|
||||||
|
}
|
||||||
|
.loopLine {
|
||||||
|
stroke-width: 2;
|
||||||
|
stroke-dasharray: "2 2";
|
||||||
|
marker-end: "url(#arrowhead)";
|
||||||
|
stroke: #326932;
|
||||||
|
}
|
||||||
|
.note {
|
||||||
|
stroke: #6eaa49;
|
||||||
|
fill: #fff5ad;
|
||||||
|
}
|
||||||
|
.noteText {
|
||||||
|
fill: black;
|
||||||
|
stroke: none;
|
||||||
|
font-family: 'trebuchet ms', verdana, arial;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
/** Section styling */
|
||||||
|
.section {
|
||||||
|
stroke: none;
|
||||||
|
opacity: 0.2;
|
||||||
|
}
|
||||||
|
.section0 {
|
||||||
|
fill: #6eaa49;
|
||||||
|
}
|
||||||
|
.section2 {
|
||||||
|
fill: #6eaa49;
|
||||||
|
}
|
||||||
|
.section1,
|
||||||
|
.section3 {
|
||||||
|
fill: white;
|
||||||
|
opacity: 0.2;
|
||||||
|
}
|
||||||
|
.sectionTitle0 {
|
||||||
|
fill: #333;
|
||||||
|
}
|
||||||
|
.sectionTitle1 {
|
||||||
|
fill: #333;
|
||||||
|
}
|
||||||
|
.sectionTitle2 {
|
||||||
|
fill: #333;
|
||||||
|
}
|
||||||
|
.sectionTitle3 {
|
||||||
|
fill: #333;
|
||||||
|
}
|
||||||
|
.sectionTitle {
|
||||||
|
text-anchor: start;
|
||||||
|
font-size: 11px;
|
||||||
|
text-height: 14px;
|
||||||
|
}
|
||||||
|
/* Grid and axis */
|
||||||
|
.grid .tick {
|
||||||
|
stroke: lightgrey;
|
||||||
|
opacity: 0.3;
|
||||||
|
shape-rendering: crispEdges;
|
||||||
|
}
|
||||||
|
.grid path {
|
||||||
|
stroke-width: 0;
|
||||||
|
}
|
||||||
|
/* Today line */
|
||||||
|
.today {
|
||||||
|
fill: none;
|
||||||
|
stroke: red;
|
||||||
|
stroke-width: 2px;
|
||||||
|
}
|
||||||
|
/* Task styling */
|
||||||
|
/* Default task */
|
||||||
|
.task {
|
||||||
|
stroke-width: 2;
|
||||||
|
}
|
||||||
|
.taskText {
|
||||||
|
text-anchor: middle;
|
||||||
|
font-size: 11px;
|
||||||
|
}
|
||||||
|
.taskTextOutsideRight {
|
||||||
|
fill: black;
|
||||||
|
text-anchor: start;
|
||||||
|
font-size: 11px;
|
||||||
|
}
|
||||||
|
.taskTextOutsideLeft {
|
||||||
|
fill: black;
|
||||||
|
text-anchor: end;
|
||||||
|
font-size: 11px;
|
||||||
|
}
|
||||||
|
/* Specific task settings for the sections*/
|
||||||
|
.taskText0,
|
||||||
|
.taskText1,
|
||||||
|
.taskText2,
|
||||||
|
.taskText3 {
|
||||||
|
fill: white;
|
||||||
|
}
|
||||||
|
.task0,
|
||||||
|
.task1,
|
||||||
|
.task2,
|
||||||
|
.task3 {
|
||||||
|
fill: #487e3a;
|
||||||
|
stroke: #13540c;
|
||||||
|
}
|
||||||
|
.taskTextOutside0,
|
||||||
|
.taskTextOutside2 {
|
||||||
|
fill: black;
|
||||||
|
}
|
||||||
|
.taskTextOutside1,
|
||||||
|
.taskTextOutside3 {
|
||||||
|
fill: black;
|
||||||
|
}
|
||||||
|
/* Active task */
|
||||||
|
.active0,
|
||||||
|
.active1,
|
||||||
|
.active2,
|
||||||
|
.active3 {
|
||||||
|
fill: #cde498;
|
||||||
|
stroke: #13540c;
|
||||||
|
}
|
||||||
|
.activeText0,
|
||||||
|
.activeText1,
|
||||||
|
.activeText2,
|
||||||
|
.activeText3 {
|
||||||
|
fill: black !important;
|
||||||
|
}
|
||||||
|
/* Completed task */
|
||||||
|
.done0,
|
||||||
|
.done1,
|
||||||
|
.done2,
|
||||||
|
.done3 {
|
||||||
|
stroke: grey;
|
||||||
|
fill: lightgrey;
|
||||||
|
stroke-width: 2;
|
||||||
|
}
|
||||||
|
.doneText0,
|
||||||
|
.doneText1,
|
||||||
|
.doneText2,
|
||||||
|
.doneText3 {
|
||||||
|
fill: black !important;
|
||||||
|
}
|
||||||
|
/* Tasks on the critical line */
|
||||||
|
.crit0,
|
||||||
|
.crit1,
|
||||||
|
.crit2,
|
||||||
|
.crit3 {
|
||||||
|
stroke: #ff8888;
|
||||||
|
fill: red;
|
||||||
|
stroke-width: 2;
|
||||||
|
}
|
||||||
|
.activeCrit0,
|
||||||
|
.activeCrit1,
|
||||||
|
.activeCrit2,
|
||||||
|
.activeCrit3 {
|
||||||
|
stroke: #ff8888;
|
||||||
|
fill: #cde498;
|
||||||
|
stroke-width: 2;
|
||||||
|
}
|
||||||
|
.doneCrit0,
|
||||||
|
.doneCrit1,
|
||||||
|
.doneCrit2,
|
||||||
|
.doneCrit3 {
|
||||||
|
stroke: #ff8888;
|
||||||
|
fill: lightgrey;
|
||||||
|
stroke-width: 2;
|
||||||
|
cursor: pointer;
|
||||||
|
shape-rendering: crispEdges;
|
||||||
|
}
|
||||||
|
.doneCritText0,
|
||||||
|
.doneCritText1,
|
||||||
|
.doneCritText2,
|
||||||
|
.doneCritText3 {
|
||||||
|
fill: black !important;
|
||||||
|
}
|
||||||
|
.activeCritText0,
|
||||||
|
.activeCritText1,
|
||||||
|
.activeCritText2,
|
||||||
|
.activeCritText3 {
|
||||||
|
fill: black !important;
|
||||||
|
}
|
||||||
|
.titleText {
|
||||||
|
text-anchor: middle;
|
||||||
|
font-size: 18px;
|
||||||
|
fill: black;
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
|
||||||
|
|
||||||
|
*/
|
||||||
|
g.classGroup text {
|
||||||
|
fill: #13540c;
|
||||||
|
stroke: none;
|
||||||
|
font-family: 'trebuchet ms', verdana, arial;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
g.classGroup rect {
|
||||||
|
fill: #cde498;
|
||||||
|
stroke: #13540c;
|
||||||
|
}
|
||||||
|
g.classGroup line {
|
||||||
|
stroke: #13540c;
|
||||||
|
stroke-width: 1;
|
||||||
|
}
|
||||||
|
svg .classLabel .box {
|
||||||
|
stroke: none;
|
||||||
|
stroke-width: 0;
|
||||||
|
fill: #cde498;
|
||||||
|
opacity: 0.5;
|
||||||
|
}
|
||||||
|
svg .classLabel .label {
|
||||||
|
fill: #13540c;
|
||||||
|
}
|
||||||
|
.relation {
|
||||||
|
stroke: #13540c;
|
||||||
|
stroke-width: 1;
|
||||||
|
fill: none;
|
||||||
|
}
|
||||||
|
.composition {
|
||||||
|
fill: #13540c;
|
||||||
|
stroke: #13540c;
|
||||||
|
stroke-width: 1;
|
||||||
|
}
|
||||||
|
#compositionStart {
|
||||||
|
fill: #13540c;
|
||||||
|
stroke: #13540c;
|
||||||
|
stroke-width: 1;
|
||||||
|
}
|
||||||
|
#compositionEnd {
|
||||||
|
fill: #13540c;
|
||||||
|
stroke: #13540c;
|
||||||
|
stroke-width: 1;
|
||||||
|
}
|
||||||
|
.aggregation {
|
||||||
|
fill: #cde498;
|
||||||
|
stroke: #13540c;
|
||||||
|
stroke-width: 1;
|
||||||
|
}
|
||||||
|
#aggregationStart {
|
||||||
|
fill: #cde498;
|
||||||
|
stroke: #13540c;
|
||||||
|
stroke-width: 1;
|
||||||
|
}
|
||||||
|
#aggregationEnd {
|
||||||
|
fill: #cde498;
|
||||||
|
stroke: #13540c;
|
||||||
|
stroke-width: 1;
|
||||||
|
}
|
||||||
|
#dependencyStart {
|
||||||
|
fill: #13540c;
|
||||||
|
stroke: #13540c;
|
||||||
|
stroke-width: 1;
|
||||||
|
}
|
||||||
|
#dependencyEnd {
|
||||||
|
fill: #13540c;
|
||||||
|
stroke: #13540c;
|
||||||
|
stroke-width: 1;
|
||||||
|
}
|
||||||
|
#extensionStart {
|
||||||
|
fill: #13540c;
|
||||||
|
stroke: #13540c;
|
||||||
|
stroke-width: 1;
|
||||||
|
}
|
||||||
|
#extensionEnd {
|
||||||
|
fill: #13540c;
|
||||||
|
stroke: #13540c;
|
||||||
|
stroke-width: 1;
|
||||||
|
}
|
||||||
|
.node text {
|
||||||
|
font-family: 'trebuchet ms', verdana, arial;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
div.mermaidTooltip {
|
||||||
|
position: absolute;
|
||||||
|
text-align: center;
|
||||||
|
max-width: 200px;
|
||||||
|
padding: 2px;
|
||||||
|
font-family: 'trebuchet ms', verdana, arial;
|
||||||
|
font-size: 12px;
|
||||||
|
background: #cdffb2;
|
||||||
|
border: 1px solid #6eaa49;
|
||||||
|
border-radius: 2px;
|
||||||
|
pointer-events: none;
|
||||||
|
z-index: 100;
|
||||||
|
}
|
||||||
Executable
+59158
File diff suppressed because one or more lines are too long
+24
File diff suppressed because one or more lines are too long
Executable
+49653
File diff suppressed because one or more lines are too long
+17
File diff suppressed because one or more lines are too long
Executable
+58568
File diff suppressed because one or more lines are too long
+22
File diff suppressed because one or more lines are too long
+49063
File diff suppressed because one or more lines are too long
+19
File diff suppressed because one or more lines are too long
+4
-1
@@ -17,6 +17,7 @@ $(function () {
|
|||||||
fileUploadURL: window.fileUploadURL,
|
fileUploadURL: window.fileUploadURL,
|
||||||
taskList: true,
|
taskList: true,
|
||||||
flowChart: true,
|
flowChart: true,
|
||||||
|
mermaid: true,
|
||||||
htmlDecode: "style,script,iframe,title,onmouseover,onmouseout,style",
|
htmlDecode: "style,script,iframe,title,onmouseover,onmouseout,style",
|
||||||
lineNumbers: false,
|
lineNumbers: false,
|
||||||
sequenceDiagram: true,
|
sequenceDiagram: true,
|
||||||
@@ -54,6 +55,9 @@ $(function () {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
window.isLoad = true;
|
||||||
|
this.insertValue($("#blogRawMarkdown").html());
|
||||||
|
this.setCursor({ line: 0, ch: 0 });
|
||||||
},
|
},
|
||||||
onchange: function () {
|
onchange: function () {
|
||||||
resetEditorChanged(true);
|
resetEditorChanged(true);
|
||||||
@@ -117,7 +121,6 @@ $(function () {
|
|||||||
if ($res.errcode === 0) {
|
if ($res.errcode === 0) {
|
||||||
resetEditorChanged(false);
|
resetEditorChanged(false);
|
||||||
window.blogVersion = $res.data.version;
|
window.blogVersion = $res.data.version;
|
||||||
console.log(window.blogVersion);
|
|
||||||
} else if($res.errcode === 6005) {
|
} else if($res.errcode === 6005) {
|
||||||
var confirmIndex = layer.confirm('文档已被其他人修改确定覆盖已存在的文档吗?', {
|
var confirmIndex = layer.confirm('文档已被其他人修改确定覆盖已存在的文档吗?', {
|
||||||
btn: ['确定', '取消'] // 按钮
|
btn: ['确定', '取消'] // 按钮
|
||||||
|
|||||||
@@ -29,12 +29,6 @@
|
|||||||
<link href="{{cdncss "/static/webuploader/webuploader.css"}}" rel="stylesheet">
|
<link href="{{cdncss "/static/webuploader/webuploader.css"}}" rel="stylesheet">
|
||||||
<link href="{{cdncss "/static/css/markdown.css" "version"}}" rel="stylesheet">
|
<link href="{{cdncss "/static/css/markdown.css" "version"}}" rel="stylesheet">
|
||||||
<link href="{{cdncss "/static/css/markdown.preview.css" "version"}}" rel="stylesheet">
|
<link href="{{cdncss "/static/css/markdown.preview.css" "version"}}" rel="stylesheet">
|
||||||
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
|
|
||||||
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
|
|
||||||
<!--[if lt IE 9]>
|
|
||||||
<script src="/static/html5shiv/3.7.3/html5shiv.min.js"></script>
|
|
||||||
<script src="/static/respond.js/1.4.2/respond.min.js"></script>
|
|
||||||
<![endif]-->
|
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|
||||||
@@ -97,7 +91,7 @@
|
|||||||
<div class="manual-body">
|
<div class="manual-body">
|
||||||
<div class="manual-editor-container" id="manualEditorContainer" style="min-width: 920px;left: 0;">
|
<div class="manual-editor-container" id="manualEditorContainer" style="min-width: 920px;left: 0;">
|
||||||
<div class="manual-editormd">
|
<div class="manual-editormd">
|
||||||
<div id="docEditor" class="manual-editormd-active"><textarea style="display:none;">{{.Model.BlogContent}}</textarea></div>
|
<div id="docEditor" class="manual-editormd-active"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="manual-editor-status">
|
<div class="manual-editor-status">
|
||||||
<div id="attachInfo" class="item">0 个附件</div>
|
<div id="attachInfo" class="item">0 个附件</div>
|
||||||
@@ -106,6 +100,7 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<script type="text/x-markdown" id="blogRawMarkdown">{{.Model.BlogContent}}</script>
|
||||||
<!-- Modal -->
|
<!-- Modal -->
|
||||||
|
|
||||||
<div class="modal fade" id="uploadAttachModal" tabindex="-1" role="dialog" aria-labelledby="uploadAttachModalLabel">
|
<div class="modal fade" id="uploadAttachModal" tabindex="-1" role="dialog" aria-labelledby="uploadAttachModalLabel">
|
||||||
|
|||||||
Reference in New Issue
Block a user