zydx-plus 1.35.536 → 1.35.538
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 +2 -2
- package/src/components/chat/src/chat.vue +5 -1
- package/src/components/choice/src/choice.vue +6 -5
- package/src/components/dragPopup2/src/dragPopup.vue +3 -1
- package/src/components/editor/src/editor.vue +35 -22
- package/src/components/seek/src/word.css +2 -1
- package/src/components/seek/src/word.vue +1 -1
- package/src/components/word/src/word.css +2 -1
- package/src/components/word/src/word.vue +14 -10
- package/src/index.js +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zydx-plus",
|
|
3
|
-
"version": "1.35.
|
|
3
|
+
"version": "1.35.538",
|
|
4
4
|
"description": "Vue.js",
|
|
5
5
|
"main": "src/index.js",
|
|
6
6
|
"files": [
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"js-audio-recorder": "^1.0.7",
|
|
49
49
|
"react": "^18.2.0",
|
|
50
50
|
"react-dom": "^18.2.0",
|
|
51
|
-
"tldraw": "^2.
|
|
51
|
+
"tldraw": "^2.4.6",
|
|
52
52
|
"@tldraw/editor": "^2.0.2",
|
|
53
53
|
"buffer": "^5.7.1",
|
|
54
54
|
"interactjs": "^1.10.27"
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
<span>AI回答</span>
|
|
41
41
|
<span>(以下内容为AI生成,请注意辨别信息真伪)</span>
|
|
42
42
|
</div>
|
|
43
|
-
<div class="operate" v-if="currentMessage">
|
|
43
|
+
<div :class="{'operate':true, 'operate-position': isHideInput }" v-if="currentMessage">
|
|
44
44
|
<div @click="send('')" :class="{'disabled': disabled}">
|
|
45
45
|
<i class="theme-text iconfont zydx-a-zhongzhiAi"></i>
|
|
46
46
|
<span class="theme-text">重新生成</span>
|
|
@@ -430,6 +430,10 @@ export default {
|
|
|
430
430
|
font-size: 12px;
|
|
431
431
|
padding-right: 14px;
|
|
432
432
|
}
|
|
433
|
+
.AI-tips-line .operate-position{
|
|
434
|
+
width: 130px;
|
|
435
|
+
padding-right: 0;
|
|
436
|
+
}
|
|
433
437
|
.operate >div{
|
|
434
438
|
float: left;
|
|
435
439
|
cursor: pointer;
|
|
@@ -7,14 +7,14 @@
|
|
|
7
7
|
<em>({{ text }})</em>
|
|
8
8
|
</div>
|
|
9
9
|
<div class="choice-title-right">
|
|
10
|
-
<button class="but" @click="add('correct')" v-if="!single">增正确项</button>
|
|
11
|
-
<button class="but" @click="add('interfere')">增干扰项</button>
|
|
10
|
+
<button class="sees-but" @click="add('correct')" v-if="!single">增正确项</button>
|
|
11
|
+
<button class="sees-but" @click="add('interfere')">增干扰项</button>
|
|
12
12
|
</div>
|
|
13
13
|
</div>
|
|
14
14
|
<div class="choice-list" v-for="(item,index) in list">
|
|
15
15
|
<div class="list-title" :class="{'lv-color': item.type === 'correct','red-color': item.type === 'interfere'}">
|
|
16
16
|
<span>{{ item.letter }} . {{ item.title }}</span>
|
|
17
|
-
<button class="but" @click="alternative(index)">增加备选</button>
|
|
17
|
+
<button class="sees-but" @click="alternative(index)">增加备选</button>
|
|
18
18
|
</div>
|
|
19
19
|
<div class="list-cont">
|
|
20
20
|
<div class="list-cont-li" v-for="(it,ins) in item.list">
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
<div class="choice-list">
|
|
32
32
|
<div class="list-title">
|
|
33
33
|
<span>试题选项:<em>(必填项)</em></span>
|
|
34
|
-
<button class="but" @click="addOption">增加选项</button>
|
|
34
|
+
<button class="sees-but" @click="addOption">增加选项</button>
|
|
35
35
|
</div>
|
|
36
36
|
<div class="list-cont">
|
|
37
37
|
<div class="list-cont-li" v-for="(item,index) in list">
|
|
@@ -298,9 +298,10 @@ export default {
|
|
|
298
298
|
font-size: 12px;
|
|
299
299
|
font-style: normal;
|
|
300
300
|
}
|
|
301
|
-
.but{
|
|
301
|
+
.sees-but{
|
|
302
302
|
margin-left: 1px;
|
|
303
303
|
font-size: 12px;
|
|
304
|
+
line-height: 17px;
|
|
304
305
|
background-color: transparent;
|
|
305
306
|
border: 1px solid #000;
|
|
306
307
|
border-radius: 3px;
|
|
@@ -217,7 +217,9 @@ export default {
|
|
|
217
217
|
this.x = this.left + (wid-this.initWidth)/2
|
|
218
218
|
}
|
|
219
219
|
});
|
|
220
|
-
|
|
220
|
+
setTimeout(() => {
|
|
221
|
+
document.getElementById(this.id).classList.add('zIndex10000')
|
|
222
|
+
},0)
|
|
221
223
|
},
|
|
222
224
|
computed: {
|
|
223
225
|
position() {
|
|
@@ -1367,7 +1367,7 @@ export default {
|
|
|
1367
1367
|
},
|
|
1368
1368
|
//修改模板类型
|
|
1369
1369
|
async changeTemplateType() {
|
|
1370
|
-
const oldFormatWriteNewFormat = (oldJson) => {
|
|
1370
|
+
/*const oldFormatWriteNewFormat = (oldJson) => {
|
|
1371
1371
|
let newJson = this.editor.getJSON()
|
|
1372
1372
|
if (oldJson.content.length === 1 && !oldJson.content[0].content) {
|
|
1373
1373
|
return
|
|
@@ -1418,7 +1418,7 @@ export default {
|
|
|
1418
1418
|
newJson.content.splice(remainIndex + index + 1, 0, item)
|
|
1419
1419
|
})
|
|
1420
1420
|
this.editor.chain().setContent(newJson).run()
|
|
1421
|
-
}
|
|
1421
|
+
}*/
|
|
1422
1422
|
const htmlFormat = butJson(this.editor, this.menusText)['switchingFormat'].menuKeys
|
|
1423
1423
|
let oldJson = this.editor.getJSON()
|
|
1424
1424
|
// 自由排版
|
|
@@ -1456,7 +1456,7 @@ export default {
|
|
|
1456
1456
|
'textMenu', 'color', 'interposition']
|
|
1457
1457
|
this.organizeButton()
|
|
1458
1458
|
this.interpositionData = []
|
|
1459
|
-
oldFormatWriteNewFormat(oldJson)
|
|
1459
|
+
// oldFormatWriteNewFormat(oldJson)
|
|
1460
1460
|
}
|
|
1461
1461
|
// 公文版式
|
|
1462
1462
|
if (this.templateType === 'officialDocumentFormat' && !this.readOnly) {
|
|
@@ -1468,7 +1468,7 @@ export default {
|
|
|
1468
1468
|
'titleMenu', 'color', 'interposition']
|
|
1469
1469
|
this.organizeButton()
|
|
1470
1470
|
this.interpositionData = []
|
|
1471
|
-
oldFormatWriteNewFormat(oldJson)
|
|
1471
|
+
// oldFormatWriteNewFormat(oldJson)
|
|
1472
1472
|
}
|
|
1473
1473
|
// 新闻版式
|
|
1474
1474
|
if (this.templateType === 'newsFormat' && !this.readOnly) {
|
|
@@ -1480,7 +1480,7 @@ export default {
|
|
|
1480
1480
|
'titleMenu', 'color', 'interposition']
|
|
1481
1481
|
this.organizeButton()
|
|
1482
1482
|
this.interpositionData = []
|
|
1483
|
-
oldFormatWriteNewFormat(oldJson)
|
|
1483
|
+
// oldFormatWriteNewFormat(oldJson)
|
|
1484
1484
|
}
|
|
1485
1485
|
// 论文版式
|
|
1486
1486
|
if (this.templateType === 'paperFormat' && !this.readOnly) {
|
|
@@ -1492,7 +1492,7 @@ export default {
|
|
|
1492
1492
|
'titleMenu', 'color', 'interposition']
|
|
1493
1493
|
this.organizeButton()
|
|
1494
1494
|
this.interpositionData = []
|
|
1495
|
-
oldFormatWriteNewFormat(oldJson)
|
|
1495
|
+
// oldFormatWriteNewFormat(oldJson)
|
|
1496
1496
|
}
|
|
1497
1497
|
},
|
|
1498
1498
|
// 修改边距
|
|
@@ -3008,29 +3008,42 @@ export default {
|
|
|
3008
3008
|
},
|
|
3009
3009
|
|
|
3010
3010
|
async butTap(data, key, childKey) {
|
|
3011
|
+
if (!key.key)return
|
|
3011
3012
|
// 切换版式
|
|
3012
3013
|
if (data.key === 'switchingFormat') {
|
|
3013
|
-
this.templateType = key.key
|
|
3014
|
-
if (this.templateType === 'freeTypesetting') {
|
|
3015
|
-
|
|
3016
|
-
await this.changeTemplateType()
|
|
3017
|
-
}
|
|
3018
|
-
if(this.templateType === 'bookLayout'){
|
|
3019
|
-
|
|
3020
|
-
await this.changeTemplateType()
|
|
3021
|
-
}
|
|
3022
|
-
if (this.templateType === 'officialDocumentFormat') {
|
|
3023
3014
|
|
|
3024
|
-
|
|
3025
|
-
}
|
|
3026
|
-
if (this.templateType === 'newsFormat') {
|
|
3015
|
+
let text = this.editor.getText()
|
|
3027
3016
|
|
|
3028
|
-
|
|
3017
|
+
let changeTemplate = async ()=>{
|
|
3018
|
+
this.templateType = key.key
|
|
3019
|
+
if (this.templateType === 'freeTypesetting') {
|
|
3020
|
+
await this.changeTemplateType()
|
|
3021
|
+
}
|
|
3022
|
+
if (this.templateType === 'bookLayout'){
|
|
3023
|
+
await this.changeTemplateType()
|
|
3024
|
+
}
|
|
3025
|
+
if (this.templateType === 'officialDocumentFormat') {
|
|
3026
|
+
await this.changeTemplateType()
|
|
3027
|
+
}
|
|
3028
|
+
if (this.templateType === 'newsFormat') {
|
|
3029
|
+
await this.changeTemplateType()
|
|
3030
|
+
}
|
|
3031
|
+
if (this.templateType === 'paperFormat') {
|
|
3032
|
+
await this.changeTemplateType()
|
|
3033
|
+
}
|
|
3029
3034
|
}
|
|
3030
|
-
if (this.templateType === 'paperFormat') {
|
|
3031
3035
|
|
|
3032
|
-
|
|
3036
|
+
if(!text){
|
|
3037
|
+
await changeTemplate()
|
|
3038
|
+
return
|
|
3033
3039
|
}
|
|
3040
|
+
await Message({type: 'text',
|
|
3041
|
+
promptContent: '点击确定将切换版式并清空以编辑内容,如需保留内容请另行复制保存!!!'})
|
|
3042
|
+
.then(async () => {
|
|
3043
|
+
await changeTemplate()
|
|
3044
|
+
}).catch((err) => {
|
|
3045
|
+
console.log('取消', err)
|
|
3046
|
+
})
|
|
3034
3047
|
}
|
|
3035
3048
|
// 快捷排版
|
|
3036
3049
|
if (data.key === 'shortcut') {
|
|
@@ -136,7 +136,7 @@
|
|
|
136
136
|
float: left;
|
|
137
137
|
width: 50%;
|
|
138
138
|
}
|
|
139
|
-
.but{
|
|
139
|
+
.sees-but{
|
|
140
140
|
margin-left: 1px;
|
|
141
141
|
font-size: 12px;
|
|
142
142
|
background-color: transparent;
|
|
@@ -146,6 +146,7 @@
|
|
|
146
146
|
cursor: pointer;
|
|
147
147
|
min-width: 60px;
|
|
148
148
|
height: 21px;
|
|
149
|
+
line-height: 17px;
|
|
149
150
|
text-align-last: justify;
|
|
150
151
|
word-break: break-all;
|
|
151
152
|
text-justify: distribute;
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
v-html="item.title"></em><em v-if="scoreShow">({{ item.score }}分)</em>
|
|
11
11
|
<i class="subject-but" ref="subject">
|
|
12
12
|
<!-- <b :style="{right: -item.right + 'px', top: item.top + 'px'}" ref="b"> -->
|
|
13
|
-
<button class="but" :disabled="it.disabled" v-for="(it) in item.customBut" :class="{'buts-actives theme-text': it.active&&it.butStart,'buts-disabled': it.disabled}" @click="customButTap(it,item)">{{ it.active? it.nameActive: it.name }}</button>
|
|
13
|
+
<button class="sees-but" :disabled="it.disabled" v-for="(it) in item.customBut" :class="{'buts-actives theme-text': it.active&&it.butStart,'buts-disabled': it.disabled}" @click="customButTap(it,item)">{{ it.active? it.nameActive: it.name }}</button>
|
|
14
14
|
<!-- </b> -->
|
|
15
15
|
</i>
|
|
16
16
|
</span>
|
|
@@ -136,7 +136,7 @@
|
|
|
136
136
|
float: left;
|
|
137
137
|
width: 50%;
|
|
138
138
|
}
|
|
139
|
-
.but{
|
|
139
|
+
.sees-but{
|
|
140
140
|
margin-left: 5px;
|
|
141
141
|
font-size: 12px;
|
|
142
142
|
background-color: transparent;
|
|
@@ -146,6 +146,7 @@
|
|
|
146
146
|
cursor: pointer;
|
|
147
147
|
min-width: 60px;
|
|
148
148
|
height: 21px;
|
|
149
|
+
line-height: 17px;
|
|
149
150
|
}
|
|
150
151
|
.buts-actives{
|
|
151
152
|
color: #4B0C77 !important;
|
|
@@ -24,14 +24,14 @@
|
|
|
24
24
|
v-html="item.title"></em><em v-if="scoreShow">({{ item.score }}分)</em>
|
|
25
25
|
<i class="subject-but" ref="subject">
|
|
26
26
|
<b :style="{right: -item.right + 'px', top: item.top + 'px'}" v-if="butShow" ref="b">
|
|
27
|
-
<button class="but" @click="modify(item)">修改</button>
|
|
28
|
-
<button class="but" @click="del(item)">删除</button>
|
|
27
|
+
<button class="sees-but" @click="modify(item)">修改</button>
|
|
28
|
+
<button class="sees-but" @click="del(item)">删除</button>
|
|
29
29
|
</b>
|
|
30
30
|
<b :style="{right: -item.right + 'px', top: item.top + 'px'}" v-if="replace" ref="b">
|
|
31
|
-
<button class="but" @click="replaceTap(item,index)">{{ replaceText }}</button>
|
|
31
|
+
<button class="sees-but" @click="replaceTap(item,index)">{{ replaceText }}</button>
|
|
32
32
|
</b>
|
|
33
33
|
<b :style="{right: -item.right + 'px', top: item.top + 'px'}" v-if="choice" ref="b">
|
|
34
|
-
<button class="but"
|
|
34
|
+
<button class="sees-but"
|
|
35
35
|
@click="choiceTap(item,index)"
|
|
36
36
|
:disabled="!item.choice"
|
|
37
37
|
:style="{border: !item.choice?'1px solid #ccc': '1px solid #000'}">
|
|
@@ -42,20 +42,20 @@
|
|
|
42
42
|
</b>
|
|
43
43
|
<b :style="{right: -item.right + 'px', top: item.top + 'px'}" v-if="collapse"
|
|
44
44
|
ref="b">
|
|
45
|
-
<button class="but" :class="{'buts-actives': item.open}"
|
|
45
|
+
<button class="sees-but" :class="{'buts-actives': item.open}"
|
|
46
46
|
@click="openOption(index)">{{ item.open ? '收起选项' : '试题选项' }}</button>
|
|
47
|
-
<button class="but" :class="{'buts-actives': item.replace}"
|
|
47
|
+
<button class="sees-but" :class="{'buts-actives': item.replace}"
|
|
48
48
|
@click="statistics(index)">{{ item.replace ? '收统计表' : '统计表' }}</button>
|
|
49
49
|
</b>
|
|
50
50
|
<b :style="{right: -item.right + 'px', top: item.top + 'px'}" v-if="reasoning"
|
|
51
51
|
ref="b">
|
|
52
|
-
<button class="but" :class="{'buts-actives': item.reasoning}"
|
|
52
|
+
<button class="sees-but" :class="{'buts-actives': item.reasoning}"
|
|
53
53
|
@click="openReasoning(index)">{{ item.reasoning ? reasoningBut[0].startName : reasoningBut[0].endName }}</button>
|
|
54
|
-
<button class="but" :class="{'buts-actives': item.review}"
|
|
54
|
+
<button class="sees-but" :class="{'buts-actives': item.review}"
|
|
55
55
|
@click="review(index)">{{ item.review ? reasoningBut[1].startName : reasoningBut[1].endName }}</button>
|
|
56
56
|
</b>
|
|
57
57
|
<b :style="{right: -item.right + 'px', top: item.top + 'px'}" v-if="customBut.length > 0" ref="b">
|
|
58
|
-
<button class="but" v-for="(it,ind) in customBut" :class="{'buts-actives': it.active}" @click="customButTap(it,item)">{{ it.name }}</button>
|
|
58
|
+
<button class="sees-but" v-for="(it,ind) in customBut" :class="{'buts-actives': it.active}" @click="customButTap(it,item)">{{ it.name }}</button>
|
|
59
59
|
</b>
|
|
60
60
|
</i>
|
|
61
61
|
</span>
|
|
@@ -104,7 +104,7 @@
|
|
|
104
104
|
</div>
|
|
105
105
|
<div class="table" v-if="item.replace&&collapse&&item.quesType !== '102_1'">
|
|
106
106
|
<table border="0" cellspacing="0" cellpadding="0">
|
|
107
|
-
<tr>
|
|
107
|
+
<tr v-if="!teacherData.classifyName || teacherData.classifyName.value != 'aQuestion'">
|
|
108
108
|
<td :colspan="5" class="tab-title">答题情况统计表</td>
|
|
109
109
|
</tr>
|
|
110
110
|
<tr>
|
|
@@ -148,6 +148,10 @@ export default {
|
|
|
148
148
|
}
|
|
149
149
|
},
|
|
150
150
|
props: {
|
|
151
|
+
teacherData: {
|
|
152
|
+
type: Object,
|
|
153
|
+
default: () => ({})
|
|
154
|
+
},
|
|
151
155
|
data: {
|
|
152
156
|
type: Array,
|
|
153
157
|
default: []
|