askbot-dragon 1.6.76-beta → 1.6.78-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 (84) 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 -55
  5. package/public/index.html +72 -72
  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 +92 -92
  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 +177 -177
  21. package/src/components/AiGuide.vue +466 -466
  22. package/src/components/AnswerDocknowledge.vue +1059 -1059
  23. package/src/components/AnswerVoice.vue +285 -285
  24. package/src/components/AskIFrame.vue +15 -15
  25. package/src/components/ConversationContainer.vue +4934 -4934
  26. package/src/components/FileType.vue +86 -86
  27. package/src/components/Message.vue +27 -27
  28. package/src/components/MyEditor.vue +351 -351
  29. package/src/components/actionSatisfaction.vue +107 -107
  30. package/src/components/actionSendToBot.vue +62 -62
  31. package/src/components/answerDissatisfaction.vue +62 -62
  32. package/src/components/answerRadio.vue +186 -186
  33. package/src/components/ask-components/DissatisfactionOptions.vue +57 -57
  34. package/src/components/ask-components/Msgloading.vue +37 -37
  35. package/src/components/ask-components/SatisfactionV2.vue +15 -15
  36. package/src/components/askVideo.vue +162 -162
  37. package/src/components/assetDetails.vue +378 -378
  38. package/src/components/assetMessage.vue +228 -228
  39. package/src/components/associationIntention.vue +355 -355
  40. package/src/components/attachmentPreview.vue +90 -90
  41. package/src/components/botActionSatisfactor.vue +68 -68
  42. package/src/components/chatContent.vue +513 -513
  43. package/src/components/feedBack.vue +136 -136
  44. package/src/components/fielListView.vue +351 -351
  45. package/src/components/file/AliyunOssComponents.vue +108 -108
  46. package/src/components/formTemplate.vue +3572 -3572
  47. package/src/components/intelligentSummary.vue +227 -227
  48. package/src/components/kkview.vue +1138 -1138
  49. package/src/components/loadingProcess.vue +164 -164
  50. package/src/components/message/ActionAlertIframe.vue +112 -112
  51. package/src/components/message/ShopMessage.vue +164 -164
  52. package/src/components/message/TextMessage.vue +924 -924
  53. package/src/components/message/TicketMessage.vue +201 -201
  54. package/src/components/message/swiper/index.js +4 -4
  55. package/src/components/message/swiper/ticketSwiper.vue +503 -503
  56. package/src/components/message/swiper/ticketSwiperItem.vue +61 -61
  57. package/src/components/msgLoading.vue +231 -231
  58. package/src/components/myPopup.vue +70 -70
  59. package/src/components/newPdfPosition.vue +877 -877
  60. package/src/components/pdfPosition.vue +1508 -1506
  61. package/src/components/popup.vue +227 -227
  62. package/src/components/previewDoc.vue +247 -247
  63. package/src/components/previewPdf.vue +791 -757
  64. package/src/components/receiverMessagePlatform.vue +65 -65
  65. package/src/components/recommend.vue +80 -80
  66. package/src/components/selector/hOption.vue +20 -20
  67. package/src/components/selector/hSelector.vue +199 -199
  68. package/src/components/selector/hWrapper.vue +216 -216
  69. package/src/components/senderMessagePlatform.vue +50 -50
  70. package/src/components/source/BotMessage.vue +24 -24
  71. package/src/components/source/CustomMessage.vue +24 -24
  72. package/src/components/test.vue +260 -260
  73. package/src/components/tree.vue +294 -294
  74. package/src/components/utils/AliyunIssUtil.js +81 -81
  75. package/src/components/utils/ckeditor.js +174 -174
  76. package/src/components/utils/format_date.js +25 -25
  77. package/src/components/utils/index.js +6 -6
  78. package/src/components/utils/math_utils.js +29 -29
  79. package/src/components/voiceComponent.vue +119 -119
  80. package/src/components/welcomeKnowledgeFile.vue +340 -340
  81. package/src/components/welcomeLlmCard.vue +140 -140
  82. package/src/components/welcomeSuggest.vue +97 -97
  83. package/src/main.js +57 -57
  84. package/vue.config.js +54 -54
