askbot-dragon 1.7.65-beta → 1.7.67-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 +57 -57
  5. package/public/index.html +73 -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 +141 -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 +100 -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 +199 -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 +178 -178
  21. package/src/components/AiGuide.vue +434 -434
  22. package/src/components/AnswerDocknowledge.vue +1203 -1203
  23. package/src/components/AnswerVoice.vue +285 -285
  24. package/src/components/AskIFrame.vue +15 -15
  25. package/src/components/ConversationContainer.vue +10764 -10764
  26. package/src/components/FileType.vue +86 -86
  27. package/src/components/Message.vue +27 -27
  28. package/src/components/MyEditor.vue +342 -342
  29. package/src/components/QwFeedback.vue +302 -302
  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 +259 -259
  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 +162 -162
  38. package/src/components/assetDetails.vue +378 -378
  39. package/src/components/assetMessage.vue +229 -229
  40. package/src/components/associationIntention.vue +378 -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 +3512 -3512
  48. package/src/components/imgView.vue +31 -31
  49. package/src/components/intelligentSummary.vue +234 -234
  50. package/src/components/kkview.vue +1138 -1138
  51. package/src/components/loadingProcess.vue +164 -164
  52. package/src/components/markDownText.vue +357 -357
  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 +928 -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 +73 -73
  62. package/src/components/newPdfPosition.vue +877 -877
  63. package/src/components/pagination.vue +128 -128
  64. package/src/components/pdfPosition.vue +1523 -1523
  65. package/src/components/popup.vue +228 -228
  66. package/src/components/preview/docView.vue +113 -113
  67. package/src/components/preview/excelView.vue +190 -190
  68. package/src/components/preview/newPositionPreview.vue +384 -369
  69. package/src/components/preview/pdfView.vue +824 -824
  70. package/src/components/previewDoc.vue +252 -252
  71. package/src/components/previewPdf.vue +1087 -1087
  72. package/src/components/receiverMessagePlatform.vue +69 -69
  73. package/src/components/recommend.vue +80 -80
  74. package/src/components/selector/hOption.vue +20 -20
  75. package/src/components/selector/hSelector.vue +199 -199
  76. package/src/components/selector/hWrapper.vue +216 -216
  77. package/src/components/senderMessagePlatform.vue +58 -58
  78. package/src/components/source/BotMessage.vue +24 -24
  79. package/src/components/source/CustomMessage.vue +24 -24
  80. package/src/components/test.vue +260 -260
  81. package/src/components/tree.vue +307 -307
  82. package/src/components/utils/AliyunIssUtil.js +103 -103
  83. package/src/components/utils/ckeditor.js +185 -185
  84. package/src/components/utils/format_date.js +25 -25
  85. package/src/components/utils/index.js +6 -6
  86. package/src/components/utils/math_utils.js +29 -29
  87. package/src/components/voiceComponent.vue +119 -119
  88. package/src/components/welcomeKnowledgeFile.vue +347 -347
  89. package/src/components/welcomeLlmCard.vue +144 -144
  90. package/src/components/welcomeSuggest.vue +97 -97
  91. package/src/locales/cn.json +95 -95
  92. package/src/locales/en.json +95 -95
  93. package/src/locales/jp.json +72 -72
  94. package/src/main.js +76 -76
  95. package/vue.config.js +54 -54
