askbot-dragon 1.6.80-beta → 1.6.82-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 (101) 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/image/default_avt_ui.png +0 -0
  11. package/src/assets/image/filtType/audio.png +0 -0
  12. package/src/assets/image/filtType/excel1.png +0 -0
  13. package/src/assets/image/filtType/general.png +0 -0
  14. package/src/assets/image/filtType/image1.png +0 -0
  15. package/src/assets/image/filtType/link.png +0 -0
  16. package/src/assets/image/filtType/md2.png +0 -0
  17. package/src/assets/image/filtType/mode.png +0 -0
  18. package/src/assets/image/filtType/news.png +0 -0
  19. package/src/assets/image/filtType/pdf1.png +0 -0
  20. package/src/assets/image/filtType/ppt1.png +0 -0
  21. package/src/assets/image/filtType/selfadd1.png +0 -0
  22. package/src/assets/image/filtType/txt1.png +0 -0
  23. package/src/assets/image/filtType/video.png +0 -0
  24. package/src/assets/image/filtType/wechat.png +0 -0
  25. package/src/assets/image/filtType/word1.png +0 -0
  26. package/src/assets/image/loading.gif +0 -0
  27. package/src/assets/js/AliyunlssUtil.js +92 -92
  28. package/src/assets/js/Base64Util.js +22 -22
  29. package/src/assets/js/common.js +252 -252
  30. package/src/assets/js/hammer.js +89 -100
  31. package/src/assets/js/script.js +36 -36
  32. package/src/assets/less/common.css +6773 -6773
  33. package/src/assets/less/converSationContainer/common.less +192 -199
  34. package/src/assets/less/converSationContainer/converSatonContainer.less +493 -493
  35. package/src/assets/less/iconfont.css +37 -37
  36. package/src/assets/less/ticketMessage.less +294 -294
  37. package/src/components/ActionAlertIframe.vue +154 -177
  38. package/src/components/AiGuide.vue +468 -466
  39. package/src/components/AnswerDocknowledge.vue +1068 -1061
  40. package/src/components/AnswerVoice.vue +285 -285
  41. package/src/components/AskIFrame.vue +15 -15
  42. package/src/components/ConversationContainer.vue +5140 -4934
  43. package/src/components/FileType.vue +86 -86
  44. package/src/components/Message.vue +27 -27
  45. package/src/components/MyEditor.vue +350 -351
  46. package/src/components/actionSatisfaction.vue +107 -107
  47. package/src/components/actionSendToBot.vue +62 -62
  48. package/src/components/answerDissatisfaction.vue +62 -62
  49. package/src/components/answerRadio.vue +186 -186
  50. package/src/components/ask-components/DissatisfactionOptions.vue +57 -57
  51. package/src/components/ask-components/Msgloading.vue +37 -37
  52. package/src/components/ask-components/SatisfactionV2.vue +15 -15
  53. package/src/components/askVideo.vue +139 -162
  54. package/src/components/assetDetails.vue +378 -378
  55. package/src/components/assetMessage.vue +228 -228
  56. package/src/components/associationIntention.vue +374 -355
  57. package/src/components/attachmentPreview.vue +90 -90
  58. package/src/components/botActionSatisfactor.vue +68 -68
  59. package/src/components/chatContent.vue +513 -513
  60. package/src/components/feedBack.vue +136 -136
  61. package/src/components/fielListView.vue +351 -351
  62. package/src/components/file/AliyunOssComponents.vue +108 -108
  63. package/src/components/formTemplate.vue +3572 -3572
  64. package/src/components/intelligentSummary.vue +227 -231
  65. package/src/components/kkview.vue +1138 -1138
  66. package/src/components/loadingProcess.vue +164 -164
  67. package/src/components/message/ActionAlertIframe.vue +112 -112
  68. package/src/components/message/ShopMessage.vue +164 -164
  69. package/src/components/message/TextMessage.vue +924 -924
  70. package/src/components/message/TicketMessage.vue +201 -201
  71. package/src/components/message/swiper/index.js +4 -4
  72. package/src/components/message/swiper/ticketSwiper.vue +503 -503
  73. package/src/components/message/swiper/ticketSwiperItem.vue +61 -61
  74. package/src/components/msgLoading.vue +231 -231
  75. package/src/components/myPopup.vue +70 -70
  76. package/src/components/pdfPosition.vue +1334 -1508
  77. package/src/components/popup.vue +227 -227
  78. package/src/components/previewDoc.vue +247 -247
  79. package/src/components/previewPdf.vue +779 -799
  80. package/src/components/receiverMessagePlatform.vue +65 -65
  81. package/src/components/recommend.vue +80 -80
  82. package/src/components/selector/hOption.vue +20 -20
  83. package/src/components/selector/hSelector.vue +199 -199
  84. package/src/components/selector/hWrapper.vue +216 -216
  85. package/src/components/senderMessagePlatform.vue +50 -50
  86. package/src/components/source/BotMessage.vue +24 -24
  87. package/src/components/source/CustomMessage.vue +24 -24
  88. package/src/components/test.vue +260 -260
  89. package/src/components/tree.vue +294 -294
  90. package/src/components/utils/AliyunIssUtil.js +81 -81
  91. package/src/components/utils/ckeditor.js +174 -174
  92. package/src/components/utils/format_date.js +25 -25
  93. package/src/components/utils/index.js +6 -6
  94. package/src/components/utils/math_utils.js +29 -29
  95. package/src/components/voiceComponent.vue +119 -119
  96. package/src/components/welcomeKnowledgeFile.vue +340 -340
  97. package/src/components/welcomeLlmCard.vue +140 -140
  98. package/src/components/welcomeSuggest.vue +97 -97
  99. package/src/main.js +57 -57
  100. package/vue.config.js +54 -54
  101. package/src/components/newPdfPosition.vue +0 -878
