askbot-dragon 1.7.14-beta → 1.7.16-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 (87) 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 +56 -56
  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 +116 -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 +438 -470
  22. package/src/components/AnswerDocknowledge.vue +1070 -1070
  23. package/src/components/AnswerVoice.vue +285 -285
  24. package/src/components/AskIFrame.vue +15 -15
  25. package/src/components/ConversationContainer.vue +4948 -4948
  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 +204 -203
  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 +378 -378
  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 +3576 -3576
  47. package/src/components/intelligentSummary.vue +231 -231
  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 +928 -928
  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 -1508
  61. package/src/components/popup.vue +227 -227
  62. package/src/components/previewDoc.vue +251 -251
  63. package/src/components/previewPdf.vue +804 -804
  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/ckeditor.js +174 -174
  75. package/src/components/utils/format_date.js +25 -25
  76. package/src/components/utils/index.js +6 -6
  77. package/src/components/utils/math_utils.js +29 -29
  78. package/src/components/voiceComponent.vue +119 -119
  79. package/src/components/welcomeKnowledgeFile.vue +344 -344
  80. package/src/components/welcomeLlmCard.vue +144 -144
  81. package/src/components/welcomeSuggest.vue +97 -97
  82. package/src/locales/cn.json +71 -71
  83. package/src/locales/en.json +72 -72
  84. package/src/locales/jp.json +72 -72
  85. package/src/main.js +75 -75
  86. package/vue.config.js +54 -54
  87. package/src/components/utils/AliyunIssUtil.js +0 -81
@@ -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 };