fmui-base 1.0.0

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 (66) hide show
  1. package/lib/button/button.js +109 -0
  2. package/lib/button/index.js +16 -0
  3. package/lib/care/care.js +55 -0
  4. package/lib/care/index.js +16 -0
  5. package/lib/comment_list/List.js +101 -0
  6. package/lib/comment_list/List.less +3 -0
  7. package/lib/comment_list/index.js +16 -0
  8. package/lib/db/db.js +789 -0
  9. package/lib/db/variables.js +110 -0
  10. package/lib/form/answer.less +3 -0
  11. package/lib/form/form.js +2048 -0
  12. package/lib/form/index.js +16 -0
  13. package/lib/form/subForm.js +724 -0
  14. package/lib/form/table.js +1071 -0
  15. package/lib/index.js +43 -0
  16. package/lib/loading/index.js +16 -0
  17. package/lib/loading/loading.js +56 -0
  18. package/lib/no_data/index.js +16 -0
  19. package/lib/no_data/no_data.js +72 -0
  20. package/lib/poppage/check.js +572 -0
  21. package/lib/poppage/check.less +0 -0
  22. package/lib/poppage/index.js +16 -0
  23. package/lib/poppage/table/index.js +16 -0
  24. package/lib/poppage/table/table.js +776 -0
  25. package/lib/poppage/table/table.less +35 -0
  26. package/lib/poppage/tree/index.js +16 -0
  27. package/lib/poppage/tree/tree.js +705 -0
  28. package/lib/poppage/tree/tree.less +9 -0
  29. package/lib/poppage/treetable/index.js +16 -0
  30. package/lib/poppage/treetable/treetable.js +445 -0
  31. package/lib/poppage/treetable/treetable.less +9 -0
  32. package/lib/poppage/utils.js +40 -0
  33. package/lib/positioning/index.js +16 -0
  34. package/lib/positioning/positioning.js +136 -0
  35. package/lib/process_batch/index.js +16 -0
  36. package/lib/process_batch/pageHome.less +3 -0
  37. package/lib/process_batch/processBatch.js +1669 -0
  38. package/lib/process_info/FlowChart.js +231 -0
  39. package/lib/process_info/RelationProcess.js +173 -0
  40. package/lib/process_info/index.js +16 -0
  41. package/lib/process_info/processInfo.js +6090 -0
  42. package/lib/process_list/index.js +16 -0
  43. package/lib/process_list/processList.js +1378 -0
  44. package/lib/process_list/processList.less +5 -0
  45. package/lib/select-fileno/index.js +16 -0
  46. package/lib/select-fileno/pageHome.js +722 -0
  47. package/lib/select-fileno/pageHome.less +0 -0
  48. package/lib/select-fileno/utils.js +40 -0
  49. package/lib/select-serialnumber/index.js +16 -0
  50. package/lib/select-serialnumber/pageHome.js +651 -0
  51. package/lib/select-serialnumber/pageHome.less +0 -0
  52. package/lib/select-serialnumber/pageHome1.js +649 -0
  53. package/lib/select-serialnumber/utils.js +40 -0
  54. package/lib/selectMember/index.js +16 -0
  55. package/lib/selectMember/select.js +7061 -0
  56. package/lib/selectMember/select.less +25 -0
  57. package/lib/selectMember/utils.js +40 -0
  58. package/lib/selectMember//347/247/273/345/212/250/347/253/257/351/200/211/344/272/272/347/273/204/344/273/266/350/257/264/346/230/216/346/226/207/346/241/243.md +145 -0
  59. package/lib/signature/draw.js +268 -0
  60. package/lib/signature/index.js +16 -0
  61. package/lib/signature/sign.js +359 -0
  62. package/lib/signature/sign.less +73 -0
  63. package/lib/signature//346/211/213/345/206/231/347/255/276/345/220/215/344/275/277/347/224/250/346/226/207/346/241/243.md +12 -0
  64. package/lib/upload/index.js +16 -0
  65. package/lib/upload/upload.js +566 -0
  66. package/package.json +72 -0
