xs-common-plugins 1.2.3 → 1.2.5

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 (188) hide show
  1. package/README.md +298 -298
  2. package/common.js +110 -110
  3. package/index.js +1 -1
  4. package/package.json +16 -16
  5. package/src/App.vue +12 -12
  6. package/src/common/common.js +551 -549
  7. package/src/common/createMenuId.js +7 -7
  8. package/src/common/uploadImgToBase64.js +12 -12
  9. package/src/common/utils.js +95 -95
  10. package/src/components/Breadcrumb/index.vue +81 -81
  11. package/src/components/CheckBox_Cmp/index.vue +62 -62
  12. package/src/components/Col_TableCell/data.js +4 -4
  13. package/src/components/Col_TableCell/index.scss +77 -77
  14. package/src/components/Col_TableCell/index.vue +43 -43
  15. package/src/components/Col_TableCell/methods.js +19 -19
  16. package/src/components/FormItem/index.vue +92 -92
  17. package/src/components/Hamburger/index.vue +44 -44
  18. package/src/components/ReportCmp/data.js +3 -3
  19. package/src/components/ReportCmp/index.scss +29 -29
  20. package/src/components/ReportCmp/index.vue +76 -76
  21. package/src/components/ReportCmp/methods.js +30 -30
  22. package/src/components/Search/cascader/data.js +3 -3
  23. package/src/components/Search/cascader/index.scss +17 -17
  24. package/src/components/Search/cascader/index.vue +96 -96
  25. package/src/components/Search/cascader/methods.js +41 -41
  26. package/src/components/Search/data.js +5 -5
  27. package/src/components/Search/hk_cascader/index.vue +104 -104
  28. package/src/components/Search/hk_cascader_qudao/index.vue +94 -94
  29. package/src/components/Search/index.scss +219 -219
  30. package/src/components/Search/index.vue +410 -410
  31. package/src/components/Search/methods.js +86 -86
  32. package/src/components/Search/product_option/data.js +3 -3
  33. package/src/components/Search/product_option/index.scss +68 -68
  34. package/src/components/Search/product_option/index.vue +412 -412
  35. package/src/components/Search/product_option/methods.js +58 -58
  36. package/src/components/Search/select/data.js +3 -3
  37. package/src/components/Search/select/index.scss +2 -2
  38. package/src/components/Search/select/index.vue +114 -114
  39. package/src/components/Search/select/methods.js +51 -51
  40. package/src/components/Search_filter/data.js +5 -5
  41. package/src/components/Search_filter/index.scss +104 -104
  42. package/src/components/Search_filter/index.vue +88 -88
  43. package/src/components/Search_filter/methods.js +43 -43
  44. package/src/components/TableCmp/data.js +3 -3
  45. package/src/components/TableCmp/index.scss +22 -22
  46. package/src/components/TableCmp/index.vue +98 -98
  47. package/src/components/TableCmp/methods.js +35 -35
  48. package/src/components/TableItem/TableItem.vue +55 -55
  49. package/src/components/TextOVer/index.vue +55 -55
  50. package/src/components/UploadImg/index.vue +177 -177
  51. package/src/components/home/BarChart.vue +118 -118
  52. package/src/components/home/LineChart.vue +146 -146
  53. package/src/components/home/Panel.vue +135 -135
  54. package/src/components/home/PanelGroup.vue +146 -146
  55. package/src/components/home/PieChart.vue +81 -81
  56. package/src/components/home/RaddarChart.vue +119 -119
  57. package/src/components/home/TabLayout.vue +88 -88
  58. package/src/components/home/TableList.vue +158 -158
  59. package/src/components/home/Teng.vue +248 -248
  60. package/src/components/home/TransactionTable.vue +49 -49
  61. package/src/components/home/mixins/resize.js +55 -55
  62. package/src/components/im/index.vue +155 -155
  63. package/src/components/im/methods.js +25 -25
  64. package/src/components/im/pages/chatList/index.vue +45 -45
  65. package/src/components/im/pages/chatRoom/index.vue +159 -159
  66. package/src/components/image-singleUpload/data.js +3 -3
  67. package/src/components/image-singleUpload/index.scss +26 -26
  68. package/src/components/image-singleUpload/index.vue +56 -56
  69. package/src/components/image-singleUpload/methods.js +30 -30
  70. package/src/components/image-upload/data.js +7 -7
  71. package/src/components/image-upload/index.vue +41 -41
  72. package/src/components/image-upload/methods.js +80 -80
  73. package/src/components/multiple-image-upload/data.js +11 -11
  74. package/src/components/multiple-image-upload/index.scss +8 -8
  75. package/src/components/multiple-image-upload/index.vue +63 -63
  76. package/src/components/multiple-image-upload/methods.js +45 -45
  77. package/src/components/pro-upload/data.js +3 -3
  78. package/src/components/pro-upload/index.scss +4 -4
  79. package/src/components/pro-upload/index.vue +89 -89
  80. package/src/components/pro-upload/methods.js +86 -86
  81. package/src/components/report_set/index.scss +44 -44
  82. package/src/components/report_set/index.vue +153 -153
  83. package/src/components/search-page/src/index.scss +5 -5
  84. package/src/components/search-page/src/index.vue +76 -76
  85. package/src/components/search-page/src/methods.js +36 -36
  86. package/src/components/xsSelect/index.vue +125 -125
  87. package/src/mixin/dialog.js +31 -31
  88. package/src/mixin/dlg.js +46 -46
  89. package/src/mixin/keepAlive.js +53 -52
  90. package/src/mixin/newDialog.js +19 -19
  91. package/src/mixin/report.js +82 -82
  92. package/src/mixin/table.js +93 -93
  93. package/src/mixin/tableCell/colTableCell_analysis.js +103 -103
  94. package/src/mixin/upload.js +22 -22
  95. package/src/mixin/vmodel.js +26 -26
  96. package/src/plugins/im/components/chat/index.scss +163 -163
  97. package/src/plugins/im/components/chat/index.vue +144 -144
  98. package/src/plugins/im/components/chat/methods.js +149 -149
  99. package/src/plugins/im/components/conversation-list/index.css +91 -91
  100. package/src/plugins/im/components/conversation-list/index.json +3 -3
  101. package/src/plugins/im/components/conversation-list/index.vue +89 -89
  102. package/src/plugins/im/components/loading/loading.css +69 -69
  103. package/src/plugins/im/components/loading/loading.json +3 -3
  104. package/src/plugins/im/components/loading/loading.vue +14 -14
  105. package/src/plugins/im/components/msg-image/index.json +3 -3
  106. package/src/plugins/im/components/msg-image/index.vue +40 -40
  107. package/src/plugins/im/components/msg-text/index.json +3 -3
  108. package/src/plugins/im/components/msg-text/index.vue +24 -24
  109. package/src/plugins/im/components/send-msg/index.scss +164 -164
  110. package/src/plugins/im/components/send-msg/index.vue +107 -107
  111. package/src/plugins/im/components/send-msg/methods.js +125 -125
  112. package/src/plugins/im/components/template-message/index.vue +76 -76
  113. package/src/plugins/im/components/without.vue +19 -19
  114. package/src/plugins/im/im-plug-in/Protobuf-2.3.7.min.js +1 -1
  115. package/src/plugins/im/im-plug-in/RongCallLib-3.1.5.min.js +74 -74
  116. package/src/plugins/im/im-plug-in/RongIMLib-4.1.0.js +17420 -17420
  117. package/src/plugins/im/im-plug-in/init.js +216 -216
  118. package/src/plugins/im/im-plug-in/qiniu.js +266 -266
  119. package/src/plugins/im/im-plug-in/send-data.js +431 -431
  120. package/src/plugins/im/im-plug-in/upload.js +232 -232
  121. package/src/plugins/im/index.js +31 -31
  122. package/src/plugins/im/lib/RongIMEmoji-2.2.6.js +332 -332
  123. package/src/plugins/im/lib/RongIMLib-3.0.7.2-dev.js +11635 -11635
  124. package/src/plugins/im/lib/RongIMLib-3.0.7.2-dev.min.js +6 -6
  125. package/src/plugins/im/utils/services.js +625 -625
  126. package/src/plugins/im/utils/underscore-1.8.3.js +1531 -1531
  127. package/src/plugins/im/utils/utils.js +149 -149
  128. package/src/plugins/index.js +60 -60
  129. package/src/plugins/row-col-cmp/colCmp/data.js +3 -3
  130. package/src/plugins/row-col-cmp/colCmp/index.scss +50 -50
  131. package/src/plugins/row-col-cmp/colCmp/index.vue +53 -53
  132. package/src/plugins/row-col-cmp/colCmp/methods.js +25 -25
  133. package/src/plugins/row-col-cmp/index.js +20 -20
  134. package/src/plugins/row-col-cmp/rowCmp/data.js +3 -3
  135. package/src/plugins/row-col-cmp/rowCmp/index.scss +3 -3
  136. package/src/plugins/row-col-cmp/rowCmp/index.vue +43 -43
  137. package/src/plugins/row-col-cmp/rowCmp/methods.js +29 -29
  138. package/src/router/index.js +58 -58
  139. package/src/router/permission.js +126 -126
  140. package/src/store/getters.js +13 -13
  141. package/src/store/index.js +60 -60
  142. package/src/store/modules/app.js +55 -55
  143. package/src/store/modules/dic.js +74 -74
  144. package/src/store/modules/oss.js +40 -40
  145. package/src/store/modules/settings.js +28 -28
  146. package/src/store/modules/tagsView.js +160 -160
  147. package/src/store/modules/user.js +94 -94
  148. package/src/store/modules/widgetdata.js +42 -42
  149. package/src/styles/element-ui.scss +49 -49
  150. package/src/styles/index.scss +91 -91
  151. package/src/styles/mixin.scss +28 -28
  152. package/src/styles/sidebar.scss +210 -210
  153. package/src/styles/table.scss +90 -90
  154. package/src/styles/transition.scss +48 -48
  155. package/src/styles/variables.scss +25 -25
  156. package/src/utils/api.js +54 -54
  157. package/src/utils/auth.js +38 -38
  158. package/src/utils/concat_batch_btns.js +88 -88
  159. package/src/utils/enum.js +150 -150
  160. package/src/utils/filter.js +5 -5
  161. package/src/utils/filterRules.js +55 -55
  162. package/src/utils/get-page-title.js +10 -10
  163. package/src/utils/getMenu.js +82 -82
  164. package/src/utils/global-config.js +15 -15
  165. package/src/utils/global_directive.js +10 -10
  166. package/src/utils/index.js +332 -332
  167. package/src/utils/localStorage.js +21 -21
  168. package/src/utils/ossService.js +55 -55
  169. package/src/utils/prototype.js +46 -46
  170. package/src/utils/search.js +33 -33
  171. package/src/utils/signalR.js +24 -24
  172. package/src/utils/validate.js +20 -20
  173. package/src/views/callback/index.vue +35 -35
  174. package/src/views/home/index.vue +25 -25
  175. package/src/views/layout/components/AllSearch/index.vue +44 -44
  176. package/src/views/layout/components/AppMain.vue +66 -66
  177. package/src/views/layout/components/Sidebar/FixiOSBug.js +26 -26
  178. package/src/views/layout/components/Sidebar/Item.vue +28 -28
  179. package/src/views/layout/components/Sidebar/Link.vue +34 -34
  180. package/src/views/layout/components/Sidebar/Logo.vue +79 -79
  181. package/src/views/layout/components/Sidebar/SidebarItem.vue +67 -67
  182. package/src/views/layout/components/Sidebar/index.vue +114 -114
  183. package/src/views/layout/components/TagsView/ScrollPane.vue +94 -94
  184. package/src/views/layout/components/TagsView/index.vue +330 -330
  185. package/src/views/layout/components/index.js +3 -3
  186. package/src/views/layout/index.vue +107 -107
  187. package/src/views/redirect/index.vue +12 -12
  188. package/src/views/slienceAuth/index.vue +42 -42