@@ -1,141 +1,141 @@
1
- <template>
2
- <div class="message_list-welcome-m">
3
- <div class="mlwm-title" v-if="msgContent.enableTitle">{{ msgContent.title }}</div>
4
- <div class="mlwm-des" v-if="msgContent.enableDescription">
5
- <span class="mlwm-des-pre">{{ msgContent.description }}</span>
6
- </div>
7
- <div class="mlwm-msg-type" v-if="msgContent.enableRadioBtn">
8
- <div
9
- v-for="(item, itemIndex) in msgContent.items"
10
- :key="item.id"
11
- :class="['mmt-cell', 'mmt-cell-' + itemIndex]"
12
- @click="clickFun(item)"
13
- >
14
- <div class="mmt-cell-img" v-if="msgContent.enableRadioIcon && item.icon">
15
- <img :src="item.icon" alt srcset />
16
- </div>
17
- <div class="mmt-cell-des">
18
- <span class="mmt-cell-des-title" v-if="msgContent.enableRadioTitle">{{item.title}}</span>
19
- <span class="mmt-cell-des-detail" v-if="msgContent.enableRadioDesc">{{item.description}}</span>
20
- </div>
21
- </div>
22
- <div v-if="msgContent.items.length % 2 != 0" class="mmt-cell booth_elements"></div>
23
- </div>
24
- </div>
25
- </template>
26
-
27
- <script>
28
- export default {
29
- name: "welcomeLlmCard",
30
- props: {
31
- msgContent: {
32
- type: Object,
33
- default () {
34
- return {}
35
- }
36
- }
37
- },
38
- methods: {
39
- clickFun (item) {
40
- this.$emit('llmCardClickFun', item)
41
- }
42
- }
43
- };
44
- </script>
45
-
46
- <style scoped lang="less">
47
- .message_list-welcome-m {
48
- .mlwm-title {
49
- font-size: 18px;
50
- font-weight: 600;
51
- color: #333333;
52
- }
53
- .mlwm-des {
54
- color: #666666;
55
- margin-top: 9px;
56
- font-size: 14px;
57
- font-weight: 500;
58
- .mlwm-des-after {
59
- display: flex;
60
- align-items: center;
61
- height: 28px;
62
- line-height: 28px;
63
- .mlwm-des-after-cir {
64
- flex: none;
65
- width: 6px;
66
- height: 6px;
67
- background: #366aff;
68
- border-radius: 50%;
69
- margin-right: 6px;
70
- }
71
- }
72
- }
73
-
74
- .mlwm-msg-type {
75
- margin-top: 9px;
76
- .mmt-cell {
77
- flex: 1;
78
- padding: 10px;
79
- background: #f0f4ff;
80
- border-radius: 8px;
81
- margin: 8px 0;
82
- display: flex;
83
- justify-content: space-between;
84
- align-items: center;
85
- cursor: pointer;
86
- .mmt-cell-img {
87
- flex: none;
88
- width: 46px;
89
- margin-right: 8px;
90
- img {
91
- height: 46px;
92
- width: 46px;
93
- }
94
- }
95
- .mmt-cell-des {
96
- flex: auto;
97
- text-align: left;
98
- display: flex;
99
- flex-direction: column;
100
- padding-right: 12px;
101
- .mmt-cell-des-title {
102
- font-size: 14px;
103
- color: #000000;
104
- font-weight: 600;
105
- margin-bottom: 6px;
106
- }
107
- .mmt-cell-des-detail {
108
- font-size: 12px;
109
- display: flex;
110
- align-items: center;
111
- .mmt-cell-avatar {
112
- flex: none;
113
- width: 20px;
114
- margin-right: 8px;
115
- display: flex;
116
- align-items: center;
117
- img {
118
- height: 20px;
119
- width: 20px;
120
- border-radius: 50%;
121
- }
122
- }
123
- .mmt-creator-name {
124
- padding-right: 6px;
125
- border-right: 1px solid #666666;
126
- color: #666666;
127
- }
128
- .mmt-update-time {
129
- color: #666666;
130
- padding-left: 6px;
131
- }
132
- }
133
- }
134
- }
135
- .booth_elements {
136
- background: #FFFFFF;
137
- cursor: default !important;
138
- }
139
- }
140
- }
1
+ <template>
2
+ <div class="message_list-welcome-m">
3
+ <div class="mlwm-title" v-if="msgContent.enableTitle">{{ msgContent.title }}</div>
4
+ <div class="mlwm-des" v-if="msgContent.enableDescription">
5
+ <span class="mlwm-des-pre">{{ msgContent.description }}</span>
6
+ </div>
7
+ <div class="mlwm-msg-type" v-if="msgContent.enableRadioBtn">
8
+ <div
9
+ v-for="(item, itemIndex) in msgContent.items"
10
+ :key="item.id"
11
+ :class="['mmt-cell', 'mmt-cell-' + itemIndex]"
12
+ @click="clickFun(item)"
13
+ >
14
+ <div class="mmt-cell-img" v-if="msgContent.enableRadioIcon && item.icon">
15
+ <img :src="item.icon" alt srcset />
16
+ </div>
17
+ <div class="mmt-cell-des">
18
+ <span class="mmt-cell-des-title" v-if="msgContent.enableRadioTitle">{{item.title}}</span>
19
+ <span class="mmt-cell-des-detail" v-if="msgContent.enableRadioDesc">{{item.description}}</span>
20
+ </div>
21
+ </div>
22
+ <div v-if="msgContent.items.length % 2 != 0" class="mmt-cell booth_elements"></div>
23
+ </div>
24
+ </div>
25
+ </template>
26
+
27
+ <script>
28
+ export default {
29
+ name: "welcomeLlmCard",
30
+ props: {
31
+ msgContent: {
32
+ type: Object,
33
+ default () {
34
+ return {}
35
+ }
36
+ }
37
+ },
38
+ methods: {
39
+ clickFun (item) {
40
+ this.$emit('llmCardClickFun', item)
41
+ }
42
+ }
43
+ };
44
+ </script>
45
+
46
+ <style scoped lang="less">
47
+ .message_list-welcome-m {
48
+ .mlwm-title {
49
+ font-size: 18px;
50
+ font-weight: 600;
51
+ color: #333333;
52
+ }
53
+ .mlwm-des {
54
+ color: #666666;
55
+ margin-top: 9px;
56
+ font-size: 14px;
57
+ font-weight: 500;
58
+ .mlwm-des-after {
59
+ display: flex;
60
+ align-items: center;
61
+ height: 28px;
62
+ line-height: 28px;
63
+ .mlwm-des-after-cir {
64
+ flex: none;
65
+ width: 6px;
66
+ height: 6px;
67
+ background: #366aff;
68
+ border-radius: 50%;
69
+ margin-right: 6px;
70
+ }
71
+ }
72
+ }
73
+
74
+ .mlwm-msg-type {
75
+ margin-top: 9px;
76
+ .mmt-cell {
77
+ flex: 1;
78
+ padding: 10px;
79
+ background: #f0f4ff;
80
+ border-radius: 8px;
81
+ margin: 8px 0;
82
+ display: flex;
83
+ justify-content: space-between;
84
+ align-items: center;
85
+ cursor: pointer;
86
+ .mmt-cell-img {
87
+ flex: none;
88
+ width: 46px;
89
+ margin-right: 8px;
90
+ img {
91
+ height: 46px;
92
+ width: 46px;
93
+ }
94
+ }
95
+ .mmt-cell-des {
96
+ flex: auto;
97
+ text-align: left;
98
+ display: flex;
99
+ flex-direction: column;
100
+ padding-right: 12px;
101
+ .mmt-cell-des-title {
102
+ font-size: 14px;
103
+ color: #000000;
104
+ font-weight: 600;
105
+ margin-bottom: 6px;
106
+ }
107
+ .mmt-cell-des-detail {
108
+ font-size: 12px;
109
+ display: flex;
110
+ align-items: center;
111
+ .mmt-cell-avatar {
112
+ flex: none;
113
+ width: 20px;
114
+ margin-right: 8px;
115
+ display: flex;
116
+ align-items: center;
117
+ img {
118
+ height: 20px;
119
+ width: 20px;
120
+ border-radius: 50%;
121
+ }
122
+ }
123
+ .mmt-creator-name {
124
+ padding-right: 6px;
125
+ border-right: 1px solid #666666;
126
+ color: #666666;
127
+ }
128
+ .mmt-update-time {
129
+ color: #666666;
130
+ padding-left: 6px;
131
+ }
132
+ }
133
+ }
134
+ }
135
+ .booth_elements {
136
+ background: #FFFFFF;
137
+ cursor: default !important;
138
+ }
139
+ }
140
+ }
141
141
  </style>