@@ -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,235 +1,235 @@
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>{{ $t('dragonCommon.smartSummary') }}</span>
7
- </div>
8
- <div class="right">
9
- <div class="regenerationBtn" @click="regeneration">
10
- <template v-if="!isLoading">
11
- {{ $t('dragonCommon.regenerate') }}
12
- </template>
13
- <template v-else>
14
- <img
15
- height="20px"
16
- width="20px"
17
- src="../assets/image/loading.gif"
18
- alt
19
- srcset
20
- style="margin-right: 6px"
21
- />
22
- <span>{{ $t('dragonCommon.generating') }}</span>
23
- </template>
24
- </div>
25
- <i class="iconfont guoran-tongyichicun-shouqi" @click="closeSummary"></i>
26
- </div>
27
- </div>
28
- <div class="summaryContent">
29
- <span>{{ typedContent }}</span>
30
- </div>
31
- <div class="intelligentBottom" v-if="recommendQuestions.length > 0 && !formKnowledgeManagement">
32
- <div class="intelligentQues"
33
- v-for="(item, index) in recommendQuestions"
34
- :key="index"
35
- @click="recommendQues(item)"
36
- >
37
- {{ item }}
38
- </div>
39
- </div>
40
- </div>
41
- </template>
42
-
43
- <script>
44
- export default {
45
- name: "intelligentSummary",
46
- data(){
47
- return{
48
- summary:"",
49
- recommendQuestions:[],
50
- isLoading:false,
51
- typedContent:"",
52
- typingSpeed:20
53
- }
54
- },
55
- props:{
56
- knowledgeId:{
57
- type:String
58
- },
59
- tagIds:{
60
- type:Array,
61
- default() {
62
- return []
63
- }
64
- },
65
- formKnowledgeManagement:{
66
- type: Boolean,
67
- default: false
68
- }
69
- },
70
- methods:{
71
- getKnowledgeSummary() {
72
- let url = "/knowledge-api/knowledge/detail/" + this.knowledgeId;
73
- this.typedContent = "";
74
- this.summary = "";
75
- this.$http.get(url).then(res => {
76
- console.log('res',res)
77
- if (res.data.data){
78
- this.summary = res.data.data.summary;
79
- this.recommendQuestions = res.data.data.recommendQuestions ? res.data.data.recommendQuestions.splice(0,5) : [];
80
- if (!this.summary){
81
- this.regeneration();
82
- } else {
83
- this.typedContent = this.summary;
84
- }
85
- }
86
- this.$nextTick(() => {
87
- this.$emit('getSummarySuccess')
88
- })
89
- })
90
- },
91
- regeneration(){
92
- let url = "/knowledge-api/knowledge/analyze/summary";
93
- let obj = {
94
- "mainId": sessionStorage.getItem('_mainId') || localStorage.getItem('_mainId'),
95
- "userId": sessionStorage.getItem('_uid') || localStorage.getItem('_uid'),
96
- "knowledgeId": this.knowledgeId,
97
- "async": false
98
- }
99
- this.isLoading = true;
100
- this.typedContent = "";
101
- this.summary = "";
102
- this.$http.post(url,obj).then(res => {
103
- console.log('regeneration',res)
104
- if (res.data.data){
105
- this.summary = res.data.data.summary;
106
- this.recommendQuestions = res.data.data.recommendQuestions ? res.data.data.recommendQuestions.splice(0,5) : [];
107
- this.startTypingEffect();
108
- } else {
109
- this.$nextTick(() => {
110
- this.$emit('getSummarySuccess')
111
- })
112
- }
113
- this.isLoading = false;
114
- })
115
- },
116
- closeSummary(){
117
- this.$emit('closeSummary')
118
- },
119
- recommendQues(item){
120
- this.$emit('recommendQues',item,this.knowledgeId)
121
- },
122
- startTypingEffect() {
123
- let i = 0;
124
- const interval = setInterval(() => {
125
- if (i < this.summary.length) {
126
- this.typedContent += this.summary.charAt(i);
127
- i++;
128
- } else {
129
- clearInterval(interval);
130
- setTimeout(() => {
131
- this.$emit('getSummarySuccess')
132
- },240)
133
- }
134
- }, this.typingSpeed);
135
- },
136
- },
137
- mounted() {
138
- this.$i18n.locale = sessionStorage.getItem("systemLanguage") || 'cn';
139
- this.getKnowledgeSummary();
140
- }
141
- };
142
- </script>
143
-
144
- <style scoped lang="less">
145
- .intelligentSummary{
146
- background-color: #ffffff;
147
- border-radius: 20px;
148
- border: 1px solid #366AFF;
149
- margin-bottom: 20px;
150
- .summaryHeader{
151
- display: flex;
152
- align-items: center;
153
- justify-content: space-between;
154
- padding: 14px 16px;
155
- font-size: 14px;
156
- .left{
157
- //display: flex;
158
- //align-items: center;
159
- color: #366aff;
160
- i{
161
- padding-right: 6px;
162
- }
163
- }
164
- .right{
165
- display: flex;
166
- align-items: center;
167
- color: #366aff;
168
- .regenerationBtn{
169
- height: 26px;
170
- background: #E9EFFF;
171
- border-radius: 12px;
172
- color: #366AFF;
173
- display: flex;
174
- align-items: center;
175
- justify-content: center;
176
- cursor: pointer;
177
- padding: 0 10px;
178
- margin-right: 10px;
179
- font-size: 12px;
180
- }
181
- i{
182
- cursor: pointer;
183
- font-size: 14px;
184
- }
185
- }
186
- }
187
- .summaryContent{
188
- line-height: 26px;
189
- padding: 0 16px 16px 16px;
190
- font-size: 14px;
191
- text-align: left;
192
- }
193
- .intelligentBottom{
194
- background: #F9FAFD;
195
- padding: 0 20px;
196
- border-bottom-left-radius: 20px;
197
- border-bottom-right-radius: 20px;
198
- display: flex;
199
- align-items: center;
200
- flex-wrap: wrap;
201
- .intelligentQues{
202
- height: 26px;
203
- display: flex;
204
- align-items: center;
205
- justify-content: center;
206
- padding: 0 8px;
207
- background: #E5EBFF;
208
- color: #366AFF;
209
- border-radius: 10px;
210
- margin-right: 5px;
211
- margin-top: 5px;
212
- margin-bottom: 5px;
213
- font-size: 12px;
214
- cursor: pointer;
215
- white-space: nowrap;
216
- }
217
- }
218
- ::-webkit-scrollbar{
219
- background-color: transparent;
220
- height: 6px;
221
- }
222
- }
223
- .float_intelligentSummary {
224
- position: absolute;
225
- z-index: 999;
226
- top: 60px;
227
- left: 16px;
228
- width: calc(100% - 32px);
229
- box-shadow: 0 0 10px rgba(0,0,0,.12);
230
- .summaryContent {
231
- max-height: 30vh;
232
- overflow-y: auto;
233
- }
234
- }
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>{{ $t('dragonCommon.smartSummary') }}</span>
7
+ </div>
8
+ <div class="right">
9
+ <div class="regenerationBtn" @click="regeneration">
10
+ <template v-if="!isLoading">
11
+ {{ $t('dragonCommon.regenerate') }}
12
+ </template>
13
+ <template v-else>
14
+ <img
15
+ height="20px"
16
+ width="20px"
17
+ src="../assets/image/loading.gif"
18
+ alt
19
+ srcset
20
+ style="margin-right: 6px"
21
+ />
22
+ <span>{{ $t('dragonCommon.generating') }}</span>
23
+ </template>
24
+ </div>
25
+ <i class="iconfont guoran-tongyichicun-shouqi" @click="closeSummary"></i>
26
+ </div>
27
+ </div>
28
+ <div class="summaryContent">
29
+ <span>{{ typedContent }}</span>
30
+ </div>
31
+ <div class="intelligentBottom" v-if="recommendQuestions.length > 0 && !formKnowledgeManagement">
32
+ <div class="intelligentQues"
33
+ v-for="(item, index) in recommendQuestions"
34
+ :key="index"
35
+ @click="recommendQues(item)"
36
+ >
37
+ {{ item }}
38
+ </div>
39
+ </div>
40
+ </div>
41
+ </template>
42
+
43
+ <script>
44
+ export default {
45
+ name: "intelligentSummary",
46
+ data(){
47
+ return{
48
+ summary:"",
49
+ recommendQuestions:[],
50
+ isLoading:false,
51
+ typedContent:"",
52
+ typingSpeed:20
53
+ }
54
+ },
55
+ props:{
56
+ knowledgeId:{
57
+ type:String
58
+ },
59
+ tagIds:{
60
+ type:Array,
61
+ default() {
62
+ return []
63
+ }
64
+ },
65
+ formKnowledgeManagement:{
66
+ type: Boolean,
67
+ default: false
68
+ }
69
+ },
70
+ methods:{
71
+ getKnowledgeSummary() {
72
+ let url = "/knowledge-api/knowledge/detail/" + this.knowledgeId;
73
+ this.typedContent = "";
74
+ this.summary = "";
75
+ this.$http.get(url).then(res => {
76
+ console.log('res',res)
77
+ if (res.data.data){
78
+ this.summary = res.data.data.summary;
79
+ this.recommendQuestions = res.data.data.recommendQuestions ? res.data.data.recommendQuestions.splice(0,5) : [];
80
+ if (!this.summary){
81
+ this.regeneration();
82
+ } else {
83
+ this.typedContent = this.summary;
84
+ }
85
+ }
86
+ this.$nextTick(() => {
87
+ this.$emit('getSummarySuccess')
88
+ })
89
+ })
90
+ },
91
+ regeneration(){
92
+ let url = "/knowledge-api/knowledge/analyze/summary";
93
+ let obj = {
94
+ "mainId": sessionStorage.getItem('_mainId') || localStorage.getItem('_mainId'),
95
+ "userId": sessionStorage.getItem('_uid') || localStorage.getItem('_uid'),
96
+ "knowledgeId": this.knowledgeId,
97
+ "async": false
98
+ }
99
+ this.isLoading = true;
100
+ this.typedContent = "";
101
+ this.summary = "";
102
+ this.$http.post(url,obj).then(res => {
103
+ console.log('regeneration',res)
104
+ if (res.data.data){
105
+ this.summary = res.data.data.summary;
106
+ this.recommendQuestions = res.data.data.recommendQuestions ? res.data.data.recommendQuestions.splice(0,5) : [];
107
+ this.startTypingEffect();
108
+ } else {
109
+ this.$nextTick(() => {
110
+ this.$emit('getSummarySuccess')
111
+ })
112
+ }
113
+ this.isLoading = false;
114
+ })
115
+ },
116
+ closeSummary(){
117
+ this.$emit('closeSummary')
118
+ },
119
+ recommendQues(item){
120
+ this.$emit('recommendQues',item,this.knowledgeId)
121
+ },
122
+ startTypingEffect() {
123
+ let i = 0;
124
+ const interval = setInterval(() => {
125
+ if (i < this.summary.length) {
126
+ this.typedContent += this.summary.charAt(i);
127
+ i++;
128
+ } else {
129
+ clearInterval(interval);
130
+ setTimeout(() => {
131
+ this.$emit('getSummarySuccess')
132
+ },240)
133
+ }
134
+ }, this.typingSpeed);
135
+ },
136
+ },
137
+ mounted() {
138
+ this.$i18n.locale = sessionStorage.getItem("systemLanguage") || 'cn';
139
+ this.getKnowledgeSummary();
140
+ }
141
+ };
142
+ </script>
143
+
144
+ <style scoped lang="less">
145
+ .intelligentSummary{
146
+ background-color: #ffffff;
147
+ border-radius: 20px;
148
+ border: 1px solid #366AFF;
149
+ margin-bottom: 20px;
150
+ .summaryHeader{
151
+ display: flex;
152
+ align-items: center;
153
+ justify-content: space-between;
154
+ padding: 14px 16px;
155
+ font-size: 14px;
156
+ .left{
157
+ //display: flex;
158
+ //align-items: center;
159
+ color: #366aff;
160
+ i{
161
+ padding-right: 6px;
162
+ }
163
+ }
164
+ .right{
165
+ display: flex;
166
+ align-items: center;
167
+ color: #366aff;
168
+ .regenerationBtn{
169
+ height: 26px;
170
+ background: #E9EFFF;
171
+ border-radius: 12px;
172
+ color: #366AFF;
173
+ display: flex;
174
+ align-items: center;
175
+ justify-content: center;
176
+ cursor: pointer;
177
+ padding: 0 10px;
178
+ margin-right: 10px;
179
+ font-size: 12px;
180
+ }
181
+ i{
182
+ cursor: pointer;
183
+ font-size: 14px;
184
+ }
185
+ }
186
+ }
187
+ .summaryContent{
188
+ line-height: 26px;
189
+ padding: 0 16px 16px 16px;
190
+ font-size: 14px;
191
+ text-align: left;
192
+ }
193
+ .intelligentBottom{
194
+ background: #F9FAFD;
195
+ padding: 0 20px;
196
+ border-bottom-left-radius: 20px;
197
+ border-bottom-right-radius: 20px;
198
+ display: flex;
199
+ align-items: center;
200
+ flex-wrap: wrap;
201
+ .intelligentQues{
202
+ height: 26px;
203
+ display: flex;
204
+ align-items: center;
205
+ justify-content: center;
206
+ padding: 0 8px;
207
+ background: #E5EBFF;
208
+ color: #366AFF;
209
+ border-radius: 10px;
210
+ margin-right: 5px;
211
+ margin-top: 5px;
212
+ margin-bottom: 5px;
213
+ font-size: 12px;
214
+ cursor: pointer;
215
+ white-space: nowrap;
216
+ }
217
+ }
218
+ ::-webkit-scrollbar{
219
+ background-color: transparent;
220
+ height: 6px;
221
+ }
222
+ }
223
+ .float_intelligentSummary {
224
+ position: absolute;
225
+ z-index: 999;
226
+ top: 60px;
227
+ left: 16px;
228
+ width: calc(100% - 32px);
229
+ box-shadow: 0 0 10px rgba(0,0,0,.12);
230
+ .summaryContent {
231
+ max-height: 30vh;
232
+ overflow-y: auto;
233
+ }
234
+ }
235
235
  </style>