askbot-dragon 1.7.38-beta → 1.7.41-beta

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.
Files changed (95) hide show
  1. package/README.md +27 -27
  2. package/babel.config.js +6 -6
  3. package/dragon.iml +7 -7
  4. package/package.json +55 -56
  5. package/public/index.html +75 -73
  6. package/src/App.vue +31 -31
  7. package/src/api/index.js +1 -1
  8. package/src/api/mock.http +2 -2
  9. package/src/api/requestUrl.js +185 -185
  10. package/src/assets/js/AliyunlssUtil.js +117 -141
  11. package/src/assets/js/Base64Util.js +22 -22
  12. package/src/assets/js/common.js +252 -252
  13. package/src/assets/js/hammer.js +89 -100
  14. package/src/assets/js/script.js +36 -36
  15. package/src/assets/less/common.css +6773 -6773
  16. package/src/assets/less/converSationContainer/common.less +192 -199
  17. package/src/assets/less/converSationContainer/converSatonContainer.less +493 -493
  18. package/src/assets/less/iconfont.css +37 -37
  19. package/src/assets/less/ticketMessage.less +294 -294
  20. package/src/components/ActionAlertIframe.vue +154 -177
  21. package/src/components/AiGuide.vue +471 -438
  22. package/src/components/AnswerDocknowledge.vue +1087 -1081
  23. package/src/components/AnswerVoice.vue +285 -285
  24. package/src/components/AskIFrame.vue +15 -15
  25. package/src/components/ConversationContainer.vue +10875 -10764
  26. package/src/components/FileType.vue +86 -86
  27. package/src/components/Message.vue +27 -27
  28. package/src/components/MyEditor.vue +341 -342
  29. package/src/components/QwFeedback.vue +301 -301
  30. package/src/components/actionSatisfaction.vue +107 -107
  31. package/src/components/actionSendToBot.vue +62 -62
  32. package/src/components/answerDissatisfaction.vue +62 -62
  33. package/src/components/answerRadio.vue +211 -204
  34. package/src/components/ask-components/DissatisfactionOptions.vue +57 -57
  35. package/src/components/ask-components/Msgloading.vue +37 -37
  36. package/src/components/ask-components/SatisfactionV2.vue +15 -15
  37. package/src/components/askVideo.vue +139 -162
  38. package/src/components/assetDetails.vue +378 -378
  39. package/src/components/assetMessage.vue +228 -228
  40. package/src/components/associationIntention.vue +374 -378
  41. package/src/components/attachmentPreview.vue +90 -90
  42. package/src/components/botActionSatisfactor.vue +68 -68
  43. package/src/components/chatContent.vue +513 -513
  44. package/src/components/feedBack.vue +136 -136
  45. package/src/components/fielListView.vue +351 -351
  46. package/src/components/file/AliyunOssComponents.vue +108 -108
  47. package/src/components/formTemplate.vue +3497 -3501
  48. package/src/components/imgView.vue +31 -31
  49. package/src/components/intelligentSummary.vue +227 -231
  50. package/src/components/kkview.vue +1138 -1138
  51. package/src/components/loadingProcess.vue +164 -164
  52. package/src/components/markDownText.vue +197 -197
  53. package/src/components/message/ActionAlertIframe.vue +112 -112
  54. package/src/components/message/ShopMessage.vue +164 -164
  55. package/src/components/message/TextMessage.vue +924 -928
  56. package/src/components/message/TicketMessage.vue +201 -201
  57. package/src/components/message/swiper/index.js +4 -4
  58. package/src/components/message/swiper/ticketSwiper.vue +503 -503
  59. package/src/components/message/swiper/ticketSwiperItem.vue +61 -61
  60. package/src/components/msgLoading.vue +231 -231
  61. package/src/components/myPopup.vue +70 -70
  62. package/src/components/pdfPosition.vue +1334 -1514
  63. package/src/components/popup.vue +227 -227
  64. package/src/components/previewDoc.vue +247 -251
  65. package/src/components/previewPdf.vue +779 -866
  66. package/src/components/receiverMessagePlatform.vue +65 -65
  67. package/src/components/recommend.vue +80 -80
  68. package/src/components/selector/hOption.vue +20 -20
  69. package/src/components/selector/hSelector.vue +199 -199
  70. package/src/components/selector/hWrapper.vue +216 -216
  71. package/src/components/senderMessagePlatform.vue +50 -50
  72. package/src/components/source/BotMessage.vue +24 -24
  73. package/src/components/source/CustomMessage.vue +24 -24
  74. package/src/components/test.vue +260 -260
  75. package/src/components/tree.vue +307 -307
  76. package/src/components/utils/AliyunIssUtil.js +103 -103
  77. package/src/components/utils/ckeditor.js +185 -185
  78. package/src/components/utils/format_date.js +25 -25
  79. package/src/components/utils/index.js +6 -6
  80. package/src/components/utils/math_utils.js +29 -29
  81. package/src/components/voiceComponent.vue +119 -119
  82. package/src/components/welcomeKnowledgeFile.vue +340 -344
  83. package/src/components/welcomeLlmCard.vue +140 -144
  84. package/src/components/welcomeSuggest.vue +97 -97
  85. package/src/main.js +57 -75
  86. package/vue.config.js +54 -54
  87. package/src/components/newPdfPosition.vue +0 -878
  88. package/src/components/pagination.vue +0 -129
  89. package/src/components/preview/docView.vue +0 -107
  90. package/src/components/preview/excelView.vue +0 -160
  91. package/src/components/preview/newPositionPreview.vue +0 -322
  92. package/src/components/preview/pdfView.vue +0 -746
  93. package/src/locales/cn.json +0 -72
  94. package/src/locales/en.json +0 -73
  95. package/src/locales/jp.json +0 -73