@@ -1,98 +1,98 @@
1
- <template>
2
- <div class="welcome_suggest">
3
- <div class="title">
4
- <div class="title_desc">{{ msg.content.problemRecommendationDesc }}</div>
5
- <div class="title_change_batch" v-if="msg.content.page && msg.content.problemRecommendationValue.length > msg.content.pageCount" @click="changeBatch">
6
- <i class="iconfont guoran-tongyichicun-huanyipi"></i>
7
- <span>换一批</span>
8
- </div>
9
- </div>
10
- <div class="content">
11
- <div
12
- class="welcome_item"
13
- v-for="(item,index) in suggestList"
14
- :key="index"
15
- @click="handleWelcome(item)"
16
- >{{ item }}</div>
17
- </div>
18
- <div class></div>
19
- </div>
20
- </template>
21
- <script>
22
- export default {
23
- props: ["msg"],
24
- data () {
25
- return {
26
- pageCount: 1,
27
- suggestList: []
28
- }
29
- },
30
- mounted () {
31
- if(this.msg.content.page) {
32
- this.changeBatch()
33
- } else {
34
- this.suggestList = this.msg.content.problemRecommendationValue
35
- }
36
- },
37
- methods: {
38
- changeBatch () {
39
- let msgSuggestList = JSON.parse(JSON.stringify(this.msg.content.problemRecommendationValue))
40
- this.suggestList = msgSuggestList.splice((this.pageCount - 1) * this.msg.content.pageCount, this.msg.content.pageCount)
41
- if (this.pageCount == Math.ceil(this.msg.content.problemRecommendationValue.length / this.msg.content.pageCount)) {
42
- this.pageCount = 1
43
- } else {
44
- this.pageCount = this.pageCount + 1
45
- }
46
- },
47
- handleWelcome (item) {
48
- this.$emit('handleWelcome', item)
49
- }
50
- }
51
- }
52
- </script>
53
- <style lang="less" scoped>
54
- .welcome_suggest {
55
- width: 100%;
56
- height: auto;
57
- .title {
58
- width: 100%;
59
- height: 28px;
60
- display: flex;
61
- align-items: center;
62
- justify-content: space-between;
63
- .title_desc {
64
- flex: 1 0;
65
- overflow: hidden;
66
- text-overflow: ellipsis;
67
- white-space: nowrap;
68
- }
69
- .title_change_batch {
70
- cursor: pointer;
71
- color: #366aff;
72
- height: 28px;
73
- width: 70px;
74
- display: flex;
75
- align-items: center;
76
- font-size: 14px;
77
- i {
78
- margin-right: 5px;
79
- }
80
- }
81
- }
82
- .content {
83
- display: flex;
84
- align-items: center;
85
- flex-wrap: wrap;
86
- margin-top: 8px;
87
- .welcome_item {
88
- padding: 3px 8px;
89
- background: #EEF1FF;
90
- color: #366aff;
91
- margin-right: 5px;
92
- margin-bottom: 5px;
93
- border-radius: 28px;
94
- cursor: pointer;
95
- }
96
- }
97
- }
1
+ <template>
2
+ <div class="welcome_suggest">
3
+ <div class="title">
4
+ <div class="title_desc">{{ msg.content.problemRecommendationDesc }}</div>
5
+ <div class="title_change_batch" v-if="msg.content.page && msg.content.problemRecommendationValue.length > msg.content.pageCount" @click="changeBatch">
6
+ <i class="iconfont guoran-tongyichicun-huanyipi"></i>
7
+ <span>换一批</span>
8
+ </div>
9
+ </div>
10
+ <div class="content">
11
+ <div
12
+ class="welcome_item"
13
+ v-for="(item,index) in suggestList"
14
+ :key="index"
15
+ @click="handleWelcome(item)"
16
+ >{{ item }}</div>
17
+ </div>
18
+ <div class></div>
19
+ </div>
20
+ </template>
21
+ <script>
22
+ export default {
23
+ props: ["msg"],
24
+ data () {
25
+ return {
26
+ pageCount: 1,
27
+ suggestList: []
28
+ }
29
+ },
30
+ mounted () {
31
+ if(this.msg.content.page) {
32
+ this.changeBatch()
33
+ } else {
34
+ this.suggestList = this.msg.content.problemRecommendationValue
35
+ }
36
+ },
37
+ methods: {
38
+ changeBatch () {
39
+ let msgSuggestList = JSON.parse(JSON.stringify(this.msg.content.problemRecommendationValue))
40
+ this.suggestList = msgSuggestList.splice((this.pageCount - 1) * this.msg.content.pageCount, this.msg.content.pageCount)
41
+ if (this.pageCount == Math.ceil(this.msg.content.problemRecommendationValue.length / this.msg.content.pageCount)) {
42
+ this.pageCount = 1
43
+ } else {
44
+ this.pageCount = this.pageCount + 1
45
+ }
46
+ },
47
+ handleWelcome (item) {
48
+ this.$emit('handleWelcome', item)
49
+ }
50
+ }
51
+ }
52
+ </script>
53
+ <style lang="less" scoped>
54
+ .welcome_suggest {
55
+ width: 100%;
56
+ height: auto;
57
+ .title {
58
+ width: 100%;
59
+ height: 28px;
60
+ display: flex;
61
+ align-items: center;
62
+ justify-content: space-between;
63
+ .title_desc {
64
+ flex: 1 0;
65
+ overflow: hidden;
66
+ text-overflow: ellipsis;
67
+ white-space: nowrap;
68
+ }
69
+ .title_change_batch {
70
+ cursor: pointer;
71
+ color: #366aff;
72
+ height: 28px;
73
+ width: 70px;
74
+ display: flex;
75
+ align-items: center;
76
+ font-size: 14px;
77
+ i {
78
+ margin-right: 5px;
79
+ }
80
+ }
81
+ }
82
+ .content {
83
+ display: flex;
84
+ align-items: center;
85
+ flex-wrap: wrap;
86
+ margin-top: 8px;
87
+ .welcome_item {
88
+ padding: 3px 8px;
89
+ background: #EEF1FF;
90
+ color: #366aff;
91
+ margin-right: 5px;
92
+ margin-bottom: 5px;
93
+ border-radius: 28px;
94
+ cursor: pointer;
95
+ }
96
+ }
97
+ }
98
98
  </style>