@@ -0,0 +1,566 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = undefined;
7
+
8
+ var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
9
+
10
+ var _react = require('react');
11
+
12
+ var _react2 = _interopRequireDefault(_react);
13
+
14
+ var _Toast = require('saltui/lib/Toast');
15
+
16
+ var _Toast2 = _interopRequireDefault(_Toast);
17
+
18
+ var _uploadcore = require('uploadcore');
19
+
20
+ require('whatwg-fetch');
21
+
22
+ require('es6-promise');
23
+
24
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
+
26
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
27
+
28
+ function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
29
+
30
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
31
+
32
+ var PageHome = function (_React$Component) {
33
+ _inherits(PageHome, _React$Component);
34
+
35
+ function PageHome(props) {
36
+ _classCallCheck(this, PageHome);
37
+
38
+ var _this = _possibleConstructorReturn(this, (PageHome.__proto__ || Object.getPrototypeOf(PageHome)).call(this, props));
39
+
40
+ var label = props.label;
41
+ if (!label) {
42
+ label = '';
43
+ }
44
+ var keyNum = _this.GenNonDuplicateID(8);
45
+ // 上传个数限制
46
+ var limitNo = props.limitNo;
47
+ if (limitNo && limitNo > 0) {
48
+ limitNo = limitNo;
49
+ } else {
50
+ limitNo = 9;
51
+ }
52
+
53
+ var setting = getSysAttachSetting();
54
+ // 上传类型images:图片,audios:附件,videos:视频
55
+ var uploadType = props.uploadType;
56
+ // 上传格式
57
+ var extensions = props.extensions;
58
+ if (!extensions) {
59
+ //如果组件没有设置则取后台默认
60
+ extensions = setting.sysAttachmentCate;
61
+ }
62
+ // 可上传
63
+ var canAdd = props.canAdd;
64
+ // 可删除
65
+ var canDel = props.canDel;
66
+ //预览类型,view:永中预览,download:下载
67
+ var viewType = props.viewType;
68
+ if (typeof viewType == 'undefined' || viewType == null || viewType == '') {
69
+ viewType = 'view';
70
+ }
71
+ if (setting.sysAttachmentView == 0) {
72
+ //如果设置中预览关闭则默认下载
73
+ viewType = "download";
74
+ }
75
+
76
+ //是否必填
77
+ var required = props.required;
78
+
79
+ //初始化List
80
+ var initList = props.initList;
81
+ if (typeof initList == 'undefined' || initList == null || !(initList instanceof Array)) {
82
+ //判断初始化id集合有没有
83
+ initList = [];
84
+ }
85
+
86
+ // 文件大小限制,默认单位byte,默认0,表示不限制
87
+ var fileSizeLimit = props.fileSizeLimit;
88
+ if (fileSizeLimit == null || fileSizeLimit == '' || fileSizeLimit == undefined || fileSizeLimit == 'undefined') {
89
+ //fileSizeLimit = 0;
90
+ //如果组件没有设置则取后台默认
91
+ fileSizeLimit = setting.sysAttachmentSize;
92
+ }
93
+ fileSizeLimit = parseInt(fileSizeLimit);
94
+
95
+ //文件总大小限制
96
+ var fileAllSizeLimit = props.fileAllSizeLimit;
97
+ if (fileAllSizeLimit == null || fileAllSizeLimit == '' || fileAllSizeLimit == undefined || fileAllSizeLimit == 'undefined') {
98
+ fileAllSizeLimit = 0;
99
+ }
100
+
101
+ var accept = {};
102
+ if (uploadType == 'image') {
103
+ //图片
104
+ accept = {
105
+ title: '图片',
106
+ extensions: 'jpg,jpeg,png,gif,webp,bmp',
107
+ mimeTypes: 'image/*' // or 'image/jpeg,image/png'
108
+ };
109
+ if (extensions) {
110
+ accept.extensions = extensions;
111
+ }
112
+ } else {
113
+ uploadType = "file";
114
+ if (extensions) {
115
+ accept.title = '文件';
116
+ accept.extensions = extensions;
117
+ } else {
118
+ accept = null;
119
+ }
120
+ }
121
+ // extensions="image/jpg,image/png";
122
+ // if(extensions){
123
+ // accept = extensions;
124
+ // }
125
+
126
+
127
+ var dir = props.dir;
128
+ var context = document.getElementById("context").value;
129
+ var token = document.getElementById("token").value;
130
+ _this.state = {
131
+ required: required,
132
+ canAdd: canAdd,
133
+ canDel: canDel,
134
+ keyNum: keyNum,
135
+ uploadType: uploadType,
136
+ accept: accept,
137
+ fileSizeLimit: fileSizeLimit * 1024 * 1024,
138
+ fileAllSizeLimit: fileAllSizeLimit,
139
+ label: label,
140
+ dir: dir,
141
+ limitNo: limitNo,
142
+ context: context,
143
+ uploadUrl: context + '/dingisv/api/common/createFile',
144
+ urlPrev: context + '/dingisv/api/common/viewImage?fid=',
145
+ queryUrl: context + '/dingisv/api/common/getAttachmentByIds?ids=',
146
+ //queryUrl: context + '/client/approve/getCanBackActivity?ids=',
147
+ token: token,
148
+ isInit: false,
149
+ addQueNum: 0,
150
+ viewType: viewType,
151
+ initList: initList
152
+ };
153
+ return _this;
154
+ }
155
+
156
+ _createClass(PageHome, [{
157
+ key: 'GenNonDuplicateID',
158
+ value: function GenNonDuplicateID(randomLength) {
159
+ return Number(Math.random().toString().substr(3, randomLength) + Date.now()).toString(36);
160
+ }
161
+ }, {
162
+ key: 'del',
163
+ value: function del(delIndex) {
164
+ var initList = this.props.initList;
165
+ initList.splice(delIndex, 1);
166
+ this.props.onChange(initList);
167
+ }
168
+ }, {
169
+ key: 'componentDidMount',
170
+ value: function componentDidMount() {
171
+ var t = this;
172
+ var param = {
173
+ name: 'file',
174
+ url: this.state.uploadUrl,
175
+ autoPending: true,
176
+ accept: t.state.accept,
177
+ multiple: true,
178
+ fileSizeLimit: t.state.fileSizeLimit
179
+ };
180
+ var limitNo = t.state.limitNo;
181
+ //param.queueCapcity= limitNo;
182
+ var up = this.getCore(param);
183
+ var picker = up.getPickerCollector();
184
+ picker.addArea(document.getElementById('ddUploadPic' + t.state.keyNum));
185
+ }
186
+ }, {
187
+ key: 'getCore',
188
+ value: function getCore(param) {
189
+ var _this2 = this;
190
+
191
+ var t = this;
192
+ var up = new _uploadcore.UploadCore(param);
193
+ up.on(_uploadcore.Events.FILE_UPLOAD_PREPARING, function (request) {
194
+ request.setHeader("Authorization", "Bearer " + t.state.token);
195
+ request.setParam('dir', t.state.dir);
196
+ console.info(request.getParam('token'));
197
+ }).on(_uploadcore.Events.QUEUE_FILE_ADDED, function (file) {
198
+ // return false;
199
+ //判断总文件大小不超过
200
+ var fileAllSizeLimit = t.state.fileAllSizeLimit;
201
+ if (fileAllSizeLimit > 0) {
202
+ var fileAllSize = 0;
203
+ t.state.initList.map(function (item) {
204
+ if (item.fileSize == null) {
205
+ fileAllSize += item.size;
206
+ } else {
207
+ fileAllSize += item.fileSize;
208
+ }
209
+ });
210
+ if (fileAllSizeLimit * 1024 * 1024 <= fileAllSize + file.size) {
211
+ file.cancel();
212
+ _Toast2.default.show({
213
+ type: 'error',
214
+ content: '文件总大小不能超过' + fileAllSizeLimit + 'M!'
215
+ });
216
+ return false;
217
+ }
218
+ }
219
+ console.info('queuefileadded', file);
220
+ file.session().progress(function (e) {
221
+ console.info('progress', e);
222
+ }).fail(function (error) {
223
+ console.info(error);
224
+ }).done(function (response) {
225
+ console.info(response.getJson());
226
+ });
227
+ }).on(_uploadcore.Events.FILE_UPLOAD_ERROR, function (error) {
228
+ if (error.name == 'AbortError') {
229
+ //网络中断
230
+ _Toast2.default.show({
231
+ type: 'error',
232
+ content: '网络中断!'
233
+ });
234
+ return false;
235
+ } else if (error.name == 'TimeoutError') {
236
+ //网络超时
237
+ _Toast2.default.show({
238
+ type: 'error',
239
+ content: '网络中断!'
240
+ });
241
+ return false;
242
+ } else if (error.name == 'NetworkError') {
243
+ //网络错误
244
+ _Toast2.default.show({
245
+ type: 'error',
246
+ content: '网络错误!'
247
+ });
248
+ return false;
249
+ } else {
250
+ _Toast2.default.show({
251
+ type: 'error',
252
+ content: '上传失败!'
253
+ });
254
+ return false;
255
+ }
256
+ }).on(_uploadcore.Events.QUEUE_ERROR, function (error) {
257
+ var accept = t.state.accept;
258
+ var fileSizeLimit = t.state.fileSizeLimit;
259
+ if (error.name == 'FilterError') {
260
+ //过滤文件报错
261
+ if (accept) {
262
+ //扩展名出错
263
+ var extensions = accept.extensions;
264
+ if (extensions.indexOf(error.file.ext) < 0) {
265
+ _Toast2.default.show({
266
+ type: 'error',
267
+ content: '文件类型错误!'
268
+ });
269
+ return false;
270
+ }
271
+ }
272
+
273
+ if (fileSizeLimit > 0) {
274
+ if (error.file.size > fileSizeLimit) {
275
+ var fileSizeLimitName = t.calculate(fileSizeLimit);
276
+ _Toast2.default.show({
277
+ type: 'error',
278
+ content: '文件不能大于' + fileSizeLimitName + '!'
279
+ });
280
+ return false;
281
+ }
282
+ }
283
+
284
+ _Toast2.default.show({
285
+ type: 'error',
286
+ content: '文件不能重复!'
287
+ });
288
+ return false;
289
+ } else if (error.name == 'QueueLimitError') {
290
+ //队列限制
291
+ _Toast2.default.show({
292
+ type: 'error',
293
+ content: '不能上传更多文件了!'
294
+ });
295
+ return false;
296
+ } else {
297
+ _Toast2.default.show({
298
+ type: 'error',
299
+ content: '上传失败!'
300
+ });
301
+ return false;
302
+ }
303
+ }).on(_uploadcore.Events.FILE_UPLOAD_COMPLETED, function (file) {
304
+ if (file.getStatus() === _uploadcore.Status.SUCCESS) {
305
+ //alert('上传成功');
306
+ var result = file.response.getJson();
307
+ if (result.code == -1) {
308
+ alert(result.message);
309
+ } else {
310
+ var json = file.response.getJson().data;
311
+
312
+ //var checksum = json[0].checksum;
313
+ var initList = t.state.initList;
314
+ if (initList.length < _this2.state.limitNo) {
315
+ initList = initList.concat(json);
316
+ t.props.onChange(initList);
317
+ t.setState({
318
+ initList: initList
319
+ });
320
+ } else {
321
+ _Toast2.default.show({
322
+ type: 'error',
323
+ content: '不能上传更多文件了!'
324
+ });
325
+ return false;
326
+ }
327
+ }
328
+ } else {
329
+ //file.cancel();
330
+ // var json = [ {
331
+ // "fileName" : "d33087332a6c477a806d823209fef5c7.png",
332
+ // "previewUrl" : null,
333
+ // "fileDisplayName" : "1511353597(1).png",
334
+ // "downloadUrl" : "/attachment/download?fid=402887dc630ba7e701630bb4fe8f0011&chksum=04c8e2fdbb7ec02bc3492f9c98fa8e36",
335
+ // "imageSmallerUrl" : "/attachment/dingding/201804/d33087332a6c477a806d823209fef5c7_sm.png",
336
+ // "imageMiddleUrl" : "/attachment/dingding/201804/d33087332a6c477a806d823209fef5c7_mid.png",
337
+ // "fileExt" : ".png",
338
+ // "delFlag" : "0",
339
+ // "fileModule" : null,
340
+ // "multiCorpId" : false,
341
+ // "previewDate" : null,
342
+ // "imediaUrl" : "/attachment/dingding/201804/d33087332a6c477a806d823209fef5c7.png",
343
+ // "fileSize" : 67577,
344
+ // "fileDisplayNameNoExt" : "1511353597(1)",
345
+ // "relativePath" : "dingding/201804",
346
+ // "isEncrypted" : 0,
347
+ // "imageUrl" : "/attachment/image?fid=402887dc630ba7e701630bb4fe8f0011&chksum=04c8e2fdbb7ec02bc3492f9c98fa8e36",
348
+ // "checksum" : "04c8e2fdbb7ec02bc3492f9c98fa8e36",
349
+ // "deleteUrl" : "/attachment/delete?fid=402887dc630ba7e701630bb4fe8f0011&chksum=ef9f55278b3594f3eaefef23feacaa7d",
350
+ // "id" : "402887dc630ba7e701630bb4fe8f0011",
351
+ // "contentType" : null
352
+ // } ];
353
+ // var img = json;
354
+ // //var checksum = json[0].checksum;
355
+ // var initList = t.props.initList;
356
+ // if(initList.length < this.state.limitNo){
357
+ // initList = initList.concat(json);
358
+
359
+ // t.props.onChange(initList);
360
+ // }else{
361
+ // Toast.show({
362
+ // type: 'error',
363
+ // content: '不能上传更多文件了!',
364
+ // });
365
+ // return false;
366
+ // }
367
+
368
+ _Toast2.default.show({
369
+ type: 'error',
370
+ content: '上传失败!'
371
+ });
372
+ return false;
373
+ }
374
+ });
375
+ return up;
376
+ }
377
+ //计算大小
378
+
379
+ }, {
380
+ key: 'calculate',
381
+ value: function calculate(no) {
382
+ var a = no / 1024;
383
+ if (a < 1) {
384
+ return no + 'B';
385
+ }
386
+ var b = a / 1024;
387
+ if (b < 1) {
388
+ return Math.round(a * 100) / 100 + 'KB';
389
+ }
390
+ return Math.round(b * 100) / 100 + 'MB';
391
+ }
392
+
393
+ //预览
394
+
395
+ }, {
396
+ key: 'view',
397
+ value: function view(file) {
398
+ var id = file.id;
399
+ if (this.state.viewType == 'view') {
400
+ var isLoadWatermark = this.props.isLoadWatermark;
401
+ var allowDownLoad = this.props.allowDownLoad;
402
+ var fileExt = file.fileExt;
403
+ downloadFile(id, 'android', fileExt, allowDownLoad, isLoadWatermark);
404
+ } else {
405
+ downloadFile(id);
406
+ }
407
+ }
408
+
409
+ //初始化ids
410
+
411
+ }, {
412
+ key: 'initData',
413
+ value: function initData() {
414
+ var t = this;
415
+ var initIds = this.props.initIds;
416
+ var initList = [];
417
+ if (typeof initIds == 'undefined' || initIds == null || initIds == '') {
418
+ //判断初始化附件id字符串有没有
419
+ initList = this.props.initList;
420
+ if (typeof initList == 'undefined' || initList == null || !(initList instanceof Array)) {
421
+ //判断初始化id集合有没有
422
+ initList = [];
423
+ }
424
+ t.setState({
425
+ initList: initList
426
+ });
427
+ } else {
428
+ //let formData = new FormData();
429
+ //formData.append('token', t.state.token);
430
+ fetch(t.state.queryUrl + initIds, {
431
+ method: "POST",
432
+ headers: {
433
+ 'Content-Type': 'application/x-www-form-urlencoded'
434
+ },
435
+ body: 'token=' + t.state.token
436
+ // headers: {
437
+ // "Content-Type": "application/x-www-form-urlencoded",
438
+ // "Authorization": "Bearer "+t.state.token,
439
+ // "Cookie":"epname=zhaoyh; isRemembered=1; epsid=89f2b25f-7719-4b62-8df5-d11303112f4f; eptoken=emhhb3lofDBjOTdlNjI2MmY1YjMwYWUwODJmNDkyYTNlNDM4NGIyNTUxNGQ3N2ZhNWJmMWM2ZmE0ZThlM2Q3ZWQ0Yjg1ZDUyMzc5MDY0ODBkZGYwODc0ODJjZDBmNDJhOWI5ODY4MzllZjRhNjM0MjAzODRjOWI4YjliY2IyMjM5ZmRjODEzOGUyYjVkMTdlMzA1OGUxMDNlNTdiNjA2YzkxZWM2NGMyMGYzZDRiZGRjMTRjZTFhYjFlZmZkZTI5YTgwN2JkNDMyY2FiMDA3YTA1MzI0YWVhMjIyMjViY2IxMzZmMGNlOGYxY2YzMTkwNTZmOTgzODM1M2E5Njk2Y2I4Mjg2YzU="
440
+ // }
441
+ }).then(function (res) {
442
+
443
+ // var json = [ {
444
+ // "fileName" : "d33087332a6c477a806d823209fef5c7.png",
445
+ // "previewUrl" : null,
446
+ // "fileDisplayName" : "1511353597(1).png",
447
+ // "downloadUrl" : "/attachment/download?fid=402887dc630ba7e701630bb4fe8f0011&chksum=04c8e2fdbb7ec02bc3492f9c98fa8e36",
448
+ // "imageSmallerUrl" : "/attachment/dingding/201804/d33087332a6c477a806d823209fef5c7_sm.png",
449
+ // "imageMiddleUrl" : "/attachment/dingding/201804/d33087332a6c477a806d823209fef5c7_mid.png",
450
+ // "fileExt" : ".png",
451
+ // "delFlag" : "0",
452
+ // "fileModule" : null,
453
+ // "multiCorpId" : false,
454
+ // "previewDate" : null,
455
+ // "imediaUrl" : "/attachment/dingding/201804/d33087332a6c477a806d823209fef5c7.png",
456
+ // "fileSize" : 67577,
457
+ // "fileDisplayNameNoExt" : "1511353597(1)",
458
+ // "relativePath" : "dingding/201804",
459
+ // "isEncrypted" : 0,
460
+ // "imageUrl" : "/attachment/image?fid=402887dc630ba7e701630bb4fe8f0011&chksum=04c8e2fdbb7ec02bc3492f9c98fa8e36",
461
+ // "checksum" : "04c8e2fdbb7ec02bc3492f9c98fa8e36",
462
+ // "deleteUrl" : "/attachment/delete?fid=402887dc630ba7e701630bb4fe8f0011&chksum=ef9f55278b3594f3eaefef23feacaa7d",
463
+ // "id" : "402887dc630ba7e701630bb4fe8f0011",
464
+ // "contentType" : null
465
+ // } ];
466
+ // initList = initList.concat(json);
467
+ // t.props.onChange(initList);
468
+ if (res.ok) {
469
+ res.json().then(function (obj) {
470
+ initList = initList.concat(obj);
471
+ t.props.onChange(initList);
472
+ t.setState({
473
+ initList: initList
474
+ });
475
+ // Get the JSON
476
+ });
477
+ } else if (res.status == 401) {
478
+ // To do with res
479
+ }
480
+ }, function (e) {
481
+ // Handling errors
482
+ }).catch(function (error) {
483
+ console.log("错误:" + error);
484
+ });
485
+ }
486
+ }
487
+
488
+ //加载文件列表
489
+
490
+ }, {
491
+ key: 'render',
492
+ value: function render() {
493
+ var _this3 = this;
494
+
495
+ var t = this;
496
+ return _react2.default.createElement(
497
+ 'div',
498
+ { className: '' },
499
+ _react2.default.createElement(
500
+ 'div',
501
+ { className: this.state.label == '' ? 't-DN' : 't-field-box t-FBH t-FBAC t-FBJ' },
502
+ _react2.default.createElement(
503
+ 'div',
504
+ { className: this.state.required ? 't-field-layout-h-label t-FS16 required' : 't-field-layout-h-label t-FS16' },
505
+ this.props.label
506
+ )
507
+ ),
508
+ _react2.default.createElement(
509
+ 'div',
510
+ { className: t.state.uploadType == 'image' ? "t-FBH t-PL16 t-fw" : "t-PL16 t-PR16" },
511
+ t.state.initList.map(function (item, i) {
512
+ function calculate(no) {
513
+ var a = no / 1024;
514
+ if (a < 1) {
515
+ return no + 'B';
516
+ }
517
+ var b = a / 1024;
518
+ if (b < 1) {
519
+ return Math.round(a * 100) / 100 + 'KB';
520
+ }
521
+ return Math.round(b * 100) / 100 + 'MB';
522
+ }
523
+ return t.state.uploadType == 'image' ? _react2.default.createElement(
524
+ 'div',
525
+ { className: 'dd-uploaded', key: i },
526
+ _react2.default.createElement('img', { width: '60', height: '60', src: t.state.urlPrev + item.id + '&token=' + t.state.token }),
527
+ _react2.default.createElement('i', { className: t.state.canDel ? 'iconfont icon-minus' : 't-DN', onClick: _this3.del.bind(_this3, i) })
528
+ ) : _react2.default.createElement(
529
+ 'div',
530
+ { className: 't-FBH', key: i },
531
+ _react2.default.createElement(
532
+ 'div',
533
+ { className: 'dd-t-border t-P6 t-MB10 t-FB1', onClick: _this3.view.bind(_this3, item) },
534
+ _react2.default.createElement('i', { className: 'iconfont icon-file t-FC9 t-FL t-MR6' }),
535
+ _react2.default.createElement(
536
+ 'div',
537
+ { className: 'dd-t-list-text-content' },
538
+ _react2.default.createElement(
539
+ 'div',
540
+ { className: 't-list-title t-omit t-LH1_4' },
541
+ typeof item.fileDisplayName == 'undefined' ? item.name : item.fileDisplayName
542
+ ),
543
+ _react2.default.createElement(
544
+ 'div',
545
+ { className: 'dd-t-list-time t-FBAC' },
546
+ calculate(typeof item.fileSize == 'undefined' ? item.size : item.fileSize)
547
+ )
548
+ )
549
+ ),
550
+ _react2.default.createElement('i', { className: t.state.canDel ? 'iconfont icon-minus t-BC04 t-WH25 t-R50 t-ML10 t-FCf t-LH1 t-MT10' : 't-DN', onClick: _this3.del.bind(_this3, i) })
551
+ );
552
+ }),
553
+ _react2.default.createElement(
554
+ 'div',
555
+ { flex: 1, className: 't-PB10' },
556
+ _react2.default.createElement('i', { id: 'ddUploadPic' + t.state.keyNum, className: t.state.canAdd && (t.state.limitNo > t.props.initList.length || t.state.limitNo == -1) ? 'dd-add-btn iconfont icon-plus' : 't-DN' })
557
+ )
558
+ )
559
+ );
560
+ }
561
+ }]);
562
+
563
+ return PageHome;
564
+ }(_react2.default.Component);
565
+
566
+ exports.default = PageHome;
package/package.json ADDED
@@ -0,0 +1,72 @@
1
+ {
2
+ "name": "fmui-base",
3
+ "version": "1.0.0",
4
+ "title": "fmui-base",
5
+ "description": "fmui-base",
6
+ "main": "lib/index.js",
7
+ "files": [
8
+ "dist",
9
+ "lib"
10
+ ],
11
+ "scripts": {
12
+ "test": "jest",
13
+ "coverage": "jest && codecov",
14
+ "build": "webpack --config webpack.config",
15
+ "start": "npm run build && webpack-dev-server --inline ",
16
+ "docs-start": "webpack-dev-server --config ./scripts/docs.config --inline",
17
+ "clean": "rd /s/q lib && mkdir lib",
18
+ "lib": " npm run build && babel src --out-dir lib --ignore \"**/*.test.js\"",
19
+ "docs": "webpack --config ./scripts/docs.config",
20
+ "docs-build": "webpack --config ./scripts/build.config"
21
+ },
22
+ "author": "zhaoyh",
23
+ "license": "MIT",
24
+ "devDependencies": {
25
+ "babel-cli": "^6.24.0",
26
+ "babel-core": "^6.18.2",
27
+ "babel-jest": "^17.0.2",
28
+ "babel-loader": "^6.2.8",
29
+ "babel-plugin-transform-decorators-legacy": "^1.3.4",
30
+ "babel-preset-es2015": "^6.18.0",
31
+ "babel-preset-react": "^6.16.0",
32
+ "babel-preset-stage-2": "^6.18.0",
33
+ "codecov": "^2.1.0",
34
+ "css-loader": "^0.26.1",
35
+ "enzyme": "^2.7.1",
36
+ "enzyme-to-json": "^1.5.0",
37
+ "eslint": "^3.13.1",
38
+ "eslint-plugin-babel": "^4.0.0",
39
+ "eslint-plugin-jsx-a11y": "^3.0.2",
40
+ "eslint-plugin-react": "^6.9.0",
41
+ "file-loader": "^0.9.0",
42
+ "github-markdown-css": "^2.5.0",
43
+ "jest": "^19.0.2",
44
+ "json-loader": "^0.5.4",
45
+ "less": "^3.9.0",
46
+ "less-loader": "^4.1.0",
47
+ "marked": "^0.3.6",
48
+ "prismjs": "^1.6.0",
49
+ "raw-loader": "^0.5.1",
50
+ "react": "^15.4.1",
51
+ "react-addons-perf": "^15.4.1",
52
+ "react-addons-test-utils": "^15.4.2",
53
+ "react-css-modules": "^4.1.0",
54
+ "react-dom": "^15.4.1",
55
+ "style-loader": "^0.13.1",
56
+ "url-loader": "^0.5.7",
57
+ "webpack": "^2.2.1",
58
+ "webpack-dev-middleware": "^1.10.1",
59
+ "webpack-dev-server": "^2.4.1",
60
+ "webpack-hot-middleware": "^2.17.1",
61
+ "webpack-validator": "^2.3.0"
62
+ },
63
+ "jest": {
64
+ "rootDir": "src",
65
+ "coverageDirectory": "./coverage/",
66
+ "collectCoverage": true
67
+ },
68
+ "dependencies": {
69
+ "copy-webpack-plugin": "^3.0.1",
70
+ "saltui": "^4.13.1"
71
+ }
72
+ }