zydx-plus 1.33.358 → 1.33.360
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -57,12 +57,12 @@ export function butJson(editor, data) {
|
|
|
57
57
|
name: '摘 要',
|
|
58
58
|
key: 'abstractMenu',
|
|
59
59
|
menuKeys: [],
|
|
60
|
-
html: `<p class="abstract" data-signId="abstract"><span style="color: rgb(0, 0, 0);font-size: 14px;font-weight: 700;font-family: SimSun;">摘要:</span> <span style="color: rgb(0, 0, 0);font-size:
|
|
60
|
+
html: `<p class="abstract" data-signId="abstract"><span style="color: rgb(0, 0, 0);font-size: 14px;font-weight: 700;font-family: SimSun;">摘要:</span> <span style="color: rgb(0, 0, 0);font-size: 14px;font-family: FangSong"> 摘要内容...</span></p>`
|
|
61
61
|
}, {
|
|
62
62
|
name: '关键词',
|
|
63
63
|
key: 'keywordMenu',
|
|
64
64
|
menuKeys: [],
|
|
65
|
-
html: `<p class="keyword" data-signId="keyword"><span contenteditable="false" style="color: rgb(0, 0, 0);font-size: 14px;font-weight: 700;font-family: SimSun;">关键词:</span> <span style="color: rgb(0, 0, 0);font-size:
|
|
65
|
+
html: `<p class="keyword" data-signId="keyword"><span contenteditable="false" style="color: rgb(0, 0, 0);font-size: 14px;font-weight: 700;font-family: SimSun;">关键词:</span> <span style="color: rgb(0, 0, 0);font-size: 14px;font-family: FangSong"> 关键词内容...</span></p>`
|
|
66
66
|
}, {
|
|
67
67
|
name: '标 题',
|
|
68
68
|
key: 'paragraphTitle',
|
|
@@ -88,7 +88,7 @@ export function butJson(editor, data) {
|
|
|
88
88
|
key: 'ackMenu',
|
|
89
89
|
menuKeys: [],
|
|
90
90
|
html: [
|
|
91
|
-
`<p data-signId="ack"
|
|
91
|
+
`<p data-signId="ack" style="text-align: center;"><span style="color: rgb(0, 0, 0);font-size: 16px;font-weight: bold;">致谢</span></p>`,
|
|
92
92
|
`<p><span style="color: rgb(0, 0, 0);font-size: 14px;font-family: KaiTi;">致谢内容...</span></p>`
|
|
93
93
|
]
|
|
94
94
|
},
|
|
@@ -119,7 +119,7 @@
|
|
|
119
119
|
<!-- ,width: wit + 'px'-->
|
|
120
120
|
<div v-for="(item,index) in htmlArr" :key="index" :style="{height: wit * 1.6 + 'px'}"
|
|
121
121
|
class="read-only-page" @click="menusTap">
|
|
122
|
-
<div class="read-only-p" v-html="item"></div>
|
|
122
|
+
<div class="read-only-p" :style="{width: wit + 'px',margin:'0 auto'}" v-html="item"></div>
|
|
123
123
|
<div class="read-only-a">{{ index + 1 }}/{{ htmlArr.length }}</div>
|
|
124
124
|
</div>
|
|
125
125
|
</div>
|
|
@@ -273,7 +273,7 @@
|
|
|
273
273
|
</div>
|
|
274
274
|
</div>
|
|
275
275
|
<div v-if="!readOnly" class="p-popup-but-box">
|
|
276
|
-
<div class="tip-btn" @click="nounExplainSubmit" v-html="'完成'"></div>
|
|
276
|
+
<div class="tip-btn" @click="nounExplainSubmit(item)" v-html="'完成'"></div>
|
|
277
277
|
</div>
|
|
278
278
|
</div>
|
|
279
279
|
</template>
|
|
@@ -319,11 +319,11 @@
|
|
|
319
319
|
<!-- 展示弹窗 -->
|
|
320
320
|
<div v-for="(item,index) in interpositionData" :key="index">
|
|
321
321
|
<zydx-drag-popup v-if="item.isShow" :enlargeShow="false" :minHeight="183"
|
|
322
|
-
:minWidth="['importWorks', 'linkCourseware', 'importArticles'].indexOf(item.type) === -1 ? 640 :905" :minimize="false" :minimizeCir="false"
|
|
322
|
+
:minWidth="['importWorks', 'linkCourseware', 'importArticles', 'videoLink'].indexOf(item.type) === -1 ? 640 :905" :minimize="false" :minimizeCir="false"
|
|
323
323
|
:title="titleDragPopup[item.type]?titleDragPopup[item.type]:'参考文献'" height="auto"
|
|
324
|
-
:width="['importWorks', 'linkCourseware', 'importArticles'].indexOf(item.type) === -1 ? 640 :905" @close="closeDataShowPopup(item)">
|
|
324
|
+
:width="['importWorks', 'linkCourseware', 'importArticles', 'videoLink'].indexOf(item.type) === -1 ? 640 :905" @close="closeDataShowPopup(item)">
|
|
325
325
|
<template #content>
|
|
326
|
-
<div v-if="item.type === 'taggingMenu'" style="padding: 10px">
|
|
326
|
+
<div v-if="item.type === 'taggingMenu'" style="padding: 5px 10px 10px 10px">
|
|
327
327
|
<div class="p-popup-title-box">
|
|
328
328
|
<span class="p-popup-title-name">注释内容</span>
|
|
329
329
|
<div v-if="!readOnly" class="tip-btnBox" style="margin: 0">
|
|
@@ -345,11 +345,11 @@
|
|
|
345
345
|
</div>
|
|
346
346
|
</div>
|
|
347
347
|
<div v-if="item.edit&&!readOnly" class="p-popup-but-box">
|
|
348
|
-
<div class="tip-btn" @click="nounExplainSubmit" v-html="'完成'"></div>
|
|
348
|
+
<div class="tip-btn" @click="nounExplainSubmit(item)" v-html="'完成'"></div>
|
|
349
349
|
</div>
|
|
350
350
|
</div>
|
|
351
351
|
|
|
352
|
-
<div v-if="item.type === 'nounExplain'" style="padding: 10px">
|
|
352
|
+
<div v-if="item.type === 'nounExplain'" style="padding: 5px 10px 10px 10px">
|
|
353
353
|
<div class="p-popup-title-box">
|
|
354
354
|
<span class="p-popup-title-name">名词内容</span>
|
|
355
355
|
<div v-if="!readOnly" class="tip-btnBox" style="margin: 0">
|
|
@@ -372,11 +372,11 @@
|
|
|
372
372
|
</div>
|
|
373
373
|
</div>
|
|
374
374
|
<div v-if="item.edit&&!readOnly" class="p-popup-but-box">
|
|
375
|
-
<div class="tip-btn" @click="nounExplainSubmit" v-html="'完成'"></div>
|
|
375
|
+
<div class="tip-btn" @click="nounExplainSubmit(item)" v-html="'完成'"></div>
|
|
376
376
|
</div>
|
|
377
377
|
</div>
|
|
378
378
|
|
|
379
|
-
<div v-if="item.type === 'importArticles'" style="padding: 10px;height: 100%;">
|
|
379
|
+
<div v-if="item.type === 'importArticles'" style="padding: 5px 10px 10px 10px;height: 100%;">
|
|
380
380
|
<div class="p-popup-title-box">
|
|
381
381
|
<span class="p-popup-title-name">文章内容</span>
|
|
382
382
|
<div v-if="!readOnly" class="tip-btnBox" style="margin: 0">
|
|
@@ -395,7 +395,7 @@
|
|
|
395
395
|
</div>
|
|
396
396
|
</div>
|
|
397
397
|
|
|
398
|
-
<div v-if="item.type === 'importWorks'" style="padding: 10px;height: 100%;">
|
|
398
|
+
<div v-if="item.type === 'importWorks'" style="padding: 5px 10px 10px 10px;height: 100%;">
|
|
399
399
|
<div class="p-popup-title-box">
|
|
400
400
|
<span class="p-popup-title-name">著作内容</span>
|
|
401
401
|
<div v-if="!readOnly" class="tip-btnBox" style="margin: 0">
|
|
@@ -414,7 +414,7 @@
|
|
|
414
414
|
</div>
|
|
415
415
|
</div>
|
|
416
416
|
|
|
417
|
-
<div v-if="item.type === 'videoLink'" style="padding: 10px;height: 100%;">
|
|
417
|
+
<div v-if="item.type === 'videoLink'" style="padding: 5px 10px 10px 10px;height: 100%;">
|
|
418
418
|
<div class="p-popup-title-box">
|
|
419
419
|
<span class="p-popup-title-name">视频内容</span>
|
|
420
420
|
<div v-if="!readOnly" class="tip-btnBox" style="margin: 0">
|
|
@@ -433,7 +433,7 @@
|
|
|
433
433
|
</div>
|
|
434
434
|
</div>
|
|
435
435
|
|
|
436
|
-
<div v-if="item.type === 'linkCourseware'" style="padding: 10px;height: 100%;">
|
|
436
|
+
<div v-if="item.type === 'linkCourseware'" style="padding: 5px 10px 10px 10px;height: 100%;">
|
|
437
437
|
<div class="p-popup-title-box">
|
|
438
438
|
<span class="p-popup-title-name">课件内容</span>
|
|
439
439
|
<div v-if="!readOnly" class="tip-btnBox" style="margin: 0">
|
|
@@ -453,7 +453,7 @@
|
|
|
453
453
|
</div>
|
|
454
454
|
</div>
|
|
455
455
|
|
|
456
|
-
<div v-if="literature.indexOf(item.type)!==-1" style="padding: 10px;height: 100%;">
|
|
456
|
+
<div v-if="literature.indexOf(item.type)!==-1" style="padding: 5px 10px 10px 10px;height: 100%;">
|
|
457
457
|
<div class="p-popup-title-box">
|
|
458
458
|
<span class="p-popup-title-name">{{ literatureName[item.type] }}</span>
|
|
459
459
|
<div v-if="!readOnly" class="tip-btnBox" style="margin: 0">
|
|
@@ -541,6 +541,7 @@ import zydxRead from '../../read'
|
|
|
541
541
|
import zydxDragPopup from '../../dragPopup'
|
|
542
542
|
import zydxSelect from '../../select'
|
|
543
543
|
import {exegesisId} from "./extend/exegesis-id";
|
|
544
|
+
import {html2json, json2html} from '../../utils/html2json.js'
|
|
544
545
|
|
|
545
546
|
const img = require('./image/annotation.png')
|
|
546
547
|
export default {
|
|
@@ -670,6 +671,7 @@ export default {
|
|
|
670
671
|
bottom: 0,
|
|
671
672
|
distance: '1.5',
|
|
672
673
|
},
|
|
674
|
+
isInsertLink:false
|
|
673
675
|
}
|
|
674
676
|
},
|
|
675
677
|
props: {
|
|
@@ -802,16 +804,12 @@ export default {
|
|
|
802
804
|
html: {
|
|
803
805
|
handler: function (e, oldVal) {
|
|
804
806
|
this.init = false
|
|
805
|
-
if (e
|
|
807
|
+
if (e.sign?.tag === 'sign') {
|
|
806
808
|
this.signMenuShow = true
|
|
807
|
-
e.shift()
|
|
809
|
+
// e.shift()
|
|
808
810
|
}
|
|
809
811
|
this.htmlJson = e ? JSON.parse(JSON.stringify(e)) : []
|
|
810
|
-
|
|
811
|
-
this.interpositionData = this.htmlJson[this.htmlJson.length - 1].data
|
|
812
|
-
this.htmlJson.splice(this.htmlJson.length - 1, 1)
|
|
813
|
-
}
|
|
814
|
-
let dataHtml = this.htmlJson
|
|
812
|
+
let dataHtml = this.htmlJson.editorJson
|
|
815
813
|
// this.editor?.commands.setContent(json2html({node: "root", child: (e === undefined || e === null) ? [] : e}))
|
|
816
814
|
this.editor?.commands.setContent(dataHtml)
|
|
817
815
|
if (this.readOnly) {
|
|
@@ -859,23 +857,21 @@ export default {
|
|
|
859
857
|
mounted() {
|
|
860
858
|
const _this = this
|
|
861
859
|
_this.htmlJson = _this.html ? JSON.parse(JSON.stringify(_this.html)) : []
|
|
862
|
-
if (_this.htmlJson[_this.htmlJson.length - 1]?.type === 'interpositionData') {
|
|
863
|
-
this.interpositionData = _this.htmlJson[_this.htmlJson.length - 1].data
|
|
864
|
-
_this.htmlJson.splice(_this.htmlJson.length - 1, 1)
|
|
865
|
-
}
|
|
866
860
|
// let dataHtml = json2html({node: "root", child: (_this.html === undefined || _this.html === null) ? [] : _this.html})
|
|
861
|
+
this.interpositionData = _this.htmlJson.popupsData?_this.htmlJson.popupsData.data:[]
|
|
867
862
|
let dataHtml = _this.htmlJson
|
|
868
|
-
if (dataHtml
|
|
863
|
+
if (dataHtml.sign?.tag === 'sign') {
|
|
869
864
|
this.signMenuShow = true
|
|
870
|
-
dataHtml.shift()
|
|
865
|
+
// dataHtml.shift()
|
|
871
866
|
}
|
|
872
867
|
_this.editor = new Editor({
|
|
873
|
-
content: dataHtml
|
|
868
|
+
content: dataHtml.editorJson,
|
|
874
869
|
editable: !_this.readOnly,
|
|
875
870
|
editorProps: {
|
|
876
871
|
handleClickOn(view, pos, node, nodePos, event) {
|
|
877
872
|
let href = _this.editor.getAttributes('link').href
|
|
878
873
|
let id = event.srcElement.innerText
|
|
874
|
+
_this.isInsertLink = event.srcElement.isContentEditable === false;
|
|
879
875
|
_this.bubbleData = _this.interpositionData.filter(item => {
|
|
880
876
|
if (item.id === id || item.id === `${href}`) {
|
|
881
877
|
return item
|
|
@@ -1134,13 +1130,14 @@ export default {
|
|
|
1134
1130
|
//删除注释 文献
|
|
1135
1131
|
delAnnotatedLiterature(id, type) {
|
|
1136
1132
|
const json = this.editor.getJSON()
|
|
1133
|
+
let typeArr = ['taggingMenu', 'nounExplain', 'importArticles', 'importWorks', 'videoLink',
|
|
1134
|
+
'linkCourseware', 'periodical', 'dissertation', 'writings', 'newspaper', 'customize']
|
|
1135
|
+
let historica = []
|
|
1137
1136
|
for (let i = 0; i < json.content.length; i++) {
|
|
1138
1137
|
const item = json.content[i]
|
|
1139
1138
|
if (item && item.content && item.content.length) {
|
|
1140
1139
|
for (let j = 0; j < item.content.length; j++) {
|
|
1141
1140
|
if (item.content[j].marks && item.content[j].marks.length) {
|
|
1142
|
-
let typeArr = ['taggingMenu', 'nounExplain', 'importArticles', 'importWorks', 'videoLink', 'linkCourseware', 'periodical', 'dissertation', 'writings', 'newspaper', 'customize']
|
|
1143
|
-
let historica = []
|
|
1144
1141
|
if (typeArr.indexOf(type) !== -1) {
|
|
1145
1142
|
for (let k = 0; k < this.interpositionData.length; k++) {
|
|
1146
1143
|
if (this.interpositionData[k].id === id) {
|
|
@@ -1731,11 +1728,53 @@ export default {
|
|
|
1731
1728
|
let text = data[i].offsetHeight
|
|
1732
1729
|
if ((pHeight + text) > max) {
|
|
1733
1730
|
const {start, end, size} = this.rows(data[i], max - pHeight)
|
|
1734
|
-
|
|
1731
|
+
let child = data[i].childNodes[0]
|
|
1732
|
+
let childNodes = data[i].childNodes[0].childNodes[0]
|
|
1733
|
+
let fontSize = size
|
|
1734
|
+
let fontFamily = 'Microsoft Yahei'
|
|
1735
|
+
let childBColor = '#fff'
|
|
1736
|
+
let childColor = '#000'
|
|
1737
|
+
let textAlign = window.getComputedStyle(data[i], null).textAlign
|
|
1738
|
+
let color = '#000'
|
|
1739
|
+
let className = data[i].className
|
|
1740
|
+
let signid = data[i].dataset.signid
|
|
1741
|
+
let signidArr = signid?signid.split('-'):[]
|
|
1742
|
+
let label = 'span'
|
|
1743
|
+
if(child && child.nodeName !== '#text'){
|
|
1744
|
+
fontSize = window.getComputedStyle(child, null).fontSize
|
|
1745
|
+
fontFamily = window.getComputedStyle(child, null).fontFamily
|
|
1746
|
+
color = window.getComputedStyle(child, null).color
|
|
1747
|
+
}
|
|
1748
|
+
if(childNodes && childNodes.nodeName === 'MARK'){
|
|
1749
|
+
childBColor = window.getComputedStyle(childNodes, null).backgroundColor
|
|
1750
|
+
childColor = window.getComputedStyle(childNodes, null).color
|
|
1751
|
+
}
|
|
1752
|
+
if(signid && signidArr[0]==='title'){
|
|
1753
|
+
label = 'strong'
|
|
1754
|
+
}else {
|
|
1755
|
+
label = 'span'
|
|
1756
|
+
}
|
|
1757
|
+
if(child && child.nodeName !== '#text'){
|
|
1758
|
+
if(childNodes && childNodes.nodeName === 'MARK'){
|
|
1759
|
+
html += `<p ${signid?'data-signid='+signid:''} style="text-align: ${textAlign}" class="${className}"><${label} style="font-size: ${fontSize}; font-family: ${fontFamily};color:${color}"><mark class="custom-class" data-color="${childBColor}" style="background-color: ${childBColor}; color: ${childColor};">${start.data}</mark></${label}></p>`
|
|
1760
|
+
}else {
|
|
1761
|
+
html += `<p ${signid?'data-signid='+signid:''} style="text-align: ${textAlign}" class="${className}"><${label} style="font-size: ${fontSize}; font-family: ${fontFamily};color:${color}">${start.data}</${label}></p>`
|
|
1762
|
+
}
|
|
1763
|
+
}else {
|
|
1764
|
+
html += `<p ${signid?'data-signid='+signid:''} style="text-align: ${textAlign}" class="${className}"><${label} style="font-size: ${size}px;">${start.data}</${label}></p>`
|
|
1765
|
+
}
|
|
1735
1766
|
this.htmlArr.push(html)
|
|
1736
1767
|
pHeight = 0
|
|
1737
1768
|
html = ''
|
|
1738
|
-
|
|
1769
|
+
if(child && child.nodeName !== '#text'){
|
|
1770
|
+
if(childNodes && childNodes.nodeName === 'MARK'){
|
|
1771
|
+
html += `<p ${signid?'data-signid='+signid:''} style="text-align: ${textAlign}"><${label} style="font-size: ${fontSize}; font-family: ${fontFamily};color:${color}"><mark class="custom-class" data-color="${childBColor}" style="background-color: ${childBColor}; color: ${childColor};">${end.data}</mark></${label}></p>`
|
|
1772
|
+
}else {
|
|
1773
|
+
html += `<p ${signid?'data-signid='+signid:''} style="text-align: ${textAlign}"><${label} style="font-size: ${fontSize}; font-family: ${fontFamily};color:${color}">${end.data}</${label}></p>`
|
|
1774
|
+
}
|
|
1775
|
+
}else {
|
|
1776
|
+
html += `<p ${signid?'data-signid='+signid:''} style="text-align: ${textAlign}"><${label} style="font-size: ${size}px;">${end.data}</${label}></p>`
|
|
1777
|
+
}
|
|
1739
1778
|
pHeight = end.size
|
|
1740
1779
|
} else {
|
|
1741
1780
|
pHeight += text
|
|
@@ -1923,34 +1962,53 @@ export default {
|
|
|
1923
1962
|
return width * fontSize / 10;
|
|
1924
1963
|
},
|
|
1925
1964
|
confirm() {
|
|
1926
|
-
|
|
1927
|
-
let
|
|
1928
|
-
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
|
|
1933
|
-
child: []
|
|
1934
|
-
})
|
|
1965
|
+
let directoryJson = html2json(this.editor.getHTML()).child
|
|
1966
|
+
let editorHtml = this.editor.getHTML()
|
|
1967
|
+
let editorJson = this.editor.getJSON()
|
|
1968
|
+
let sign = { node: 'element', tag: 'sign', child: []}
|
|
1969
|
+
let popupsData = {type: 'interpositionData', data: [...this.interpositionData]}
|
|
1970
|
+
let data = {
|
|
1971
|
+
directoryJson, editorHtml, editorJson, popupsData
|
|
1935
1972
|
}
|
|
1936
|
-
|
|
1973
|
+
if(this.signMenuShow){
|
|
1974
|
+
data.sign = sign
|
|
1975
|
+
}
|
|
1976
|
+
// data.push(this.editor.getJSON())
|
|
1977
|
+
// if (this.signMenuShow) {
|
|
1978
|
+
// data.unshift({
|
|
1979
|
+
// node: 'element',
|
|
1980
|
+
// tag: 'sign',
|
|
1981
|
+
// child: []
|
|
1982
|
+
// })
|
|
1983
|
+
// }
|
|
1984
|
+
// data.push({type: 'interpositionData', data: [...this.interpositionData]})
|
|
1937
1985
|
this.$emit('confirm', data)
|
|
1938
1986
|
},
|
|
1939
1987
|
getConfirm() {
|
|
1940
|
-
|
|
1941
|
-
let
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
|
|
1945
|
-
|
|
1946
|
-
|
|
1947
|
-
child: []
|
|
1948
|
-
})
|
|
1988
|
+
let directoryJson = html2json(this.editor.getHTML()).child
|
|
1989
|
+
let editorHtml = this.editor.getHTML()
|
|
1990
|
+
let editorJson = this.editor.getJSON()
|
|
1991
|
+
let sign = { node: 'element', tag: 'sign', child: []}
|
|
1992
|
+
let popupsData = {type: 'interpositionData', data: [...this.interpositionData]}
|
|
1993
|
+
let data = {
|
|
1994
|
+
directoryJson, editorHtml, editorJson, popupsData
|
|
1949
1995
|
}
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
|
|
1996
|
+
if(this.signMenuShow){
|
|
1997
|
+
data.sign = sign
|
|
1998
|
+
}
|
|
1999
|
+
// let data = []
|
|
2000
|
+
// data.push(this.editor.getJSON())
|
|
2001
|
+
// if (this.signMenuShow) {
|
|
2002
|
+
// data.unshift({
|
|
2003
|
+
// node: 'element',
|
|
2004
|
+
// tag: 'sign',
|
|
2005
|
+
// child: []
|
|
2006
|
+
// })
|
|
2007
|
+
// }
|
|
2008
|
+
// data.push({
|
|
2009
|
+
// type: 'interpositionData',
|
|
2010
|
+
// data: this.interpositionData
|
|
2011
|
+
// })
|
|
1954
2012
|
return data
|
|
1955
2013
|
},
|
|
1956
2014
|
// 上传进度
|
|
@@ -2037,7 +2095,6 @@ export default {
|
|
|
2037
2095
|
// const b = await this.signIdData('paragraph')
|
|
2038
2096
|
const t = await this.signIdData('enclosure')
|
|
2039
2097
|
const r = await this.signIdData('reference')
|
|
2040
|
-
console.log('menusText', this.menusText)
|
|
2041
2098
|
const html = butJson(this.editor, this.menusText)[v].html
|
|
2042
2099
|
if (r === -1) {
|
|
2043
2100
|
const last = this.editor.state.selection.$anchor.path[0].content.size
|
|
@@ -2331,6 +2388,7 @@ export default {
|
|
|
2331
2388
|
},
|
|
2332
2389
|
|
|
2333
2390
|
async butTap(data, key, childKey) {
|
|
2391
|
+
console.log(data, key, childKey)
|
|
2334
2392
|
// 快捷排版
|
|
2335
2393
|
if (data.key === 'shortcut') {
|
|
2336
2394
|
const menusHtml = butJson(this.editor, this.menusText)[data.key].menuKeys
|
|
@@ -2529,7 +2587,6 @@ export default {
|
|
|
2529
2587
|
const index = this.editor.state.selection.$anchor.path[1]
|
|
2530
2588
|
const json = this.editor.getJSON()
|
|
2531
2589
|
const margin = json.content[index].attrs.margin
|
|
2532
|
-
console.log('attrs', json.content[index].attrs)
|
|
2533
2590
|
const lineHeight = json.content[index].attrs.lineHeightId
|
|
2534
2591
|
if (key.key === 'Retraction') {
|
|
2535
2592
|
this.showRetractionPopup = true
|
|
@@ -2681,6 +2738,11 @@ export default {
|
|
|
2681
2738
|
}
|
|
2682
2739
|
// 文献
|
|
2683
2740
|
if (key.key === 'literatureMenu' && childKey) {
|
|
2741
|
+
console.log(this.isInsertLink)
|
|
2742
|
+
if (this.isInsertLink){
|
|
2743
|
+
Message({type: 'text', promptContent: '光标位置不可编辑'})
|
|
2744
|
+
return
|
|
2745
|
+
}
|
|
2684
2746
|
if (childKey.key === 'periodical') {
|
|
2685
2747
|
Message({
|
|
2686
2748
|
type: 'input',
|
|
@@ -2997,7 +3059,7 @@ export default {
|
|
|
2997
3059
|
const selectionIndex = this.editor.state.selection.$anchor.path[1]
|
|
2998
3060
|
const json = this.editor.getJSON()
|
|
2999
3061
|
const textAlign = json.content[selectionIndex].attrs.textAlign
|
|
3000
|
-
const lineHeightId = json.content[selectionIndex].attrs.lineHeightId
|
|
3062
|
+
// const lineHeightId = json.content[selectionIndex].attrs.lineHeightId
|
|
3001
3063
|
const signId = json.content[selectionIndex].attrs.signId
|
|
3002
3064
|
const titleId = json.content[selectionIndex].attrs.titleId
|
|
3003
3065
|
this.editor.commands.setMargin(`${this.paragraph.top}px ${this.paragraph.right}px ${this.paragraph.bottom}px ${this.paragraph.left}px`)
|
|
@@ -3008,10 +3070,10 @@ export default {
|
|
|
3008
3070
|
this.editor.commands.unsetTextAlign()
|
|
3009
3071
|
this.editor.commands.setTextAlign(textAlign)
|
|
3010
3072
|
}
|
|
3011
|
-
if (!lineHeightId === false) {
|
|
3012
|
-
|
|
3013
|
-
|
|
3014
|
-
}
|
|
3073
|
+
// if (!lineHeightId === false) {
|
|
3074
|
+
// this.editor.commands.unsetLineHeightId()
|
|
3075
|
+
// this.editor.commands.setLineHeightId(lineHeightId)
|
|
3076
|
+
// }
|
|
3015
3077
|
if (!signId === false) {
|
|
3016
3078
|
this.editor.commands.unsetSignId()
|
|
3017
3079
|
this.editor.commands.setSignId(signId)
|
|
@@ -3063,8 +3125,12 @@ export default {
|
|
|
3063
3125
|
this.isShowExegesis = false
|
|
3064
3126
|
this.isShowPopup = false
|
|
3065
3127
|
},
|
|
3066
|
-
nounExplainSubmit() {
|
|
3067
|
-
this
|
|
3128
|
+
nounExplainSubmit(bubbleData) {
|
|
3129
|
+
if(this.$refs.textarea.length){
|
|
3130
|
+
this.taggingText = this.$refs.textarea[0].getContent()
|
|
3131
|
+
}else {
|
|
3132
|
+
this.taggingText = this.$refs.textarea.getContent()
|
|
3133
|
+
}
|
|
3068
3134
|
if (!this.taggingText) {
|
|
3069
3135
|
Message({type: 'text', promptContent: '名词描述不能为空'})
|
|
3070
3136
|
return
|
|
@@ -3078,13 +3144,14 @@ export default {
|
|
|
3078
3144
|
exegesis: this.tipTitle,
|
|
3079
3145
|
text: this.taggingText
|
|
3080
3146
|
}
|
|
3081
|
-
if (this.exegesisType === 'edit') {
|
|
3147
|
+
if (this.exegesisType === 'edit' || (bubbleData&&bubbleData.edit)) {
|
|
3082
3148
|
this.interpositionData.forEach(item => {
|
|
3083
3149
|
if (item.id === this.bubbleData.id) {
|
|
3084
3150
|
item.text = this.taggingText
|
|
3085
3151
|
this.bubbleData = item
|
|
3086
3152
|
}
|
|
3087
3153
|
})
|
|
3154
|
+
bubbleData.isShow = false
|
|
3088
3155
|
} else {
|
|
3089
3156
|
this.editor.chain().setLink({href: `${dataInfo.id}`}).setUnderline().insertContentAt(to, ` `).setTextSelection({
|
|
3090
3157
|
from: to,
|
|
@@ -3301,7 +3368,6 @@ export default {
|
|
|
3301
3368
|
if (t === -1) this.editor.chain().focus().insertContentAt(last, html).run()
|
|
3302
3369
|
let last1 = this.editor.state.selection.$anchor.path[0].content.size
|
|
3303
3370
|
// const num = this.selectionPath('reference')
|
|
3304
|
-
// console.log(num)
|
|
3305
3371
|
this.editor.chain().focus().insertContentAt(last1, html2).run()
|
|
3306
3372
|
},
|
|
3307
3373
|
|
|
@@ -3345,7 +3411,7 @@ export default {
|
|
|
3345
3411
|
}
|
|
3346
3412
|
}
|
|
3347
3413
|
}
|
|
3348
|
-
//可以为0,但不能以0开头
|
|
3414
|
+
//可以为0,但不能以 0 开头
|
|
3349
3415
|
if (val.startsWith("0") && val.length > 1) {
|
|
3350
3416
|
val = val.substring(1, val.length);
|
|
3351
3417
|
}
|
|
@@ -3411,19 +3477,21 @@ export default {
|
|
|
3411
3477
|
.read-only-p {
|
|
3412
3478
|
width: 100%;
|
|
3413
3479
|
height: 100%;
|
|
3480
|
+
white-space:pre-wrap;
|
|
3414
3481
|
}
|
|
3415
3482
|
|
|
3416
3483
|
:deep(.read-only-p p) {
|
|
3417
3484
|
line-height: 24px;
|
|
3418
3485
|
text-align: justify;
|
|
3486
|
+
white-space:pre-wrap;
|
|
3419
3487
|
}
|
|
3420
3488
|
|
|
3421
3489
|
:deep(p[data-signid="subject"]) {
|
|
3422
|
-
|
|
3490
|
+
padding-bottom: 5px;
|
|
3423
3491
|
}
|
|
3424
3492
|
|
|
3425
3493
|
:deep(.author) {
|
|
3426
|
-
padding-bottom:
|
|
3494
|
+
padding-bottom: 22px;
|
|
3427
3495
|
}
|
|
3428
3496
|
|
|
3429
3497
|
:deep(.text) {
|
|
@@ -3905,7 +3973,8 @@ li {
|
|
|
3905
3973
|
|
|
3906
3974
|
.tip-btnBox > div {
|
|
3907
3975
|
width: 60px;
|
|
3908
|
-
|
|
3976
|
+
height: 20px;
|
|
3977
|
+
line-height: 18px;
|
|
3909
3978
|
margin-right: 10px;
|
|
3910
3979
|
border-radius: 3px;
|
|
3911
3980
|
border: 1px solid #000000;
|
|
@@ -3915,7 +3984,8 @@ li {
|
|
|
3915
3984
|
|
|
3916
3985
|
.tip-btn {
|
|
3917
3986
|
width: 60px;
|
|
3918
|
-
|
|
3987
|
+
height: 20px;
|
|
3988
|
+
line-height: 18px;
|
|
3919
3989
|
padding: 0 4px;
|
|
3920
3990
|
border-radius: 3px;
|
|
3921
3991
|
border: 1px solid #000000;
|
|
@@ -4033,7 +4103,7 @@ li {
|
|
|
4033
4103
|
.p-popup-box {
|
|
4034
4104
|
width: 100%;
|
|
4035
4105
|
height: 100%;
|
|
4036
|
-
padding: 10px;
|
|
4106
|
+
padding: 5px 10px 10px 10px;
|
|
4037
4107
|
box-sizing: border-box;
|
|
4038
4108
|
}
|
|
4039
4109
|
|
|
@@ -4041,7 +4111,7 @@ li {
|
|
|
4041
4111
|
display: flex;
|
|
4042
4112
|
flex-direction: row;
|
|
4043
4113
|
justify-content: space-between;
|
|
4044
|
-
margin-bottom:
|
|
4114
|
+
margin-bottom: 5px;
|
|
4045
4115
|
}
|
|
4046
4116
|
|
|
4047
4117
|
.p-popup-title-name {
|
|
@@ -4086,4 +4156,8 @@ li {
|
|
|
4086
4156
|
flex-direction: column;
|
|
4087
4157
|
justify-content: space-between;
|
|
4088
4158
|
}
|
|
4159
|
+
:deep(p){
|
|
4160
|
+
white-space:pre-wrap;
|
|
4161
|
+
word-break:break-all;
|
|
4162
|
+
}
|
|
4089
4163
|
</style>
|