package/src/main.js CHANGED
@@ -1,57 +1,57 @@
1
- import Vue from 'vue'
2
- import App from './App.vue'
3
- import VueResource from 'vue-resource'
4
- import ElementUI from 'element-ui';
5
- import { requestUrl } from './api/index';
6
- import { utils } from '../src/components/utils/index';
7
- // /*import 'element-ui/lib/theme-chalk/index.css';*/
8
- import './assets/theme/index.css'
9
- import 'video.js/dist/video-js.css'
10
- import Vant from 'vant';
11
- import 'vant/lib/index.css';
12
-
13
- /*import VConsole from 'vconsole'
14
- const vConsole = new VConsole();
15
- Vue.use(vConsole);*/
16
- import $ from 'jquery'
17
- Vue.prototype._$ = $;
18
- Vue.use(Vant);
19
- Date.prototype.Format = function (fmt) { //author: meizz
20
- var o = {
21
- "M+": this.getMonth() + 1, //月份
22
- "d+": this.getDate(), //日
23
- "h+": this.getHours(), //小时
24
- "m+": this.getMinutes(), //分
25
- "s+": this.getSeconds(), //秒
26
- "q+": Math.floor((this.getMonth() + 3) / 3), //季度
27
- "S": this.getMilliseconds() //毫秒
28
- };
29
- if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
30
- for (var k in o)
31
- if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
32
- return fmt;
33
- }
34
- Vue.config.productionTip = false
35
- Vue.use(VueResource)
36
- Vue.use(ElementUI)
37
- //导入图片预览viewer组件以及css
38
- import Viewer from 'v-viewer'
39
- import 'viewerjs/dist/viewer.css'
40
- Vue.use(Viewer, {
41
- defaultOptions: {
42
- zIndex: 9999,//解决图片放大的层级问题
43
- }
44
- });
45
- // setDeafaults配置
46
- Viewer.setDefaults({
47
- Options: { "inline": true, "button": true, "navbar": true, "title": true, "toolbar": true, "tooltip": true, "movable": true, "zoomable": true, "rotatable": true, "scalable": true, "transition": true, "fullscreen": true, "keyboard": true, "url": "data-source" }
48
- })
49
-
50
-
51
-
52
- Vue.prototype.requestUrl = requestUrl;
53
- Vue.prototype.utils = utils;
54
-
55
- new Vue({
56
- render: h => h(App),
57
- }).$mount('#app')
1
+ import Vue from 'vue'
2
+ import App from './App.vue'
3
+ import VueResource from 'vue-resource'
4
+ import ElementUI from 'element-ui';
5
+ import { requestUrl } from './api/index';
6
+ import { utils } from '../src/components/utils/index';
7
+ // /*import 'element-ui/lib/theme-chalk/index.css';*/
8
+ import './assets/theme/index.css'
9
+ import 'video.js/dist/video-js.css'
10
+ import Vant from 'vant';
11
+ import 'vant/lib/index.css';
12
+
13
+ /*import VConsole from 'vconsole'
14
+ const vConsole = new VConsole();
15
+ Vue.use(vConsole);*/
16
+ import $ from 'jquery'
17
+ Vue.prototype._$ = $;
18
+ Vue.use(Vant);
19
+ Date.prototype.Format = function (fmt) { //author: meizz
20
+ var o = {
21
+ "M+": this.getMonth() + 1, //月份
22
+ "d+": this.getDate(), //日
23
+ "h+": this.getHours(), //小时
24
+ "m+": this.getMinutes(), //分
25
+ "s+": this.getSeconds(), //秒
26
+ "q+": Math.floor((this.getMonth() + 3) / 3), //季度
27
+ "S": this.getMilliseconds() //毫秒
28
+ };
29
+ if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
30
+ for (var k in o)
31
+ if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
32
+ return fmt;
33
+ }
34
+ Vue.config.productionTip = false
35
+ Vue.use(VueResource)
36
+ Vue.use(ElementUI)
37
+ //导入图片预览viewer组件以及css
38
+ import Viewer from 'v-viewer'
39
+ import 'viewerjs/dist/viewer.css'
40
+ Vue.use(Viewer, {
41
+ defaultOptions: {
42
+ zIndex: 9999,//解决图片放大的层级问题
43
+ }
44
+ });
45
+ // setDeafaults配置
46
+ Viewer.setDefaults({
47
+ Options: { "inline": true, "button": true, "navbar": true, "title": true, "toolbar": true, "tooltip": true, "movable": true, "zoomable": true, "rotatable": true, "scalable": true, "transition": true, "fullscreen": true, "keyboard": true, "url": "data-source" }
48
+ })
49
+
50
+
51
+
52
+ Vue.prototype.requestUrl = requestUrl;
53
+ Vue.prototype.utils = utils;
54
+
55
+ new Vue({
56
+ render: h => h(App),
57
+ }).$mount('#app')