@@ -1,32 +1,32 @@
1
- <template>
2
- <div>
3
- <el-image-viewer :zIndex="999999" :on-close="closeViewer" :url-list="urlList" />
4
- </div>
5
- </template>
6
-
7
- <script>
8
- import ElementUI from 'element-ui';
9
- // import ElImageViewer from ElementUI.Image.components.ImageViewer;
10
-
11
- export default {
12
- name: "imgView",
13
- components: {
14
- ElImageViewer: ElementUI.Image.components.ImageViewer
15
- },
16
- data () {
17
- return {};
18
- },
19
- props: ["urlList"],
20
- methods: {
21
- closeViewer () {
22
- // 关闭组件后从父级dom销毁这个挂载
23
- if (this.$el.parentNode) {
24
- this.$el.parentNode.removeChild(this.$el);
25
- }
26
- this.$emit("closeViewer");
27
- },
28
- },
29
- };
30
- </script>
31
-
1
+ <template>
2
+ <div>
3
+ <el-image-viewer :zIndex="999999" :on-close="closeViewer" :url-list="urlList" />
4
+ </div>
5
+ </template>
6
+
7
+ <script>
8
+ import ElementUI from 'element-ui';
9
+ // import ElImageViewer from ElementUI.Image.components.ImageViewer;
10
+
11
+ export default {
12
+ name: "imgView",
13
+ components: {
14
+ ElImageViewer: ElementUI.Image.components.ImageViewer
15
+ },
16
+ data () {
17
+ return {};
18
+ },
19
+ props: ["urlList"],
20
+ methods: {
21
+ closeViewer () {
22
+ // 关闭组件后从父级dom销毁这个挂载
23
+ if (this.$el.parentNode) {
24
+ this.$el.parentNode.removeChild(this.$el);
25
+ }
26
+ this.$emit("closeViewer");
27
+ },
28
+ },
29
+ };
30
+ </script>
31
+
32
32
  <style scoped></style>