@@ -1,202 +1,202 @@
1
- <template>
2
- <div class="media-body">
3
- <div class="ticketMessage">
4
- <ticket-swiper ref="swiper" :content="content" :type="type" @touchEnd="touchEnd">
5
- <template>
6
- <ticket-swiper-item v-for="(item, _index) in formatContent(content.cards)" :key="_index" :content="content">
7
- <template>
8
- <div class="ticketMessageContain">
9
- <div :class="{ isPhoneClass: isPhone === true, isCompayClass: isCompany === true }">
10
- <div :class="{ isIosClass: isIos === true, isAndroidClass: isAndroid === true }">
11
- <div class="htmlClass">
12
- <div v-for="(items, ind) in item.content.htmlList" :key="'Out_' + ind" class="html-item">
13
- <div class="img" v-if="items.type === 'IMAGE'">
14
- <img :src="items.src">
15
- </div>
16
- <div class="singleClass" v-if="items.type === 'SINGLE'">
17
- <div v-html="itemss" class="singleItem" v-for="(itemss, inde) in items.list" :key="'s_' + inde">
18
- </div>
19
- </div>
20
- <div class="doubleClass" v-if="items.type === 'DOUBLE' && item.version != 1">
21
- <div class="doubleItem" v-for="(itemss, index) in items.list" :key="'__' + index"
22
- v-html="itemss">
23
- </div>
24
- </div>
25
- <div class="updateDoubleClass" v-if="items.type === 'DOUBLE' && item.version == 1">
26
- <div class="doubleItem" :style="{ 'width': itemss.style.col / itemss.style.colums * 100 + '%' }"
27
- v-for="(itemss, index) in items.tampList" :key="'__D' + index" v-html="itemss.html">
28
- </div>
29
- <!-- <div class="doubleItem" v-for="(itemss,index) in items.tampList" :key="'__'+index">
30
- {{itemss.style.col/itemss.style.colums*100}}{{itemss.html}}
31
- </div> -->
32
- </div>
33
- <div class="tripleClass" v-if="items.type === 'TRIPLE'">
34
- <div v-html="itemss" class="tripleItem" v-for="(itemss, index) in items.list"
35
- :key="'__t_' + index">
36
- </div>
37
- </div>
38
- <div class="quadrupleClass" v-if="items.type === 'QUADRUPLE'">
39
- <div v-html="itemss" class="quadrupleItem" v-for="(itemss, index) in items.list"
40
- :key="'_q__' + index"></div>
41
- </div>
42
- </div>
43
- </div>
44
- <div class="button-list">
45
- <div v-for="(items, index) in item.content.buttonList" :key="'____' + index" class="button-item">
46
- <div @click="btnClick(items)" class="buttonClassItem">
47
- <span class="btn-name">{{ items.name }}</span>
48
- </div>
49
- </div>
50
- </div>
51
- </div>
52
- </div>
53
- </div>
54
- </template>
55
- </ticket-swiper-item>
56
- </template>
57
- </ticket-swiper>
58
- </div>
59
- </div>
60
- </template>
61
- <script>
62
- import ticketSwiper from "./swiper/ticketSwiper";
63
- import ticketSwiperItem from "./swiper/ticketSwiperItem";
64
- export default {
65
- name: "TicketMessage",
66
- props: {
67
- content: {
68
- type: Object,
69
- default() {
70
- return {}
71
- }
72
- },
73
- type: {
74
- type: String,
75
- default: ''
76
- }
77
- },
78
- components: {
79
- ticketSwiperItem,
80
- ticketSwiper
81
- },
82
- data() {
83
- return {
84
- device: 'PC',
85
- slideWidth: '',
86
- swiperStyle: {},
87
- currIndex: 1,
88
- distance: 0,
89
- isAndroid: false,
90
- isIos: false,
91
- isPhone: false,
92
- isCompany: false,
93
- swiper: false,
94
- text: [],
95
- textarea: [],
96
- onoff: true
97
- }
98
- },
99
- created() {
100
- this.isIosOrIsAndroid()
101
- this.isMobile()
102
- },
103
- mounted() {
104
- // console.log(JSON.stringify(this.content.cards));
105
- // this.content.cards.forEach(element => {
106
- // if (element.version == 1) {
107
- // element.content.htmlList.forEach((item) => {
108
- // item.tampList = [];
109
- // item.list.forEach((cell, cellIndex) => {
110
- // let tampCell = {
111
- // html: cell,
112
- // style: item.style[cellIndex]
113
- // }
114
- // item.tampList.push(tampCell);
115
- // })
116
- // })
117
- // }
118
- // });
119
- // this.content.cards = [...this.content.cards];
120
- // console.log(this.content.cards);
121
- },
122
- methods: {
123
- formatContent(arr) {
124
- arr.forEach(element => {
125
- if (element.version == 1) {
126
- element.content.htmlList.forEach((item) => {
127
- item.tampList = [];
128
- item.list && item.list.forEach((cell, cellIndex) => {
129
- let tampCell = {
130
- html: cell,
131
- style: item.style[cellIndex]
132
- }
133
- item.tampList.push(tampCell);
134
- })
135
- })
136
- }
137
- });
138
- return arr;
139
- },
140
- SwiperImgLoad() {
141
- if (!this.loadCheck) {
142
- this.$emit("SwiperImgLoadEvent");
143
- this.loadCheck = true;
144
- }
145
- },
146
- slideLoadOn() {
147
- this.$refs.swiper.slideOn();
148
- },
149
- btnClick(items) {
150
- items.apiKey = this.content.apiKey
151
- let that = this;
152
- if (that.onoff) {
153
- that.onoff = false;
154
- console.debug('card_template', items)
155
- this.$emit('btnClick', items, this.content.apiKey)
156
- setTimeout(function () {
157
- that.onoff = true;
158
- }, 600)
159
- } else {
160
- //如果一直走else分支可能是你没有在页面的data下面挂载onoff:true,不然一直都会走else
161
- console.debug("请稍后点击")
162
- }
163
- },
164
-
165
- isIosOrIsAndroid() {
166
- var u = navigator.userAgent;
167
- var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端
168
- var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
169
- if (isAndroid) {
170
- this.isAndroid = true
171
- }
172
- if (isiOS) {
173
- this.isIos = true
174
- }
175
- },
176
- isMobile() {
177
- let flag = navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i);
178
- if (flag) {
179
- this.isPhone = true
180
- }
181
- else {
182
- this.isCompany = true
183
- }
184
- },
185
- touchMove() {
186
-
187
- },
188
- touchEnd(index) {
189
- this.$emit('touchEnd', index)
190
- }
191
-
192
- },
193
- }
194
- </script>
195
-
196
- <style lang="less">
197
- @import "../../assets/less/ticketMessage";
198
-
199
- a {
200
- text-decoration: none;
201
- }
1
+ <template>
2
+ <div class="media-body">
3
+ <div class="ticketMessage">
4
+ <ticket-swiper ref="swiper" :content="content" :type="type" @touchEnd="touchEnd">
5
+ <template>
6
+ <ticket-swiper-item v-for="(item, _index) in formatContent(content.cards)" :key="_index" :content="content">
7
+ <template>
8
+ <div class="ticketMessageContain">
9
+ <div :class="{ isPhoneClass: isPhone === true, isCompayClass: isCompany === true }">
10
+ <div :class="{ isIosClass: isIos === true, isAndroidClass: isAndroid === true }">
11
+ <div class="htmlClass">
12
+ <div v-for="(items, ind) in item.content.htmlList" :key="'Out_' + ind" class="html-item">
13
+ <div class="img" v-if="items.type === 'IMAGE'">
14
+ <img :src="items.src">
15
+ </div>
16
+ <div class="singleClass" v-if="items.type === 'SINGLE'">
17
+ <div v-html="itemss" class="singleItem" v-for="(itemss, inde) in items.list" :key="'s_' + inde">
18
+ </div>
19
+ </div>
20
+ <div class="doubleClass" v-if="items.type === 'DOUBLE' && item.version != 1">
21
+ <div class="doubleItem" v-for="(itemss, index) in items.list" :key="'__' + index"
22
+ v-html="itemss">
23
+ </div>
24
+ </div>
25
+ <div class="updateDoubleClass" v-if="items.type === 'DOUBLE' && item.version == 1">
26
+ <div class="doubleItem" :style="{ 'width': itemss.style.col / itemss.style.colums * 100 + '%' }"
27
+ v-for="(itemss, index) in items.tampList" :key="'__D' + index" v-html="itemss.html">
28
+ </div>
29
+ <!-- <div class="doubleItem" v-for="(itemss,index) in items.tampList" :key="'__'+index">
30
+ {{itemss.style.col/itemss.style.colums*100}}{{itemss.html}}
31
+ </div> -->
32
+ </div>
33
+ <div class="tripleClass" v-if="items.type === 'TRIPLE'">
34
+ <div v-html="itemss" class="tripleItem" v-for="(itemss, index) in items.list"
35
+ :key="'__t_' + index">
36
+ </div>
37
+ </div>
38
+ <div class="quadrupleClass" v-if="items.type === 'QUADRUPLE'">
39
+ <div v-html="itemss" class="quadrupleItem" v-for="(itemss, index) in items.list"
40
+ :key="'_q__' + index"></div>
41
+ </div>
42
+ </div>
43
+ </div>
44
+ <div class="button-list">
45
+ <div v-for="(items, index) in item.content.buttonList" :key="'____' + index" class="button-item">
46
+ <div @click="btnClick(items)" class="buttonClassItem">
47
+ <span class="btn-name">{{ items.name }}</span>
48
+ </div>
49
+ </div>
50
+ </div>
51
+ </div>
52
+ </div>
53
+ </div>
54
+ </template>
55
+ </ticket-swiper-item>
56
+ </template>
57
+ </ticket-swiper>
58
+ </div>
59
+ </div>
60
+ </template>
61
+ <script>
62
+ import ticketSwiper from "./swiper/ticketSwiper";
63
+ import ticketSwiperItem from "./swiper/ticketSwiperItem";
64
+ export default {
65
+ name: "TicketMessage",
66
+ props: {
67
+ content: {
68
+ type: Object,
69
+ default() {
70
+ return {}
71
+ }
72
+ },
73
+ type: {
74
+ type: String,
75
+ default: ''
76
+ }
77
+ },
78
+ components: {
79
+ ticketSwiperItem,
80
+ ticketSwiper
81
+ },
82
+ data() {
83
+ return {
84
+ device: 'PC',
85
+ slideWidth: '',
86
+ swiperStyle: {},
87
+ currIndex: 1,
88
+ distance: 0,
89
+ isAndroid: false,
90
+ isIos: false,
91
+ isPhone: false,
92
+ isCompany: false,
93
+ swiper: false,
94
+ text: [],
95
+ textarea: [],
96
+ onoff: true
97
+ }
98
+ },
99
+ created() {
100
+ this.isIosOrIsAndroid()
101
+ this.isMobile()
102
+ },
103
+ mounted() {
104
+ // console.log(JSON.stringify(this.content.cards));
105
+ // this.content.cards.forEach(element => {
106
+ // if (element.version == 1) {
107
+ // element.content.htmlList.forEach((item) => {
108
+ // item.tampList = [];
109
+ // item.list.forEach((cell, cellIndex) => {
110
+ // let tampCell = {
111
+ // html: cell,
112
+ // style: item.style[cellIndex]
113
+ // }
114
+ // item.tampList.push(tampCell);
115
+ // })
116
+ // })
117
+ // }
118
+ // });
119
+ // this.content.cards = [...this.content.cards];
120
+ // console.log(this.content.cards);
121
+ },
122
+ methods: {
123
+ formatContent(arr) {
124
+ arr.forEach(element => {
125
+ if (element.version == 1) {
126
+ element.content.htmlList.forEach((item) => {
127
+ item.tampList = [];
128
+ item.list && item.list.forEach((cell, cellIndex) => {
129
+ let tampCell = {
130
+ html: cell,
131
+ style: item.style[cellIndex]
132
+ }
133
+ item.tampList.push(tampCell);
134
+ })
135
+ })
136
+ }
137
+ });
138
+ return arr;
139
+ },
140
+ SwiperImgLoad() {
141
+ if (!this.loadCheck) {
142
+ this.$emit("SwiperImgLoadEvent");
143
+ this.loadCheck = true;
144
+ }
145
+ },
146
+ slideLoadOn() {
147
+ this.$refs.swiper.slideOn();
148
+ },
149
+ btnClick(items) {
150
+ items.apiKey = this.content.apiKey
151
+ let that = this;
152
+ if (that.onoff) {
153
+ that.onoff = false;
154
+ console.debug('card_template', items)
155
+ this.$emit('btnClick', items, this.content.apiKey)
156
+ setTimeout(function () {
157
+ that.onoff = true;
158
+ }, 600)
159
+ } else {
160
+ //如果一直走else分支可能是你没有在页面的data下面挂载onoff:true,不然一直都会走else
161
+ console.debug("请稍后点击")
162
+ }
163
+ },
164
+
165
+ isIosOrIsAndroid() {
166
+ var u = navigator.userAgent;
167
+ var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端
168
+ var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
169
+ if (isAndroid) {
170
+ this.isAndroid = true
171
+ }
172
+ if (isiOS) {
173
+ this.isIos = true
174
+ }
175
+ },
176
+ isMobile() {
177
+ let flag = navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i);
178
+ if (flag) {
179
+ this.isPhone = true
180
+ }
181
+ else {
182
+ this.isCompany = true
183
+ }
184
+ },
185
+ touchMove() {
186
+
187
+ },
188
+ touchEnd(index) {
189
+ this.$emit('touchEnd', index)
190
+ }
191
+
192
+ },
193
+ }
194
+ </script>
195
+
196
+ <style lang="less">
197
+ @import "../../assets/less/ticketMessage";
198
+
199
+ a {
200
+ text-decoration: none;
201
+ }
202
202
  </style>
@@ -1,4 +1,4 @@
1
- import Swiper from "./ticketSwiper";
2
- import SwiperItem from "./ticketSwiperItem";
3
-
4
- export { Swiper, SwiperItem };
1
+ import Swiper from "./ticketSwiper";
2
+ import SwiperItem from "./ticketSwiperItem";
3
+
4
+ export { Swiper, SwiperItem };