@@ -1,233 +1,233 @@
1
- (function(win) {
2
-
3
- var dataType = {
4
- form: getFormData,
5
- json: getJsonData,
6
- data: getData
7
- };
8
-
9
- function genUId() {
10
- var date = new Date().getTime();
11
- var uuid = 'xxxxxx4xxxyxxxxxxx'.replace(/[xy]/g, function(c) {
12
- var r = (date + Math.random() * 16) % 16 | 0;
13
- date = Math.floor(date / 16);
14
- return (c == 'x' ? r : (r & 0x3 | 0x8)).toString(16);
15
- });
16
- return uuid;
17
- };
18
-
19
- function mergeOption(opts) {
20
- var options = {
21
- domain: '',
22
- method: 'POST',
23
- file_data_name: 'file',
24
- unique_key: 'key',
25
- base64_size: 4 * 1024 * 1024,
26
- chunk_size: 4 * 1024 * 1024,
27
- bos_chunk_size: 4 * 1024 * 1024 * 1024, // 上传超过5GB大小的文件
28
- headers: {},
29
- multi_parmas: {},
30
- query: {},
31
- support_options: true,
32
- data: dataType.form,
33
- genUId: genUId
34
- };
35
- if (!opts || !opts.domain) {
36
- throw new Error('domain is null');
37
- }
38
- for (var key in opts) {
39
- options[key] = opts[key];
40
- }
41
- return options;
42
- }
43
-
44
- function mEach(m, callback) {
45
- for (var key in m) {
46
- callback(key, m[key]);
47
- }
48
- }
49
-
50
- function getFormData(file, opts) {
51
- var form = new FormData();
52
- if (opts.unique_key) {
53
- var suffix = file.name.substr(file.name.lastIndexOf('.'));
54
- var unique_value = genUId() + suffix;
55
- form.append(opts.unique_key, unique_value); // 设置 key
56
- opts.unique_value = unique_value;
57
- }
58
- form.append(opts.file_data_name, file); // 设置 file
59
- mEach(opts.multi_parmas, function(key, value) { // 设置 token
60
- form.append(key, value);
61
- });
62
- return form;
63
- }
64
-
65
- function getJsonData(file, opts) {
66
- var data = {};
67
- if (opts.unique_key) {
68
- var suffix = file.name.substr(file.name.lastIndexOf('.'));
69
- var unique_value = genUId() + suffix;
70
- data[opts.unique_key] = unique_value;
71
- opts.unique_value = unique_value;
72
- }
73
- data[opts.file_data_name] = file;
74
- mEach(opts.multi_parmas, function(key, value) {
75
- data[key] = value;
76
- });
77
- return JSON.stringify(data);
78
- }
79
-
80
- function getData(file, opts) {
81
- return file;
82
- }
83
-
84
- var preLoaded = 0, realLoaded;
85
-
86
- function Upload(options) {
87
- this.options = mergeOption(options);
88
-
89
- this.setOptions = function(opts) {
90
- var me = this;
91
- mEach(opts, function(key, value) {
92
- me.options[key] = value;
93
- });
94
- };
95
-
96
- this.upload = function(file, callback) {
97
- if (!file) {
98
- callback.onError('upload file is null.');
99
- return;
100
- }
101
- var me = this;
102
- uploadProcess(file, this.options, {
103
- onProgress: function(loaded, total, isBosProcess) {
104
- realLoaded = loaded;
105
- if(isBosProcess){ //说明启动了 bos 上传
106
- realIncrease = loaded/total * (total-preLoaded);
107
- realLoaded = preLoaded + realIncrease;
108
- }
109
- callback.onProgress(realLoaded, total);
110
- if(!isBosProcess) {
111
- preLoaded = realLoaded;
112
- }
113
- },
114
- onCompleted: function(data) {
115
- callback.onCompleted(data);
116
- },
117
- onError: function(errorCode) {
118
- callback.onError(errorCode);
119
- },
120
- onOpen: function(xhr) {
121
- me.xhr = xhr;
122
- }
123
- });
124
- };
125
-
126
- this.cancel = function() {
127
- this.xhr && this.xhr.abort();
128
- };
129
- }
130
-
131
- function init(options) {
132
- return new Upload(options);
133
- }
134
-
135
- function getResizeRatio(imageInfo,config){
136
- //hasOwnProperty?
137
-
138
- var ratio = 1;
139
-
140
- var oWidth = imageInfo.width;
141
- var maxWidth = config.maxWidth || 0;
142
- if(maxWidth > 0 && oWidth > maxWidth){
143
- ratio = maxWidth/oWidth;
144
- }
145
-
146
- var oHeight = imageInfo.height;
147
- var maxHeight = config.maxHeight || 0;
148
- if(maxHeight > 0 && oHeight > maxHeight){
149
- var ratioHeight = maxHeight/oHeight;
150
- ratio = Math.min(ratio,ratioHeight);
151
- }
152
-
153
-
154
- var maxSize = config.maxSize || 0;
155
- var oSize = Math.ceil(imageInfo.size/1000); //K,Math.ceil(0.3) = 1;
156
- if(oSize > maxSize){
157
- ratioSize = maxSize/oSize;
158
- ratio = Math.min(ratio,ratioSize);
159
- }
160
-
161
- return ratio;
162
- }
163
-
164
- function resize(file,config,callback){
165
- //file对象没有高宽
166
- var type = file.type; //image format
167
- var canvas = document.createElement("canvas");
168
-
169
- var reader = new FileReader();
170
-
171
- reader.readAsDataURL(file);
172
- reader.onload = function(evt){
173
- var imageData = evt.target.result;
174
- var img = new Image();
175
- img.src = imageData;
176
- var width = img.width;
177
- var height = img.height;
178
- var imageInfo = {
179
- width : width,
180
- height : height,
181
- size : evt.total
182
- }
183
- var ratio = getResizeRatio(imageInfo,config);
184
- var newImageData = imageData;
185
- if(ratio < 1){
186
- newImageData = compress(img, width*ratio, height*ratio);;
187
- }
188
- callback(newImageData);
189
- }
190
-
191
- function compress(img, width, height){
192
- canvas.width = width;
193
- canvas.height = height;
194
-
195
- var context = canvas.getContext('2d');
196
- context.drawImage(img, 0, 0, width, height);
197
-
198
- /*
199
- If the height or width of the canvas is 0, the string "data:," is returned.
200
- If the requested type is not image/png, but the returned value starts with data:image/png, then the requested type is not supported.
201
- Chrome also supports the image/webp type.
202
- */
203
-
204
- var supportTypes = {
205
- "image/jpg" : true,
206
- "image/png" : true,
207
- "image/webp" : supportWebP()
208
- };
209
- // var exportType = "image/png";
210
- // if(supportTypes[type]){
211
- // exportType = type;
212
- // }
213
- // 多端一致,缩略图必须是 jpg
214
- var exportType = "image/jpg";
215
- var newImageData = canvas.toDataURL(exportType);
216
- return newImageData;
217
- }
218
-
219
- function supportWebP(){
220
- try{
221
- return (canvas.toDataURL('image/webp').indexOf('data:image/webp') == 0);
222
- }catch(err) {
223
- return false;
224
- }
225
- }
226
- }
227
-
228
- win.UploadFile = {
229
- init: init,
230
- dataType: dataType,
231
- resize : resize
232
- };
1
+ (function(win) {
2
+
3
+ var dataType = {
4
+ form: getFormData,
5
+ json: getJsonData,
6
+ data: getData
7
+ };
8
+
9
+ function genUId() {
10
+ var date = new Date().getTime();
11
+ var uuid = 'xxxxxx4xxxyxxxxxxx'.replace(/[xy]/g, function(c) {
12
+ var r = (date + Math.random() * 16) % 16 | 0;
13
+ date = Math.floor(date / 16);
14
+ return (c == 'x' ? r : (r & 0x3 | 0x8)).toString(16);
15
+ });
16
+ return uuid;
17
+ };
18
+
19
+ function mergeOption(opts) {
20
+ var options = {
21
+ domain: '',
22
+ method: 'POST',
23
+ file_data_name: 'file',
24
+ unique_key: 'key',
25
+ base64_size: 4 * 1024 * 1024,
26
+ chunk_size: 4 * 1024 * 1024,
27
+ bos_chunk_size: 4 * 1024 * 1024 * 1024, // 上传超过5GB大小的文件
28
+ headers: {},
29
+ multi_parmas: {},
30
+ query: {},
31
+ support_options: true,
32
+ data: dataType.form,
33
+ genUId: genUId
34
+ };
35
+ if (!opts || !opts.domain) {
36
+ throw new Error('domain is null');
37
+ }
38
+ for (var key in opts) {
39
+ options[key] = opts[key];
40
+ }
41
+ return options;
42
+ }
43
+
44
+ function mEach(m, callback) {
45
+ for (var key in m) {
46
+ callback(key, m[key]);
47
+ }
48
+ }
49
+
50
+ function getFormData(file, opts) {
51
+ var form = new FormData();
52
+ if (opts.unique_key) {
53
+ var suffix = file.name.substr(file.name.lastIndexOf('.'));
54
+ var unique_value = genUId() + suffix;
55
+ form.append(opts.unique_key, unique_value); // 设置 key
56
+ opts.unique_value = unique_value;
57
+ }
58
+ form.append(opts.file_data_name, file); // 设置 file
59
+ mEach(opts.multi_parmas, function(key, value) { // 设置 token
60
+ form.append(key, value);
61
+ });
62
+ return form;
63
+ }
64
+
65
+ function getJsonData(file, opts) {
66
+ var data = {};
67
+ if (opts.unique_key) {
68
+ var suffix = file.name.substr(file.name.lastIndexOf('.'));
69
+ var unique_value = genUId() + suffix;
70
+ data[opts.unique_key] = unique_value;
71
+ opts.unique_value = unique_value;
72
+ }
73
+ data[opts.file_data_name] = file;
74
+ mEach(opts.multi_parmas, function(key, value) {
75
+ data[key] = value;
76
+ });
77
+ return JSON.stringify(data);
78
+ }
79
+
80
+ function getData(file, opts) {
81
+ return file;
82
+ }
83
+
84
+ var preLoaded = 0, realLoaded;
85
+
86
+ function Upload(options) {
87
+ this.options = mergeOption(options);
88
+
89
+ this.setOptions = function(opts) {
90
+ var me = this;
91
+ mEach(opts, function(key, value) {
92
+ me.options[key] = value;
93
+ });
94
+ };
95
+
96
+ this.upload = function(file, callback) {
97
+ if (!file) {
98
+ callback.onError('upload file is null.');
99
+ return;
100
+ }
101
+ var me = this;
102
+ uploadProcess(file, this.options, {
103
+ onProgress: function(loaded, total, isBosProcess) {
104
+ realLoaded = loaded;
105
+ if(isBosProcess){ //说明启动了 bos 上传
106
+ realIncrease = loaded/total * (total-preLoaded);
107
+ realLoaded = preLoaded + realIncrease;
108
+ }
109
+ callback.onProgress(realLoaded, total);
110
+ if(!isBosProcess) {
111
+ preLoaded = realLoaded;
112
+ }
113
+ },
114
+ onCompleted: function(data) {
115
+ callback.onCompleted(data);
116
+ },
117
+ onError: function(errorCode) {
118
+ callback.onError(errorCode);
119
+ },
120
+ onOpen: function(xhr) {
121
+ me.xhr = xhr;
122
+ }
123
+ });
124
+ };
125
+
126
+ this.cancel = function() {
127
+ this.xhr && this.xhr.abort();
128
+ };
129
+ }
130
+
131
+ function init(options) {
132
+ return new Upload(options);
133
+ }
134
+
135
+ function getResizeRatio(imageInfo,config){
136
+ //hasOwnProperty?
137
+
138
+ var ratio = 1;
139
+
140
+ var oWidth = imageInfo.width;
141
+ var maxWidth = config.maxWidth || 0;
142
+ if(maxWidth > 0 && oWidth > maxWidth){
143
+ ratio = maxWidth/oWidth;
144
+ }
145
+
146
+ var oHeight = imageInfo.height;
147
+ var maxHeight = config.maxHeight || 0;
148
+ if(maxHeight > 0 && oHeight > maxHeight){
149
+ var ratioHeight = maxHeight/oHeight;
150
+ ratio = Math.min(ratio,ratioHeight);
151
+ }
152
+
153
+
154
+ var maxSize = config.maxSize || 0;
155
+ var oSize = Math.ceil(imageInfo.size/1000); //K,Math.ceil(0.3) = 1;
156
+ if(oSize > maxSize){
157
+ ratioSize = maxSize/oSize;
158
+ ratio = Math.min(ratio,ratioSize);
159
+ }
160
+
161
+ return ratio;
162
+ }
163
+
164
+ function resize(file,config,callback){
165
+ //file对象没有高宽
166
+ var type = file.type; //image format
167
+ var canvas = document.createElement("canvas");
168
+
169
+ var reader = new FileReader();
170
+
171
+ reader.readAsDataURL(file);
172
+ reader.onload = function(evt){
173
+ var imageData = evt.target.result;
174
+ var img = new Image();
175
+ img.src = imageData;
176
+ var width = img.width;
177
+ var height = img.height;
178
+ var imageInfo = {
179
+ width : width,
180
+ height : height,
181
+ size : evt.total
182
+ }
183
+ var ratio = getResizeRatio(imageInfo,config);
184
+ var newImageData = imageData;
185
+ if(ratio < 1){
186
+ newImageData = compress(img, width*ratio, height*ratio);;
187
+ }
188
+ callback(newImageData);
189
+ }
190
+
191
+ function compress(img, width, height){
192
+ canvas.width = width;
193
+ canvas.height = height;
194
+
195
+ var context = canvas.getContext('2d');
196
+ context.drawImage(img, 0, 0, width, height);
197
+
198
+ /*
199
+ If the height or width of the canvas is 0, the string "data:," is returned.
200
+ If the requested type is not image/png, but the returned value starts with data:image/png, then the requested type is not supported.
201
+ Chrome also supports the image/webp type.
202
+ */
203
+
204
+ var supportTypes = {
205
+ "image/jpg" : true,
206
+ "image/png" : true,
207
+ "image/webp" : supportWebP()
208
+ };
209
+ // var exportType = "image/png";
210
+ // if(supportTypes[type]){
211
+ // exportType = type;
212
+ // }
213
+ // 多端一致,缩略图必须是 jpg
214
+ var exportType = "image/jpg";
215
+ var newImageData = canvas.toDataURL(exportType);
216
+ return newImageData;
217
+ }
218
+
219
+ function supportWebP(){
220
+ try{
221
+ return (canvas.toDataURL('image/webp').indexOf('data:image/webp') == 0);
222
+ }catch(err) {
223
+ return false;
224
+ }
225
+ }
226
+ }
227
+
228
+ win.UploadFile = {
229
+ init: init,
230
+ dataType: dataType,
231
+ resize : resize
232
+ };
233
233
  })(window);
@@ -1,31 +1,31 @@
1
- import Chat from './components/chat';
2
- import ConversationList from './components/conversation-list';
3
- import chatCom from './components/chat';
4
- import TextMessage from './components/msg-text';
5
- import ImageMessage from './components/msg-image';
6
-
7
- const components = {
8
- ConversationList,
9
- chatCom,
10
- TextMessage,
11
- ImageMessage
12
- };
13
-
14
- function Service(Config) {
15
- return require("./utils/services.js")(Config);
16
- }
17
-
18
- function install(Vue) {
19
- Vue.prototype.$Service = Service()
20
- Object.keys(components).forEach((key) => {
21
- Vue.component(key, components[key]);
22
- });
23
- }
24
-
25
- if (typeof window !== 'undefined' && window.Vue) install(window.Vue);
26
-
27
- export default {
28
- install,
29
- ...components
30
- };
31
-
1
+ import Chat from './components/chat';
2
+ import ConversationList from './components/conversation-list';
3
+ import chatCom from './components/chat';
4
+ import TextMessage from './components/msg-text';
5
+ import ImageMessage from './components/msg-image';
6
+
7
+ const components = {
8
+ ConversationList,
9
+ chatCom,
10
+ TextMessage,
11
+ ImageMessage
12
+ };
13
+
14
+ function Service(Config) {
15
+ return require("./utils/services.js")(Config);
16
+ }
17
+
18
+ function install(Vue) {
19
+ Vue.prototype.$Service = Service()
20
+ Object.keys(components).forEach((key) => {
21
+ Vue.component(key, components[key]);
22
+ });
23
+ }
24
+
25
+ if (typeof window !== 'undefined' && window.Vue) install(window.Vue);
26
+
27
+ export default {
28
+ install,
29
+ ...components
30
+ };
31
+