@@ -1,232 +1,228 @@
1
- <template>
2
- <div class="intelligentSummary" :class="tagIds.length != 0 ? 'float_intelligentSummary' : ''" id="intelligentSummary">
3
- <div class="summaryHeader">
4
- <div class="left">
5
- <i class="iconfont guoran-tongyichicun-write-29-jiqiren"></i>
6
- <span>智能摘要</span>
7
- </div>
8
- <div class="right">
9
- <div class="regenerationBtn" @click="regeneration">
10
- <template v-if="!isLoading">重新生成</template>
11
- <template v-else>
12
- <img
13
- height="20px"
14
- width="20px"
15
- src="../assets/image/loading.gif"
16
- alt
17
- srcset
18
- style="margin-right: 6px"
19
- />
20
- <span>生成中</span>
21
- </template>
22
- </div>
23
- <i class="iconfont guoran-tongyichicun-shouqi" @click="closeSummary"></i>
24
- </div>
25
- </div>
26
- <div class="summaryContent">
27
- <span>{{ typedContent }}</span>
28
- </div>
29
- <div class="intelligentBottom" v-if="recommendQuestions.length > 0 && !formKnowledgeManagement">
30
- <div class="intelligentQues"
31
- v-for="(item,index) in recommendQuestions"
32
- :key="index"
33
- @click="recommendQues(item)"
34
- >
35
- {{ item }}
36
- </div>
37
- </div>
38
- </div>
39
- </template>
40
-
41
- <script>
42
- export default {
43
- name: "intelligentSummary",
44
- data(){
45
- return{
46
- summary:"",
47
- recommendQuestions:[],
48
- isLoading:false,
49
- typedContent:"",
50
- typingSpeed:20
51
- }
52
- },
53
- props:{
54
- knowledgeId:{
55
- type:String
56
- },
57
- tagIds:{
58
- type:Array,
59
- default() {
60
- return []
61
- }
62
- },
63
- formKnowledgeManagement:{
64
- type: Boolean,
65
- default: false
66
- }
67
- },
68
- methods:{
69
- getKnowledgeSummary() {
70
- let url = "/knowledge-api/knowledge/detail/" + this.knowledgeId;
71
- this.typedContent = "";
72
- this.summary = "";
73
- this.$http.get(url).then(res => {
74
- console.log('res',res)
75
- if (res.data.data){
76
- this.summary = res.data.data.summary;
77
- this.recommendQuestions = res.data.data.recommendQuestions ? res.data.data.recommendQuestions.splice(0,5) : [];
78
- if (!this.summary){
79
- this.regeneration();
80
- } else {
81
- this.typedContent = this.summary;
82
- }
83
- }
84
- this.$nextTick(() => {
85
- this.$emit('getSummarySuccess')
86
- })
87
- })
88
- },
89
- regeneration(){
90
- let url = "/knowledge-api/knowledge/analyze/summary";
91
- let obj = {
92
- "mainId": sessionStorage.getItem('_mainId') || localStorage.getItem('_mainId'),
93
- "userId": sessionStorage.getItem('_uid') || localStorage.getItem('_uid'),
94
- "knowledgeId": this.knowledgeId,
95
- "async": false
96
- }
97
- this.isLoading = true;
98
- this.typedContent = "";
99
- this.summary = "";
100
- this.$http.post(url,obj).then(res => {
101
- console.log('regeneration',res)
102
- if (res.data.data){
103
- this.summary = res.data.data.summary;
104
- this.recommendQuestions = res.data.data.recommendQuestions ? res.data.data.recommendQuestions.splice(0,5) : [];
105
- this.startTypingEffect();
106
- } else {
107
- this.$nextTick(() => {
108
- this.$emit('getSummarySuccess')
109
- })
110
- }
111
- this.isLoading = false;
112
- })
113
- },
114
- closeSummary(){
115
- this.$emit('closeSummary')
116
- },
117
- recommendQues(item){
118
- this.$emit('recommendQues',item,this.knowledgeId)
119
- },
120
- startTypingEffect() {
121
- let i = 0;
122
- const interval = setInterval(() => {
123
- if (i < this.summary.length) {
124
- this.typedContent += this.summary.charAt(i);
125
- i++;
126
- } else {
127
- clearInterval(interval);
128
- setTimeout(() => {
129
- this.$emit('getSummarySuccess')
130
- },240)
131
- }
132
- }, this.typingSpeed);
133
- },
134
- },
135
- mounted() {
136
- this.getKnowledgeSummary();
137
- }
138
- };
139
- </script>
140
-
141
- <style scoped lang="less">
142
- .intelligentSummary{
143
- background-color: #ffffff;
144
- border-radius: 20px;
145
- border: 1px solid #366AFF;
146
- margin-bottom: 20px;
147
- .summaryHeader{
148
- display: flex;
149
- align-items: center;
150
- justify-content: space-between;
151
- padding: 14px 16px;
152
- font-size: 14px;
153
- .left{
154
- //display: flex;
155
- //align-items: center;
156
- color: #366aff;
157
- i{
158
- padding-right: 6px;
159
- }
160
- }
161
- .right{
162
- display: flex;
163
- align-items: center;
164
- color: #366aff;
165
- .regenerationBtn{
166
- height: 26px;
167
- background: #E9EFFF;
168
- border-radius: 12px;
169
- color: #366AFF;
170
- display: flex;
171
- align-items: center;
172
- justify-content: center;
173
- cursor: pointer;
174
- padding: 0 10px;
175
- margin-right: 10px;
176
- font-size: 12px;
177
- }
178
- i{
179
- cursor: pointer;
180
- font-size: 14px;
181
- }
182
- }
183
- }
184
- .summaryContent{
185
- line-height: 26px;
186
- padding: 0 16px 16px 16px;
187
- font-size: 14px;
188
- text-align: left;
189
- }
190
- .intelligentBottom{
191
- background: #F9FAFD;
192
- padding: 0 20px;
193
- border-bottom-left-radius: 20px;
194
- border-bottom-right-radius: 20px;
195
- display: flex;
196
- align-items: center;
197
- flex-wrap: wrap;
198
- .intelligentQues{
199
- height: 26px;
200
- display: flex;
201
- align-items: center;
202
- justify-content: center;
203
- padding: 0 8px;
204
- background: #E5EBFF;
205
- color: #366AFF;
206
- border-radius: 10px;
207
- margin-right: 5px;
208
- margin-top: 5px;
209
- margin-bottom: 5px;
210
- font-size: 12px;
211
- cursor: pointer;
212
- white-space: nowrap;
213
- }
214
- }
215
- ::-webkit-scrollbar{
216
- background-color: transparent;
217
- height: 6px;
218
- }
219
- }
220
- .float_intelligentSummary {
221
- position: absolute;
222
- z-index: 999;
223
- top: 60px;
224
- left: 16px;
225
- width: calc(100% - 32px);
226
- box-shadow: 0 0 10px rgba(0,0,0,.12);
227
- .summaryContent {
228
- max-height: 30vh;
229
- overflow-y: auto;
230
- }
231
- }
1
+ <template>
2
+ <div class="intelligentSummary" :class="tagIds.length != 0 ? 'float_intelligentSummary' : ''" id="intelligentSummary">
3
+ <div class="summaryHeader">
4
+ <div class="left">
5
+ <i class="iconfont guoran-tongyichicun-write-29-jiqiren"></i>
6
+ <span>智能摘要</span>
7
+ </div>
8
+ <div class="right">
9
+ <div class="regenerationBtn" @click="regeneration">
10
+ <template v-if="!isLoading">重新生成</template>
11
+ <template v-else>
12
+ <img
13
+ height="20px"
14
+ width="20px"
15
+ src="../assets/image/loading.gif"
16
+ alt
17
+ srcset
18
+ style="margin-right: 6px"
19
+ />
20
+ <span>生成中</span>
21
+ </template>
22
+ </div>
23
+ <i class="iconfont guoran-tongyichicun-shouqi" @click="closeSummary"></i>
24
+ </div>
25
+ </div>
26
+ <div class="summaryContent">
27
+ <span>{{ typedContent }}</span>
28
+ </div>
29
+ <div class="intelligentBottom" v-if="recommendQuestions.length > 0">
30
+ <div class="intelligentQues"
31
+ v-for="(item,index) in recommendQuestions"
32
+ :key="index"
33
+ @click="recommendQues(item)"
34
+ >
35
+ {{ item }}
36
+ </div>
37
+ </div>
38
+ </div>
39
+ </template>
40
+
41
+ <script>
42
+ export default {
43
+ name: "intelligentSummary",
44
+ data(){
45
+ return{
46
+ summary:"",
47
+ recommendQuestions:[],
48
+ isLoading:false,
49
+ typedContent:"",
50
+ typingSpeed:20
51
+ }
52
+ },
53
+ props:{
54
+ knowledgeId:{
55
+ type:String
56
+ },
57
+ tagIds:{
58
+ type:Array,
59
+ default() {
60
+ return []
61
+ }
62
+ }
63
+ },
64
+ methods:{
65
+ getKnowledgeSummary() {
66
+ let url = "/knowledge-api/knowledge/detail/" + this.knowledgeId;
67
+ this.typedContent = "";
68
+ this.summary = "";
69
+ this.$http.get(url).then(res => {
70
+ console.log('res',res)
71
+ if (res.data.data){
72
+ this.summary = res.data.data.summary;
73
+ this.recommendQuestions = res.data.data.recommendQuestions ? res.data.data.recommendQuestions.splice(0,5) : [];
74
+ if (!this.summary){
75
+ this.regeneration();
76
+ } else {
77
+ this.typedContent = this.summary;
78
+ }
79
+ }
80
+ this.$nextTick(() => {
81
+ this.$emit('getSummarySuccess')
82
+ })
83
+ })
84
+ },
85
+ regeneration(){
86
+ let url = "/knowledge-api/knowledge/analyze/summary";
87
+ let obj = {
88
+ "mainId": sessionStorage.getItem('_mainId') || localStorage.getItem('_mainId'),
89
+ "userId": sessionStorage.getItem('_uid') || localStorage.getItem('_uid'),
90
+ "knowledgeId": this.knowledgeId,
91
+ "async": false
92
+ }
93
+ this.isLoading = true;
94
+ this.typedContent = "";
95
+ this.summary = "";
96
+ this.$http.post(url,obj).then(res => {
97
+ console.log('regeneration',res)
98
+ if (res.data.data){
99
+ this.summary = res.data.data.summary;
100
+ this.recommendQuestions = res.data.data.recommendQuestions ? res.data.data.recommendQuestions.splice(0,5) : [];
101
+ this.startTypingEffect();
102
+ } else {
103
+ this.$nextTick(() => {
104
+ this.$emit('getSummarySuccess')
105
+ })
106
+ }
107
+ this.isLoading = false;
108
+ })
109
+ },
110
+ closeSummary(){
111
+ this.$emit('closeSummary')
112
+ },
113
+ recommendQues(item){
114
+ this.$emit('recommendQues',item,this.knowledgeId)
115
+ },
116
+ startTypingEffect() {
117
+ let i = 0;
118
+ const interval = setInterval(() => {
119
+ if (i < this.summary.length) {
120
+ this.typedContent += this.summary.charAt(i);
121
+ i++;
122
+ } else {
123
+ clearInterval(interval);
124
+ setTimeout(() => {
125
+ this.$emit('getSummarySuccess')
126
+ },240)
127
+ }
128
+ }, this.typingSpeed);
129
+ },
130
+ },
131
+ mounted() {
132
+ this.getKnowledgeSummary();
133
+ }
134
+ };
135
+ </script>
136
+
137
+ <style scoped lang="less">
138
+ .intelligentSummary{
139
+ background-color: #ffffff;
140
+ border-radius: 20px;
141
+ border: 1px solid #366AFF;
142
+ margin-bottom: 20px;
143
+ .summaryHeader{
144
+ display: flex;
145
+ align-items: center;
146
+ justify-content: space-between;
147
+ padding: 14px 16px;
148
+ font-size: 14px;
149
+ .left{
150
+ //display: flex;
151
+ //align-items: center;
152
+ color: #366aff;
153
+ i{
154
+ padding-right: 6px;
155
+ }
156
+ }
157
+ .right{
158
+ display: flex;
159
+ align-items: center;
160
+ color: #366aff;
161
+ .regenerationBtn{
162
+ height: 26px;
163
+ background: #E9EFFF;
164
+ border-radius: 12px;
165
+ color: #366AFF;
166
+ display: flex;
167
+ align-items: center;
168
+ justify-content: center;
169
+ cursor: pointer;
170
+ padding: 0 10px;
171
+ margin-right: 10px;
172
+ font-size: 12px;
173
+ }
174
+ i{
175
+ cursor: pointer;
176
+ font-size: 14px;
177
+ }
178
+ }
179
+ }
180
+ .summaryContent{
181
+ line-height: 26px;
182
+ padding: 0 16px 16px 16px;
183
+ font-size: 14px;
184
+ text-align: left;
185
+ }
186
+ .intelligentBottom{
187
+ background: #F9FAFD;
188
+ padding: 0 20px;
189
+ border-bottom-left-radius: 20px;
190
+ border-bottom-right-radius: 20px;
191
+ display: flex;
192
+ align-items: center;
193
+ flex-wrap: wrap;
194
+ .intelligentQues{
195
+ height: 26px;
196
+ display: flex;
197
+ align-items: center;
198
+ justify-content: center;
199
+ padding: 0 8px;
200
+ background: #E5EBFF;
201
+ color: #366AFF;
202
+ border-radius: 10px;
203
+ margin-right: 5px;
204
+ margin-top: 5px;
205
+ margin-bottom: 5px;
206
+ font-size: 12px;
207
+ cursor: pointer;
208
+ white-space: nowrap;
209
+ }
210
+ }
211
+ ::-webkit-scrollbar{
212
+ background-color: transparent;
213
+ height: 6px;
214
+ }
215
+ }
216
+ .float_intelligentSummary {
217
+ position: absolute;
218
+ z-index: 999;
219
+ top: 60px;
220
+ left: 16px;
221
+ width: calc(100% - 32px);
222
+ box-shadow: 0 0 10px rgba(0,0,0,.12);
223
+ .summaryContent {
224
+ max-height: 30vh;
225
+ overflow-y: auto;
226
+ }
227
+ }
232
228
  </style>