@gsp-svc/formdoc-upload 0.1.39 → 0.2.1

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 (52) hide show
  1. package/bundles/gsp-svc-formdoc-upload.umd.js +315 -188
  2. package/bundles/gsp-svc-formdoc-upload.umd.js.map +1 -1
  3. package/bundles/gsp-svc-formdoc-upload.umd.min.js +1 -1
  4. package/bundles/gsp-svc-formdoc-upload.umd.min.js.map +1 -1
  5. package/esm2015/lib/i18n/language.resource.js +9 -5
  6. package/esm2015/lib/upload/download.service.js +9 -1
  7. package/esm2015/lib/upload/entity/completemultiuploadrequest.js +21 -0
  8. package/esm2015/lib/upload/entity/{gspdocsecuritynaseinfo.js → gspdocsecuritybaseinfo.js} +1 -1
  9. package/esm2015/lib/upload/entity/gspformstreamentity.js +25 -0
  10. package/esm2015/lib/upload/entity/gspformuploadentity.js +1 -1
  11. package/esm2015/lib/upload/entity/initmultiuploadrequest.js +19 -0
  12. package/esm2015/lib/upload/entity/multiuploadrequest.js +21 -0
  13. package/esm2015/lib/upload/entity/multiuploadresult.js +13 -0
  14. package/esm2015/lib/upload/entity/uploadlimit.js +1 -1
  15. package/esm2015/lib/upload/file-upload/file-upload.component.js +234 -129
  16. package/esm2015/lib/upload/upload.module.js +3 -3
  17. package/esm2015/lib/upload/upload.service.js +3 -22
  18. package/esm2015/lib/uploaddialog/uploaddialog.module.js +1 -3
  19. package/esm2015/public-api.js +2 -2
  20. package/esm5/lib/i18n/language.resource.js +9 -5
  21. package/esm5/lib/upload/download.service.js +14 -1
  22. package/esm5/lib/upload/entity/completemultiuploadrequest.js +25 -0
  23. package/esm5/lib/upload/entity/{gspdocsecuritynaseinfo.js → gspdocsecuritybaseinfo.js} +1 -1
  24. package/esm5/lib/upload/entity/gspformstreamentity.js +29 -0
  25. package/esm5/lib/upload/entity/gspformuploadentity.js +1 -1
  26. package/esm5/lib/upload/entity/initmultiuploadrequest.js +23 -0
  27. package/esm5/lib/upload/entity/multiuploadrequest.js +25 -0
  28. package/esm5/lib/upload/entity/multiuploadresult.js +17 -0
  29. package/esm5/lib/upload/entity/uploadlimit.js +1 -1
  30. package/esm5/lib/upload/file-upload/file-upload.component.js +248 -139
  31. package/esm5/lib/upload/upload.module.js +3 -3
  32. package/esm5/lib/upload/upload.service.js +3 -26
  33. package/esm5/lib/uploaddialog/uploaddialog.module.js +1 -3
  34. package/esm5/public-api.js +2 -2
  35. package/fesm2015/gsp-svc-formdoc-upload.js +287 -168
  36. package/fesm2015/gsp-svc-formdoc-upload.js.map +1 -1
  37. package/fesm5/gsp-svc-formdoc-upload.js +325 -189
  38. package/fesm5/gsp-svc-formdoc-upload.js.map +1 -1
  39. package/gsp-svc-formdoc-upload.metadata.json +1 -1
  40. package/lib/i18n/language.resource.d.ts +4 -0
  41. package/lib/upload/download.service.d.ts +1 -0
  42. package/lib/upload/entity/completemultiuploadrequest.d.ts +9 -0
  43. package/lib/upload/entity/gspformstreamentity.d.ts +12 -0
  44. package/lib/upload/entity/initmultiuploadrequest.d.ts +7 -0
  45. package/lib/upload/entity/multiuploadrequest.d.ts +8 -0
  46. package/lib/upload/entity/multiuploadresult.d.ts +4 -0
  47. package/lib/upload/entity/uploadlimit.d.ts +1 -1
  48. package/lib/upload/file-upload/file-upload.component.d.ts +9 -4
  49. package/lib/upload/upload.service.d.ts +2 -3
  50. package/package.json +1 -1
  51. package/public-api.d.ts +1 -1
  52. /package/lib/upload/entity/{gspdocsecuritynaseinfo.d.ts → gspdocsecuritybaseinfo.d.ts} +0 -0
@@ -4,14 +4,14 @@ import { of } from 'rxjs/observable/of';
4
4
  import { catchError, tap, map } from 'rxjs/operators';
5
5
  import { UUID } from 'angular2-uuid';
6
6
  import { DomSanitizer } from '@angular/platform-browser';
7
- import { ButtonsModule } from '@progress/kendo-angular-buttons';
8
7
  import { MessagerService, MessagerModule } from '@farris/ui-messager';
9
8
  import { LoadingService, LoadingModule } from '@farris/ui-loading';
10
9
  import { ProgressModule } from '@farris/ui-progress';
11
10
  import { FormsModule } from '@angular/forms';
12
11
  import { ComboListModule } from '@farris/ui-combo-list';
12
+ import { FarrisFormsModule } from '@farris/ui-forms';
13
13
  import { CacheService, HttpService, LanguageService, SessionService } from '@ecp-caf/caf-common';
14
- import { Injectable, Pipe, Inject, LOCALE_ID, Component, NgModule, Injector, ComponentFactoryResolver, ViewChild, Input, defineInjectable } from '@angular/core';
14
+ import { Injectable, Pipe, Inject, LOCALE_ID, NgModule, Component, ViewChild, Input, Injector, ComponentFactoryResolver, defineInjectable } from '@angular/core';
15
15
  import { BsModalService } from '@farris/ui-modal';
16
16
  import { of as of$1 } from 'rxjs';
17
17
  import { HttpClientModule, HttpClient } from '@angular/common/http';
@@ -105,16 +105,6 @@ DocType[DocType.Txt] = 'Txt';
105
105
  DocType[DocType.Image] = 'Image';
106
106
  DocType[DocType.Other] = 'Other';
107
107
 
108
- /**
109
- * @fileoverview added by tsickle
110
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
111
- */
112
- var GspFormDocInfo = /** @class */ (function () {
113
- function GspFormDocInfo() {
114
- }
115
- return GspFormDocInfo;
116
- }());
117
-
118
108
  /**
119
109
  * @fileoverview added by tsickle
120
110
  * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
@@ -513,36 +503,13 @@ var UploadService = /** @class */ (function () {
513
503
  * @param {?} rootId
514
504
  * @return {?}
515
505
  */
516
- UploadService.prototype.getRootSetting = /**
506
+ UploadService.prototype.getUploadInfo = /**
517
507
  * @param {?} rootId
518
508
  * @return {?}
519
509
  */
520
510
  function (rootId) {
521
511
  /** @type {?} */
522
- var url = "/api/runtime/dfs/v1.0/rootsetting/" + rootId;
523
- return this.http.get(url).pipe(tap((/**
524
- * @param {?} res
525
- * @return {?}
526
- */
527
- function (res) { })), catchError((/**
528
- * @param {?} error
529
- * @return {?}
530
- */
531
- function (error) {
532
- return of(error);
533
- })));
534
- };
535
- /**
536
- * @param {?} id
537
- * @return {?}
538
- */
539
- UploadService.prototype.getValidation = /**
540
- * @param {?} id
541
- * @return {?}
542
- */
543
- function (id) {
544
- /** @type {?} */
545
- var url = "/api/runtime/dfs/v1.0/validation/" + id;
512
+ var url = "/api/runtime/dfs/v1.0/rootsetting/info?id=" + rootId;
546
513
  return this.http.get(url).pipe(tap((/**
547
514
  * @param {?} res
548
515
  * @return {?}
@@ -576,16 +543,6 @@ var UploadFileInfo = /** @class */ (function () {
576
543
  return UploadFileInfo;
577
544
  }());
578
545
 
579
- /**
580
- * @fileoverview added by tsickle
581
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
582
- */
583
- var GspFormUploadEntity = /** @class */ (function () {
584
- function GspFormUploadEntity() {
585
- }
586
- return GspFormUploadEntity;
587
- }());
588
-
589
546
  /**
590
547
  * @fileoverview added by tsickle
591
548
  * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
@@ -640,7 +597,8 @@ var LANG_RESOURCES = {
640
597
  'operation': '操作',
641
598
  'size': '大小',
642
599
  'close': '关闭',
643
- 'loading': '拼命加载中'
600
+ 'loading': '拼命加载中',
601
+ 'mismatchChunkSize': '文档分片上传部分丢失,请重新上传,如果多次上传失败,请联系管理员。'
644
602
  },
645
603
  'en-US': {
646
604
  'uploadFile': 'Upload File',
@@ -668,7 +626,8 @@ var LANG_RESOURCES = {
668
626
  'operation': 'Operation',
669
627
  'size': 'Size',
670
628
  'close': 'Close',
671
- 'loading': 'Loading'
629
+ 'loading': 'Loading',
630
+ 'mismatchChunkSize': 'The partial upload of document shards is missing. Please upload again. If multiple uploads fail, please contact the administrator.'
672
631
  },
673
632
  'en': {
674
633
  'uploadFile': 'Upload File',
@@ -696,7 +655,8 @@ var LANG_RESOURCES = {
696
655
  'operation': 'Operation',
697
656
  'size': 'Size',
698
657
  'close': 'Close',
699
- 'loading': 'Loading'
658
+ 'loading': 'Loading',
659
+ 'mismatchChunkSize': 'The partial upload of document shards is missing. Please upload again. If multiple uploads fail, please contact the administrator.'
700
660
  },
701
661
  'zh-CHT': {
702
662
  'uploadFile': '上傳文件',
@@ -724,7 +684,8 @@ var LANG_RESOURCES = {
724
684
  'operation': '操作',
725
685
  'size': '大小',
726
686
  'close': '關閉',
727
- 'loading': '拼命加載中'
687
+ 'loading': '拼命加載中',
688
+ 'mismatchChunkSize': '文檔分片上傳部分遺失,請重新上傳,如果多次上傳失敗,請聯系管理員。'
728
689
  },
729
690
  };
730
691
 
@@ -769,6 +730,46 @@ var GspDocSecurityBaseInfo = /** @class */ (function () {
769
730
  return GspDocSecurityBaseInfo;
770
731
  }());
771
732
 
733
+ /**
734
+ * @fileoverview added by tsickle
735
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
736
+ */
737
+ var InitMultiUploadRequest = /** @class */ (function () {
738
+ function InitMultiUploadRequest() {
739
+ }
740
+ return InitMultiUploadRequest;
741
+ }());
742
+
743
+ /**
744
+ * @fileoverview added by tsickle
745
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
746
+ */
747
+ var CompleteMultiUploadRequest = /** @class */ (function () {
748
+ function CompleteMultiUploadRequest() {
749
+ }
750
+ return CompleteMultiUploadRequest;
751
+ }());
752
+
753
+ /**
754
+ * @fileoverview added by tsickle
755
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
756
+ */
757
+ var GspFormStreamEntity = /** @class */ (function () {
758
+ function GspFormStreamEntity() {
759
+ }
760
+ return GspFormStreamEntity;
761
+ }());
762
+
763
+ /**
764
+ * @fileoverview added by tsickle
765
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
766
+ */
767
+ var MultiUploadRequest = /** @class */ (function () {
768
+ function MultiUploadRequest() {
769
+ }
770
+ return MultiUploadRequest;
771
+ }());
772
+
772
773
  /**
773
774
  * @fileoverview added by tsickle
774
775
  * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
@@ -788,7 +789,7 @@ var FileUploadComponent = /** @class */ (function () {
788
789
  this.beyondFileList = [];
789
790
  this.showType = 0;
790
791
  this.mouseOn = false;
791
- this.bufferSize = 10 * 1024 * 1024;
792
+ this.bufferSize = 5 * 1024 * 1024;
792
793
  this.selectedFileCount = 0;
793
794
  this.uploadIconAddress = '/platform/runtime/dfs/images/upload.svg';
794
795
  this.uploadLittleIconAddress = '/platform/runtime/dfs/images/uploadIcon.svg';
@@ -796,8 +797,6 @@ var FileUploadComponent = /** @class */ (function () {
796
797
  this.fileAllSelected = false;
797
798
  this.uploadProcess = { width: '0%' };
798
799
  this.fileTotalChunk = {};
799
- //fileUploadState: { [key: string]: boolean } = {};
800
- //flag: number = 0;
801
800
  this.requestArray = new Array;
802
801
  this.requestBodyArray = new Array;
803
802
  this.uploadedChunk = {};
@@ -881,14 +880,15 @@ var FileUploadComponent = /** @class */ (function () {
881
880
  _this.haveExtensionProperty = true;
882
881
  }
883
882
  }));
884
- this.uploadService.getRootSetting(this.rootId).subscribe((/**
883
+ this.uploadService.getUploadInfo(this.rootId).subscribe((/**
885
884
  * @param {?} res
886
885
  * @return {?}
887
886
  */
888
887
  function (res) {
889
888
  if (res != null && res.error == null) {
890
889
  _this.sameNameAllowed = res.sameNameAllowed;
891
- _this.validationId = res.validationId;
890
+ _this.maxFileSize = parseInt(JSON.parse(res.validateConfiguration).maxFileSize);
891
+ _this.allowedMultiUpload = res.allowedMultiUpload;
892
892
  if (!_this.sameNameAllowed) {
893
893
  _this.uploadService.getUploadedFileInfoList(_this.formId, _this.rootId).subscribe((/**
894
894
  * @param {?} res
@@ -901,18 +901,10 @@ var FileUploadComponent = /** @class */ (function () {
901
901
  }
902
902
  }));
903
903
  }
904
- _this.uploadService.getValidation(_this.validationId).subscribe((/**
905
- * @param {?} res
906
- * @return {?}
907
- */
908
- function (res) {
909
- _this.maxFileSize = parseInt(JSON.parse(res.configuration).maxFileSize);
910
- }));
911
904
  }
912
905
  }));
913
- if (this.oldIdList != null && this.oldIdList.length > 0) {
914
- this.uploadService.cancel(this.oldIdList, this.rootId).subscribe();
915
- }
906
+ if (this.oldIdList != null && this.oldIdList.length > 0) ;
907
+ this.radioButtonGroupValue = 'showByGroup';
916
908
  };
917
909
  /**
918
910
  * @return {?}
@@ -936,12 +928,7 @@ var FileUploadComponent = /** @class */ (function () {
936
928
  * @return {?}
937
929
  */
938
930
  function ($event) {
939
- // const loading = this.loadService.show({
940
- // message: this.localepipe.transform('uploading')
941
- // });
942
931
  var _this = this;
943
- // this.totalLoad.close();
944
- // this.totalLoad = null;
945
932
  this.hasSelectedFile = true;
946
933
  this.selectedFiles = document.querySelector('#file');
947
934
  if (this.fileCount > 0) {
@@ -974,11 +961,6 @@ var FileUploadComponent = /** @class */ (function () {
974
961
  * @return {?}
975
962
  */
976
963
  function (x) { return x.fileName == selectedFile.name; })) != null) {
977
- // this.uploadedNameList.push(selectedFile.name);
978
- // this.msgService.question('之前已上传过同名文件: ' + selectedFile.name + ',需要替换么?', () => {
979
- // uuid = this.uploadedFileInfoList.find(x => x.fileName == selectedFile.name).metadataId;
980
- // this.uploadFile(uuid, selectedFile);
981
- // })
982
964
  /** @type {?} */
983
965
  var msg_1 = this_1.msgService.show('warning', this_1.localepipe.transform('haveSameName') + selectedFile.name, {
984
966
  initialState: {
@@ -1066,11 +1048,6 @@ var FileUploadComponent = /** @class */ (function () {
1066
1048
  for (var i = 0; i < this.selectedFiles.files.length; i++) {
1067
1049
  _loop_1(i);
1068
1050
  }
1069
- // if (this.uploadedNameList.length > 0) {
1070
- // let name: string = this.listToString(this.uploadedNameList);
1071
- // this.msgService.warning('之前已上传过同名文件: ' + name + '请重新选择上传文件。');
1072
- // this.uploadedNameList = [];
1073
- // }
1074
1051
  if (this.errFileList.length > 0) {
1075
1052
  /** @type {?} */
1076
1053
  var name_1 = this.listToString(this.errFileList);
@@ -1091,11 +1068,6 @@ var FileUploadComponent = /** @class */ (function () {
1091
1068
  this.msgService.warning(name_3 + this.localepipe.transform('sizeMax') + this.maxFileSize + "KB" + this.localepipe.transform('rechooseFile'));
1092
1069
  this.beyondFileList = [];
1093
1070
  }
1094
- // if (this.errTypeList.length > 0) {
1095
- // let type: string = this.listToString(this.errTypeList);
1096
- // this.msgService.warning('不支持上传类型为 ' + type + '的文件请重新选择上传文件。');
1097
- // this.errTypeList = [];
1098
- // }
1099
1071
  this.files = this.files.slice();
1100
1072
  this.fileAllSelected = false;
1101
1073
  $event.target.value = '';
@@ -1202,60 +1174,145 @@ var FileUploadComponent = /** @class */ (function () {
1202
1174
  /** @type {?} */
1203
1175
  var fileInfo = this.handleFileInfo(uuid, selectedFile, fileName);
1204
1176
  /** @type {?} */
1205
- var chunkTotal = Math.ceil(selectedFile.size / this.bufferSize);
1206
- /** @type {?} */
1207
- var chunkIndex = 0;
1208
- this.fileTotalChunk[uuid] = chunkTotal;
1209
- /** @type {?} */
1210
1177
  var uploadFileInfo = new UploadFileInfo();
1211
1178
  uploadFileInfo.metadataId = uuid;
1212
1179
  uploadFileInfo.fileName = fileInfo.name;
1213
- uploadFileInfo.fileSize = fileInfo.size;
1180
+ uploadFileInfo.fileSize = fileInfo.fileSize;
1214
1181
  uploadFileInfo.state = state;
1215
1182
  uploadFileInfo.securityInfo = this.securityInfoList[0];
1216
- while (chunkIndex < chunkTotal) {
1183
+ //判断是否支持分片上传
1184
+ if (this.allowedMultiUpload) {
1185
+ //支持分片上传
1217
1186
  /** @type {?} */
1218
- var uploadInfo = new GspFormUploadEntity;
1219
- uploadInfo.formId = this.formId;
1220
- uploadInfo.mode = OperatingModes.Temp;
1221
- uploadInfo.rootId = this.rootId;
1222
- /** @type {?} */
1223
- var docInfo = new GspFormDocInfo;
1224
- docInfo.fileName = fileName;
1225
- docInfo.metadataId = uuid;
1226
- docInfo.total = chunkTotal;
1227
- this.uploadedChunk[docInfo.metadataId] = 0;
1228
- /** @type {?} */
1229
- var nextSize = Math.min((chunkIndex + 1) * this.bufferSize, selectedFile.size);
1230
- /** @type {?} */
1231
- var fileData = selectedFile.slice(chunkIndex * this.bufferSize, nextSize);
1232
- // let reader = new FileReader();
1233
- // reader.readAsBinaryString(fileData);
1187
+ var initRequest = new InitMultiUploadRequest;
1188
+ initRequest.path = this.formId;
1189
+ initRequest.metadataId = uuid;
1190
+ initRequest.rootId = this.rootId;
1191
+ initRequest.size = fileInfo.fileSize;
1192
+ initRequest.fileName = fileName;
1193
+ //初始化分片
1194
+ this.initMultiUpload(initRequest).subscribe((/**
1195
+ * @param {?} res
1196
+ * @return {?}
1197
+ */
1198
+ function (res) {
1199
+ if (res.error != null) {
1200
+ _this.files[_this.files.indexOf(fileInfo)].uploadResult = false;
1201
+ _this.files[_this.files.indexOf(fileInfo)].isUploading = false;
1202
+ _this.files[_this.files.indexOf(fileInfo)].errorMessage = res.error.Message;
1203
+ }
1204
+ else {
1205
+ /** @type {?} */
1206
+ var uploadId_1 = res.uploadId;
1207
+ /** @type {?} */
1208
+ var chunkTotal = Math.ceil(selectedFile.size / _this.bufferSize);
1209
+ /** @type {?} */
1210
+ var chunkIndex = 0;
1211
+ /** @type {?} */
1212
+ var multiResultList_1 = [];
1213
+ _this.fileTotalChunk[uuid] = chunkTotal;
1214
+ _this.uploadedChunk[uuid] = 0;
1215
+ while (chunkIndex < chunkTotal) {
1216
+ /** @type {?} */
1217
+ var nextSize = Math.min((chunkIndex + 1) * _this.bufferSize, selectedFile.size);
1218
+ /** @type {?} */
1219
+ var fileData = selectedFile.slice(chunkIndex * _this.bufferSize, nextSize);
1220
+ /** @type {?} */
1221
+ var multiRequest = new MultiUploadRequest;
1222
+ multiRequest.metadataId = uuid;
1223
+ multiRequest.rootId = _this.rootId;
1224
+ multiRequest.uploadId = uploadId_1;
1225
+ multiRequest.index = chunkIndex;
1226
+ multiRequest.total = chunkTotal;
1227
+ multiRequest.size = fileData.size;
1228
+ /** @type {?} */
1229
+ var formData = new FormData();
1230
+ formData.append('multiRequest', JSON.stringify(multiRequest));
1231
+ formData.append('file', fileData);
1232
+ _this.multiUpload(formData).subscribe((/**
1233
+ * @param {?} res
1234
+ * @return {?}
1235
+ */
1236
+ function (res) {
1237
+ if (res.error != null) {
1238
+ _this.files[_this.files.indexOf(fileInfo)].uploadResult = false;
1239
+ _this.files[_this.files.indexOf(fileInfo)].isUploading = false;
1240
+ _this.files[_this.files.indexOf(fileInfo)].errorMessage = res.error.Message;
1241
+ }
1242
+ else {
1243
+ multiResultList_1.push(res.result);
1244
+ _this.uploadedChunk[uuid]++;
1245
+ _this.files[_this.files.indexOf(fileInfo)].uploadProcess = Number.parseInt((_this.uploadedChunk[uuid] / _this.fileTotalChunk[uuid] * 100).toFixed(0));
1246
+ if (_this.uploadedChunk[uuid] == _this.fileTotalChunk[uuid]) {
1247
+ if (multiResultList_1.length == _this.fileTotalChunk[uuid]) {
1248
+ _this.files[_this.files.indexOf(fileInfo)].uploadResult = true;
1249
+ _this.files[_this.files.indexOf(fileInfo)].isUploading = false;
1250
+ _this.uploadFileInfoList = _this.uploadFileInfoList.concat(uploadFileInfo);
1251
+ _this.uploadedFileInfoList = _this.uploadedFileInfoList.concat(uploadFileInfo);
1252
+ _this.uploadedFileTotal++;
1253
+ /** @type {?} */
1254
+ var completeMultiUploadRequest = new CompleteMultiUploadRequest;
1255
+ completeMultiUploadRequest.metadataId = uuid;
1256
+ completeMultiUploadRequest.partList = multiResultList_1;
1257
+ completeMultiUploadRequest.rootId = _this.rootId;
1258
+ completeMultiUploadRequest.uploadId = uploadId_1;
1259
+ completeMultiUploadRequest.size = fileInfo.fileSize;
1260
+ if (_this.haveExtensionProperty)
1261
+ completeMultiUploadRequest.exPropertyName = _this.defaultPropertyName;
1262
+ _this.completeMultiUpload(completeMultiUploadRequest).subscribe((/**
1263
+ * @param {?} res
1264
+ * @return {?}
1265
+ */
1266
+ function (res) {
1267
+ }));
1268
+ //后台异步拼接文档
1269
+ }
1270
+ else {
1271
+ _this.files[_this.files.indexOf(fileInfo)].uploadResult = false;
1272
+ _this.files[_this.files.indexOf(fileInfo)].isUploading = false;
1273
+ _this.files[_this.files.indexOf(fileInfo)].errorMessage = _this.localepipe.transform('mismatchChunkSize');
1274
+ }
1275
+ }
1276
+ }
1277
+ }));
1278
+ chunkIndex = chunkIndex + 1;
1279
+ }
1280
+ }
1281
+ }));
1282
+ }
1283
+ else {
1234
1284
  /** @type {?} */
1235
- var innerIndex = chunkIndex;
1236
- // reader.onload = () => {
1237
- // docInfo.fileContent = btoa(reader.result.toString());
1238
- docInfo.size = selectedFile.size;
1239
- docInfo.index = innerIndex;
1240
- docInfo.fileContent = "";
1241
- //chunkIndex++;
1285
+ var entity = new GspFormStreamEntity;
1286
+ entity.formId = this.formId;
1287
+ entity.metadataId = uuid;
1288
+ entity.mode = OperatingModes.Temp;
1289
+ entity.rootId = this.rootId;
1290
+ entity.size = selectedFile.size;
1291
+ entity.fileName = fileName;
1242
1292
  if (this.haveExtensionProperty)
1243
- docInfo.exPropertyName = this.defaultPropertyName;
1244
- //docInfo.isLast = true;
1245
- uploadInfo.docInfo = docInfo;
1246
- // let info = uploadInfo;
1247
- // this.requestArray.push(this.uploadService.uploadFile(uploadInfo));
1248
- // this.requestBodyArray.push(info);
1249
- //封装请求formdata
1293
+ entity.exPropertyName = this.defaultPropertyName;
1250
1294
  /** @type {?} */
1251
1295
  var formData = new FormData();
1252
- formData.append('uploadInfo', JSON.stringify(uploadInfo));
1253
- formData.append('docInfo', JSON.stringify(docInfo));
1254
- formData.append('file', fileData);
1255
- this.sendUploadRequest(formData, fileInfo, docInfo, uploadFileInfo);
1256
- // }
1257
- //console.log(chunkIndex + 1);
1258
- chunkIndex = chunkIndex + 1;
1296
+ formData.append('uploadEntity', JSON.stringify(entity));
1297
+ formData.append('file', selectedFile);
1298
+ this.uploadSingleFile(formData).subscribe((/**
1299
+ * @param {?} res
1300
+ * @return {?}
1301
+ */
1302
+ function (res) {
1303
+ if (res != null) {
1304
+ _this.files[_this.files.indexOf(fileInfo)].uploadResult = false;
1305
+ _this.files[_this.files.indexOf(fileInfo)].isUploading = false;
1306
+ _this.files[_this.files.indexOf(fileInfo)].errorMessage = res.error.Message;
1307
+ }
1308
+ else {
1309
+ _this.files[_this.files.indexOf(fileInfo)].uploadResult = true;
1310
+ _this.files[_this.files.indexOf(fileInfo)].isUploading = false;
1311
+ _this.uploadFileInfoList = _this.uploadFileInfoList.concat(uploadFileInfo);
1312
+ _this.uploadedFileInfoList = _this.uploadedFileInfoList.concat(uploadFileInfo);
1313
+ _this.uploadedFileTotal++;
1314
+ }
1315
+ }));
1259
1316
  }
1260
1317
  /** @type {?} */
1261
1318
  var index = -1;
@@ -1273,47 +1330,31 @@ var FileUploadComponent = /** @class */ (function () {
1273
1330
  this.files.splice(index, 1);
1274
1331
  this.uploadFileInfoList.splice(index, 1);
1275
1332
  this.uploadedFileInfoList.splice(index, 1);
1276
- this.uploadedFileTotal--;
1333
+ //this.uploadedFileTotal--;
1277
1334
  }
1278
1335
  };
1279
1336
  /**
1280
- * @param {?} formData
1281
- * @param {?} fileInfo
1282
- * @param {?} docInfo
1283
- * @param {?} uploadFileInfo
1337
+ * @param {?} formdata
1284
1338
  * @return {?}
1285
1339
  */
1286
- FileUploadComponent.prototype.sendUploadRequest = /**
1287
- * @param {?} formData
1288
- * @param {?} fileInfo
1289
- * @param {?} docInfo
1290
- * @param {?} uploadFileInfo
1340
+ FileUploadComponent.prototype.uploadSingleFile = /**
1341
+ * @param {?} formdata
1291
1342
  * @return {?}
1292
1343
  */
1293
- function (formData, fileInfo, docInfo, uploadFileInfo) {
1294
- var _this = this;
1295
- this.uploadSliceFile(formData).subscribe((/**
1344
+ function (formdata) {
1345
+ /** @type {?} */
1346
+ var url = "/api/runtime/dfs/v1.0/formdoc/single";
1347
+ return this.httpclient.post(url, formdata).pipe(tap((/**
1296
1348
  * @param {?} res
1297
1349
  * @return {?}
1298
1350
  */
1299
- function (res) {
1300
- if (res != null) {
1301
- _this.files[_this.files.indexOf(fileInfo)].uploadResult = false;
1302
- _this.files[_this.files.indexOf(fileInfo)].isUploading = false;
1303
- _this.files[_this.files.indexOf(fileInfo)].errorMessage = res.error.Message;
1304
- }
1305
- else {
1306
- _this.uploadedChunk[docInfo.metadataId]++;
1307
- _this.files[_this.files.indexOf(fileInfo)].uploadProcess = Number.parseInt((_this.uploadedChunk[docInfo.metadataId] / _this.fileTotalChunk[docInfo.metadataId] * 100).toFixed(0));
1308
- if (_this.uploadedChunk[docInfo.metadataId] == _this.fileTotalChunk[docInfo.metadataId]) {
1309
- _this.files[_this.files.indexOf(fileInfo)].uploadResult = true;
1310
- _this.files[_this.files.indexOf(fileInfo)].isUploading = false;
1311
- _this.uploadFileInfoList = _this.uploadFileInfoList.concat(uploadFileInfo);
1312
- _this.uploadedFileInfoList = _this.uploadedFileInfoList.concat(uploadFileInfo);
1313
- _this.uploadedFileTotal++;
1314
- }
1315
- }
1316
- }));
1351
+ function (res) { })), catchError((/**
1352
+ * @param {?} error
1353
+ * @return {?}
1354
+ */
1355
+ function (error) {
1356
+ return of$1(error);
1357
+ })));
1317
1358
  };
1318
1359
  /**
1319
1360
  * @param {?} formdata
@@ -1326,7 +1367,6 @@ var FileUploadComponent = /** @class */ (function () {
1326
1367
  function (formdata) {
1327
1368
  /** @type {?} */
1328
1369
  var url = "/api/runtime/dfs/v1.0/formdoc/slice";
1329
- //url = "/api/runtime/dfs/v1.0/formdoc/list";
1330
1370
  return this.httpclient.post(url, formdata).pipe(tap((/**
1331
1371
  * @param {?} res
1332
1372
  * @return {?}
@@ -1339,6 +1379,75 @@ var FileUploadComponent = /** @class */ (function () {
1339
1379
  return of$1(error);
1340
1380
  })));
1341
1381
  };
1382
+ /**
1383
+ * @param {?} request
1384
+ * @return {?}
1385
+ */
1386
+ FileUploadComponent.prototype.initMultiUpload = /**
1387
+ * @param {?} request
1388
+ * @return {?}
1389
+ */
1390
+ function (request) {
1391
+ /** @type {?} */
1392
+ var url = "/api/runtime/dfs/v1.0/formdoc/multi/init";
1393
+ return this.httpclient.post(url, request).pipe(tap((/**
1394
+ * @param {?} res
1395
+ * @return {?}
1396
+ */
1397
+ function (res) { })), catchError((/**
1398
+ * @param {?} error
1399
+ * @return {?}
1400
+ */
1401
+ function (error) {
1402
+ return of$1(error);
1403
+ })));
1404
+ };
1405
+ /**
1406
+ * @param {?} formdata
1407
+ * @return {?}
1408
+ */
1409
+ FileUploadComponent.prototype.multiUpload = /**
1410
+ * @param {?} formdata
1411
+ * @return {?}
1412
+ */
1413
+ function (formdata) {
1414
+ /** @type {?} */
1415
+ var url = "/api/runtime/dfs/v1.0/formdoc/multi/upload";
1416
+ return this.httpclient.post(url, formdata).pipe(tap((/**
1417
+ * @param {?} res
1418
+ * @return {?}
1419
+ */
1420
+ function (res) { })), catchError((/**
1421
+ * @param {?} error
1422
+ * @return {?}
1423
+ */
1424
+ function (error) {
1425
+ return of$1(error);
1426
+ })));
1427
+ };
1428
+ /**
1429
+ * @param {?} request
1430
+ * @return {?}
1431
+ */
1432
+ FileUploadComponent.prototype.completeMultiUpload = /**
1433
+ * @param {?} request
1434
+ * @return {?}
1435
+ */
1436
+ function (request) {
1437
+ /** @type {?} */
1438
+ var url = "/api/runtime/dfs/v1.0/formdoc/multi/complete";
1439
+ return this.httpclient.post(url, request).pipe(tap((/**
1440
+ * @param {?} res
1441
+ * @return {?}
1442
+ */
1443
+ function (res) { })), catchError((/**
1444
+ * @param {?} error
1445
+ * @return {?}
1446
+ */
1447
+ function (error) {
1448
+ return of$1(error);
1449
+ })));
1450
+ };
1342
1451
  /**
1343
1452
  * @return {?}
1344
1453
  */
@@ -1352,8 +1461,6 @@ var FileUploadComponent = /** @class */ (function () {
1352
1461
  * @return {?}
1353
1462
  */
1354
1463
  function (element) {
1355
- // let obj: any = document.getElementById(element.name);
1356
- // obj.checked = true;
1357
1464
  element.selectd = true;
1358
1465
  }));
1359
1466
  this.fileAllSelected = true;
@@ -1365,8 +1472,6 @@ var FileUploadComponent = /** @class */ (function () {
1365
1472
  * @return {?}
1366
1473
  */
1367
1474
  function (element) {
1368
- // let obj: any = document.getElementById(element.name);
1369
- // obj.checked = false;
1370
1475
  element.selectd = false;
1371
1476
  }));
1372
1477
  this.fileAllSelected = false;
@@ -1460,9 +1565,6 @@ var FileUploadComponent = /** @class */ (function () {
1460
1565
  metadataList.push(element.id);
1461
1566
  _this.files.splice(_this.files.indexOf(element), 1);
1462
1567
  if (element.uploadResult) {
1463
- // let idList: string[] = [];
1464
- // idList.push(fileInfo.id);
1465
- // this.uploadService.cancel(idList, this.rootId).subscribe();
1466
1568
  _this.uploadFileInfoList.splice(_this.uploadFileInfoList.indexOf(_this.uploadFileInfoList.filter((/**
1467
1569
  * @param {?} x
1468
1570
  * @return {?}
@@ -1577,20 +1679,28 @@ var FileUploadComponent = /** @class */ (function () {
1577
1679
  }
1578
1680
  fileInfo.source = imgUrl;
1579
1681
  _this.files.push(fileInfo);
1682
+ //因为异步处理的差异,补偿一次删除
1683
+ /** @type {?} */
1684
+ var index = -1;
1685
+ _this.files.forEach((/**
1686
+ * @param {?} x
1687
+ * @return {?}
1688
+ */
1689
+ function (x) {
1690
+ if (x.name == fileInfo.name) {
1691
+ if (index == -1)
1692
+ index = _this.files.indexOf(x);
1693
+ }
1694
+ }));
1695
+ if (index != -1 && index != _this.files.length - 1) {
1696
+ _this.files.splice(index, 1);
1697
+ _this.uploadFileInfoList.splice(index, 1);
1698
+ _this.uploadedFileInfoList.splice(index, 1);
1699
+ }
1580
1700
  });
1581
1701
  }
1582
1702
  }
1583
1703
  };
1584
- /**
1585
- * @param {?} selectdFile
1586
- * @return {?}
1587
- */
1588
- FileUploadComponent.prototype.getImageUrl = /**
1589
- * @param {?} selectdFile
1590
- * @return {?}
1591
- */
1592
- function (selectdFile) {
1593
- };
1594
1704
  /**
1595
1705
  * @param {?} strList
1596
1706
  * @return {?}
@@ -1686,9 +1796,6 @@ var FileUploadComponent = /** @class */ (function () {
1686
1796
  * @return {?}
1687
1797
  */
1688
1798
  function (x) { return x.isUploading || x.uploadResult; })).length) {
1689
- // this.notifyService.success(<NotifyOptions>{
1690
- // msg: '保存成功!', timeout: 3000
1691
- // });
1692
1799
  this.msgService.warning(this.localepipe.transform('wait'));
1693
1800
  return of$1(false);
1694
1801
  }
@@ -1769,9 +1876,6 @@ var FileUploadComponent = /** @class */ (function () {
1769
1876
  */
1770
1877
  function (x) { return x.metadataId == file.id; })), 1);
1771
1878
  }
1772
- // var obj:any = document.querySelector('#file');
1773
- // obj.files.remove();
1774
- //obj.value='';
1775
1879
  };
1776
1880
  /**
1777
1881
  * @param {?} size
@@ -1841,8 +1945,8 @@ var FileUploadComponent = /** @class */ (function () {
1841
1945
  FileUploadComponent.decorators = [
1842
1946
  { type: Component, args: [{
1843
1947
  selector: 'app-file-upload',
1844
- template: "<div *ngIf=\"hasSelectedFile\">\n\n <div class=\"farris-header\" style=\"height: 50px; width: 100%\">\n <div class=\"btn btn-secondary upload_button\">\n <img [src]=\"uploadLittleIconAddress\">\n <span>{{'uploadFile' | locale}} </span>\n <input type=\"file\" (focus)=\"showLoading()\" (change)=\"fileSelected($event)\" id=\"file\" multiple=\"multiple\"\n title=\"\" [accept]=\"fileType\">\n </div>\n\n\n <button *ngIf=\"showType==0 && !fileAllSelected && files.length >0 \" style=\"padding-left: 20px\"\n class=\"btn-link btn ng-star-inserted\" (click)=\"selectAllFile()\">{{'selectAll' | locale}}</button>\n <button *ngIf=\"showType==0 && fileAllSelected && files.length >0 \" style=\"padding-left: 20px\"\n class=\"btn-link btn ng-star-inserted\" (click)=\"selectAllFile()\">{{'selectNull' | locale}}</button>\n <button *ngIf=\"showType==0 && selectedFileCount>0\" style=\"padding-left: 20px\"\n class=\"btn-link btn ng-star-inserted\" (click)=\"listMultipleDeleteFile()\">{{'delete' | locale}}</button>\n\n <button *ngIf=\"showType==1 && selectedFileCount>0\" style=\"padding-left: 20px\"\n class=\"btn-link btn ng-star-inserted\" (click)=\"listMultipleDeleteFile()\">{{'delete' | locale}}</button>\n\n <kendo-buttongroup [selection]=\"'single'\" class=\"button_group_upload \"\n style=\"background-color: #ffffff; color: #388FFF;border: 1px solid #ddd;\" look=\"flat\">\n <button kendoButton [selected]=\"true\" [toggleable]=\"true\"\n [imageUrl]=\"'/platform/runtime/dfs/images/piclist.png'\" (click)=\"showByGroup()\"></button>\n <button kendoButton [toggleable]=\"true\" [imageUrl]=\"'/platform/runtime/dfs/images/queuelist.png'\"\n (click)=\"showByList()\"></button>\n </kendo-buttongroup>\n\n\n </div>\n\n <!-- <div class=\"progress\" style=\"height: 12px;\">\n <div class=\"progress-bar\" role=\"progressbar\" [ngStyle]=\"uploadProcess\"></div>\n </div> -->\n\n <div class=\"pic_list\" *ngIf=\"showType==0\">\n <ul *ngFor=\"let file of files\">\n <li (mouseenter)=\"mouseOver(file)\" (mouseleave)=\"mouseOut(file)\">\n <div *ngIf=\"file.isUploading\">\n <farris-progress [type]=\"'circle'\" [percent]=\"file.uploadProcess\" [strokeLinecap]=\"'square'\"\n [status]=\"'active'\"></farris-progress>\n </div>\n\n <table *ngIf=\"!file.uploadResult && !file.isUploading\"\n style=\"margin: 0 auto; border: 1px solid #ddd; width: 135px; height: 160px;\">\n <tr style=\"margin: 0 auto ; height: 80px;\">\n <td style=\"text-align: center\"><span class=\"f-icon f-icon-warn\"></span></td>\n </tr>\n <tr style=\"margin: 0 auto ; height: 30px;\">\n <td style=\"text-align: center\"> {{'uploadFailure' | locale}} </td>\n </tr>\n <tr>\n <td style=\"text-align: center\"><button style=\"margin: 0 auto ; height: 20px; \"\n class=\"btn-link btn ng-star-inserted\" (click)=\"showErrorMessage(file)\">{{'detail' |\n locale}}</button></td>\n </tr>\n </table>\n <div *ngIf=\"!file.isUploading && file.uploadResult\" style=\"border: 1px solid #ddd;\">\n <img [src]='file.source'>\n <div *ngIf=\"haveExtensionProperty\"\n style=\"width: 133px; height: 25px; background-color: white; position: absolute;bottom: 0; \">\n\n <div style=\"width: 100px;height: 25px;position:absolute;margin: 0 17px;\">\n <farris-combo-list [(ngModel)]=\"file.extensionDropListId\" [data]=\"propertiesNames\"\n [idField]=\"'id'\" [textField]=\"'name'\" (selectChange)=\"typeChange($event,file)\"\n [enableClear]=\"false\">\n <!-- <ng-template #itemTemp let-item>\n <div class=\"combo-list\">\n <span [class]=\"'combo-list-circle combo-list-'+item.state\"></span>\n <span class=\"combo-list-label\">{{item.label}}</span>\n </div>\n </ng-template> -->\n </farris-combo-list>\n </div>\n </div>\n <div *ngIf=\"haveSecurityInfo\"\n style=\"width: 133px; height: 25px; background-color: white; position: absolute;bottom: 0; \">\n\n <div style=\"width: 100px;height: 25px;position:absolute;margin: 0 17px;\">\n <farris-combo-list [(ngModel)]=\"file.extensionDropListId\" [data]=\"securityInfoList\"\n [idField]=\"'id'\" [textField]=\"'name'\" (selectChange)=\"securityChange($event,file)\"\n [enableClear]=\"false\">\n <!-- <ng-template #itemTemp let-item>\n <div class=\"combo-list\">\n <span [class]=\"'combo-list-circle combo-list-'+item.state\"></span>\n <span class=\"combo-list-label\">{{item.label}}</span>\n </div>\n </ng-template> -->\n </farris-combo-list>\n </div>\n </div>\n </div>\n <table *ngIf=\"!file.isUploading\">\n <tr style=\"height: 20px\">\n <td style=\"width: 15px; vertical-align: middle; text-align: center\">\n <!-- <input type=\"checkbox\" [id]=\"file.name\" (click)=\"checkoutSelectFile(file.name)\"> -->\n <div class=\"farris-input-wrap\" style=\"height: 20px\" (click)=\"checkoutSelectFile(file)\">\n <div class=\"custom-control custom-checkbox\" style=\"margin: 4px 0 0;height: 20px;\"\n [ngStyle]=\"checkboxPos\">\n <input class=\"custom-control-input\" type=\"checkbox\" [id]=\"file.name\"\n [(ngModel)]=\"file.selectd\">\n <label class=\"custom-control-label\"\n style=\"padding: 0 0 10px 0; position: relative; top: -8px;\"></label>\n </div>\n </div>\n </td>\n <td style=\"width: 120px; vertical-align: middle; text-align: center\" [title]=\"file.name\">\n {{file.picListDisplayName}}</td>\n </tr>\n </table>\n <!-- <span>{{file.picListDisplayName}}</span> -->\n <!-- <p class=\"filename\">{{file.picListDisplayName}}</p> -->\n <button *ngIf=\"!file.isUploading && file.mouseOn\"\n style=\"position: absolute; top: 0; right: 0px; width: 24px; height: 24px;\" kendoButton\n [icon]=\"'delete'\" (click)=\"listDeleteFile(file)\"></button>\n <!-- <button *ngIf=\"file.hasUploaded\" class=\"k-primary\" kendoButton [icon]=\"'check'\" [disabled]=\"true\"></button> -->\n </li>\n </ul>\n <br>\n </div>\n\n <div class=\"queue_list\" *ngIf=\"showType==1\">\n <table>\n <tr style=\"height: 50px; table-layout:fixed;\">\n <th style=\"width: 40px; vertical-align: middle; text-align: center\">\n <!-- <input type=\"checkbox\" id=\"allCheckBox\" (click)=\"selectAllFile()\"> -->\n <div class=\"farris-input-wrap\" (click)=\"selectAllFile()\">\n <div class=\"custom-control custom-checkbox\" style=\"margin: 4px 0 0\">\n <input class=\"custom-control-input\" type=\"checkbox\" id=\"allCheckBox\"\n [(ngModel)]=\"fileAllSelected\">\n <label class=\"custom-control-label\" style=\"padding: 0\"></label>\n </div>\n </div>\n </th>\n <th style=\"vertical-align: middle\" [ngStyle]=\"queueListStyle\">{{'fileName' | locale}}</th>\n <th style=\"width: 100px; vertical-align: middle\">{{'size' | locale}}</th>\n <th style=\"width: 170px; vertical-align: middle; text-align: center\">{{'state' | locale}}</th>\n <th *ngIf=\"haveExtensionProperty\" style=\"width: 100px; vertical-align: middle; text-align: center\">\n {{storageExtension.extensionName}}\n </th>\n <th style=\"width: 140px; vertical-align: middle; text-align: center\">{{'operation' | locale}}</th>\n </tr>\n </table>\n <div style=\"height: 370px; overflow: auto;\">\n <table>\n <tr *ngFor=\"let file of files\" style=\"height: 40px\">\n <td colspan=\"5\" *ngIf=\"file.isUploading\">\n <!-- <div style=\"width:100%; display: table-cell; vertical-align: middle; text-align: center; \"> -->\n <div style=\"width: 500px;margin:0 auto\">\n <farris-progress [percent]=\"file.uploadProcess\" [status]=\"'active'\">\n </farris-progress>\n </div>\n\n </td>\n <td *ngIf=\"!file.isUploading\" style=\" width: 40px; vertical-align: middle; text-align: center\">\n <!-- <input type=\"checkbox\" [id]=\"file.name\" (click)=\"checkoutSelectFile(file.name)\"> -->\n <div class=\"farris-input-wrap\" (click)=\"checkoutSelectFile(file)\">\n <div class=\"custom-control custom-checkbox\" style=\"margin: 4px 0 0\">\n <input class=\"custom-control-input\" type=\"checkbox\" [id]=\"file.name\"\n [(ngModel)]=\"file.selectd\">\n <label class=\"custom-control-label\" style=\"padding: 0\"></label>\n </div>\n </div>\n </td>\n <td *ngIf=\"!file.isUploading\" style=\"vertical-align: middle\" [ngStyle]=\"queueListStyle\">\n {{file.queueListDisplayName}}</td>\n <td *ngIf=\"!file.isUploading\" style=\"width: 100px; vertical-align: middle\">{{file.size}}</td>\n <td *ngIf=\"!file.isUploading\" style=\"text-align: center; width: 170px; vertical-align: middle;\">\n <table *ngIf=\"!file.uploadResult\" style=\"margin: 0 auto\">\n <tr style=\"margin: 0 auto\">\n <td><span class=\"f-icon f-icon-error\"></span></td>\n <td> {{'uploadFailure' | locale}} </td>\n <td><button style=\"height: 24px\" class=\"btn-link btn ng-star-inserted\"\n (click)=\"showErrorMessage(file)\">{{'detail' | locale}}</button></td>\n </tr>\n </table>\n <!-- <span *ngIf=\"!file.uploadResult\"><span class=\"f-icon f-icon-error\"></span> \u4E0A\u4F20\u5931\u8D25 <button\n class=\"btn-link btn ng-star-inserted\" (click)=\"showErrorMessage(file)\">\u8BE6\u60C5</button></span> -->\n <span *ngIf=\"file.uploadResult\"><span class=\"f-icon f-icon-success\"></span> {{'uploadSucceed' |\n locale}}</span>\n </td>\n <td *ngIf=\"!file.isUploading&&haveExtensionProperty\"\n style=\"text-align: center; width: 100px; vertical-align: middle;\">\n <farris-combo-list [(ngModel)]=\"file.extensionDropListId\" [data]=\"propertiesNames\"\n [idField]=\"'id'\" [textField]=\"'name'\" (selectChange)=\"typeChange($event,file)\"\n [enableClear]=\"false\">\n <!-- <ng-template #itemTemp let-item>\n <div class=\"combo-list\">\n <span [class]=\"'combo-list-circle combo-list-'+item.state\"></span>\n <span class=\"combo-list-label\">{{item.label}}</span>\n </div>\n </ng-template> -->\n </farris-combo-list>\n </td>\n <td *ngIf=\"!file.isUploading&&haveSecurityInfo\"\n style=\"text-align: center; width: 100px; vertical-align: middle;\">\n <farris-combo-list [(ngModel)]=\"file.extensionDropListId\" [data]=\"securityInfoList\"\n [idField]=\"'id'\" [textField]=\"'name'\" (selectChange)=\"securityChange($event,file)\"\n [enableClear]=\"false\">\n <!-- <ng-template #itemTemp let-item>\n <div class=\"combo-list\">\n <span [class]=\"'combo-list-circle combo-list-'+item.state\"></span>\n <span class=\"combo-list-label\">{{item.label}}</span>\n </div>\n </ng-template> -->\n </farris-combo-list>\n </td>\n\n <td *ngIf=\"!file.isUploading\" style=\"text-align: center; width: 140px; vertical-align: middle;\">\n <!-- <button *ngIf=\"file.uploadResult\" class=\"btn-link btn ng-star-inserted\" (click)=\"retryUploadFile(file.name)\">\u91CD\u8BD5</button> -->\n <button class=\"btn-link btn ng-star-inserted\" style=\"margin: 0 auto\"\n (click)=\"listDeleteFile(file)\">{{'delete' | locale}}</button>\n </td>\n\n </tr>\n </table>\n </div>\n </div>\n</div>\n\n<div *ngIf=\"!hasSelectedFile\" class='home_page'>\n <img [src]=\"uploadIconAddress\">\n <div>\n <span class=\"btn btn-primary btn-lg\">{{'uploadFile' | locale}} </span>\n <input type=\"file\" (change)=\"fileSelected($event)\" id=\"file\" multiple=\"multiple\" title=\"\" [accept]=\"fileType\">\n <!-- <input type=\"file\" (focus)=\"showLoading()\" (change)=\"fileSelected($event)\" id=\"file\" multiple=\"multiple\" title=\"\" [accept]=\"fileType\"> -->\n </div>\n</div>",
1845
- styles: [".home_page{text-align:center}.home_page img{position:absolute;top:180px;margin-left:-35px;width:70px;height:56px}.home_page div{position:absolute;left:50%;top:255px;margin-left:-75px;width:150px;height:32px;overflow:hidden}.home_page div span{width:150px;height:32px;position:absolute;z-index:10;left:0}.home_page div input{position:absolute;left:0;top:0;opacity:0;filter:'alpha(opacity=0)';z-index:11}.upload_button{width:110px;height:32px;overflow:hidden}.upload_button span{position:relative;right:-4px;top:4px;width:56px;height:22px;font-size:14px}.upload_button input{height:32px;width:110px;position:absolute;left:22px;top:12px;opacity:0;filter:'alpha(opacity=0)';overflow:hidden}.upload_button img{position:relative;left:-6px;top:3px;width:14px;height:14px}.button_group_upload{position:absolute;right:18px;top:12px;height:26px;width:53px}.button_group_upload button{height:26px;width:26px}.fileinput-button{position:absolute;right:60px;bottom:40px;overflow:hidden;width:24px;height:24px;border-radius:12px;transform:scale(2.5);-ms-transform:scale(2.5);-moz-transform:scale(2.5);-webkit-transform:scale(2.5);-o-transform:scale(2.5);color:#0686fd}.fileinput-button input{position:absolute;left:0;top:0;opacity:0;filter:'alpha(opacity=0)'}.pic-droplist{height:24px;color:#e0e1e2;background-color:#e0e1e2}.pic-droplist input-group{display:table-cell;width:100px;text-align:center;border:0}.pic-droplist input-group div{border:0}.pic-droplist input-group div div,.pic-droplist input-group div input{background-color:#e0e1e2}.pic_list{padding:0;height:415px;overflow-y:auto;overflow-x:hidden}.pic_list ul{padding:0;list-style:none;width:100%;margin:20px 0 0 20px}.pic_list ul li{height:179px;width:135px;margin:8px 0 8px 12px;float:left;overflow:hidden;align-items:center;position:relative}.pic_list ul li div{width:135px;height:159px;margin:auto;display:table-cell;vertical-align:middle;text-align:center;position:relative}.pic_list ul li div img{max-width:120px;max-height:118px;align-items:center;margin:auto;vertical-align:middle;text-align:center}.pic_list ul li span.filename{width:100px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.queue_list{display:block;height:420px;overflow-y:auto}.file_list{list-style:none;margin:0;padding:0;overflow-x:hidden;overflow-y:auto}.file_list li{height:50px;line-height:35px;font-size:16px;position:relative}.file_list li button{float:right;top:6px;right:10px;width:20px}.file_list li p.title{padding:0 0 0 6px;margin:0 210px 0 0}.file_list li p.size{position:absolute;width:100px;top:0;right:100px}"]
1948
+ template: "<div *ngIf=\"hasSelectedFile\">\n\n <div class=\"farris-header\" style=\"height: 50px; width: 100%\">\n <div class=\"btn btn-secondary upload_button\">\n <img [src]=\"uploadLittleIconAddress\">\n <span>{{'uploadFile' | locale}} </span>\n <input type=\"file\" (focus)=\"showLoading()\" (change)=\"fileSelected($event)\" id=\"file\" multiple=\"multiple\"\n title=\"\" [accept]=\"fileType\">\n </div>\n\n\n <button *ngIf=\"showType==0 && !fileAllSelected && files.length >0 \" style=\"padding-left: 20px\"\n class=\"btn-link btn ng-star-inserted\" (click)=\"selectAllFile()\">{{'selectAll' | locale}}</button>\n <button *ngIf=\"showType==0 && fileAllSelected && files.length >0 \" style=\"padding-left: 20px\"\n class=\"btn-link btn ng-star-inserted\" (click)=\"selectAllFile()\">{{'selectNull' | locale}}</button>\n <button *ngIf=\"showType==0 && selectedFileCount>0\" style=\"padding-left: 20px\"\n class=\"btn-link btn ng-star-inserted\" (click)=\"listMultipleDeleteFile()\">{{'delete' | locale}}</button>\n\n <button *ngIf=\"showType==1 && selectedFileCount>0\" style=\"padding-left: 20px\"\n class=\"btn-link btn ng-star-inserted\" (click)=\"listMultipleDeleteFile()\">{{'delete' | locale}}</button>\n\n <farris-radio-group class=\"button_group_upload\" [(model)]=\"radioButtonGroupValue\" [horizontal]=\"false\">\n <farris-radio-button [label]=\"'showByGroup'\" (click)=\"showByGroup()\">\n <span class=\"f-icon f-icon-sudoku-new\"> </span>\n </farris-radio-button>\n <farris-radio-button [label]=\"'showByList'\" (click)=\"showByList()\">\n <span class=\"f-icon f-icon-page-title-define\"> </span>\n </farris-radio-button>\n\n </farris-radio-group>\n\n <!-- <kendo-buttongroup [selection]=\"'single'\" class=\"button_group_upload \"\n style=\"background-color: #ffffff; color: #388FFF;border: 1px solid #ddd;\" look=\"flat\">\n <button kendoButton [selected]=\"true\" [toggleable]=\"true\"\n [imageUrl]=\"'/platform/runtime/dfs/images/piclist.png'\" (click)=\"showByGroup()\"></button>\n <button kendoButton [toggleable]=\"true\" [imageUrl]=\"'/platform/runtime/dfs/images/queuelist.png'\"\n (click)=\"showByList()\"></button>\n </kendo-buttongroup> -->\n\n\n </div>\n\n <!-- <div class=\"progress\" style=\"height: 12px;\">\n <div class=\"progress-bar\" role=\"progressbar\" [ngStyle]=\"uploadProcess\"></div>\n </div> -->\n\n <div class=\"pic_list\" *ngIf=\"showType==0\">\n <ul *ngFor=\"let file of files\">\n <li (mouseenter)=\"mouseOver(file)\" (mouseleave)=\"mouseOut(file)\">\n <div *ngIf=\"file.isUploading\">\n <farris-progress [type]=\"'circle'\" [percent]=\"file.uploadProcess\" [strokeLinecap]=\"'square'\"\n [status]=\"'active'\"></farris-progress>\n </div>\n\n <table *ngIf=\"!file.uploadResult && !file.isUploading\"\n style=\"margin: 0 auto; border: 1px solid #ddd; width: 135px; height: 160px;\">\n <tr style=\"margin: 0 auto ; height: 80px;\">\n <td style=\"text-align: center\"><span class=\"f-icon f-icon-warn\"></span></td>\n </tr>\n <tr style=\"margin: 0 auto ; height: 30px;\">\n <td style=\"text-align: center\"> {{'uploadFailure' | locale}} </td>\n </tr>\n <tr>\n <td style=\"text-align: center\"><button style=\"margin: 0 auto ; height: 20px; \"\n class=\"btn-link btn ng-star-inserted\" (click)=\"showErrorMessage(file)\">{{'detail' |\n locale}}</button></td>\n </tr>\n </table>\n <div *ngIf=\"!file.isUploading && file.uploadResult\" style=\"border: 1px solid #ddd;\">\n <img [src]='file.source'>\n <div *ngIf=\"haveExtensionProperty\"\n style=\"width: 133px; height: 25px; background-color: white; position: absolute;bottom: 0; \">\n\n <div style=\"width: 100px;height: 25px;position:absolute;margin: 0 17px;\">\n <farris-combo-list [(ngModel)]=\"file.extensionDropListId\" [data]=\"propertiesNames\"\n [idField]=\"'id'\" [textField]=\"'name'\" (selectChange)=\"typeChange($event,file)\"\n [enableClear]=\"false\">\n <!-- <ng-template #itemTemp let-item>\n <div class=\"combo-list\">\n <span [class]=\"'combo-list-circle combo-list-'+item.state\"></span>\n <span class=\"combo-list-label\">{{item.label}}</span>\n </div>\n </ng-template> -->\n </farris-combo-list>\n </div>\n </div>\n <div *ngIf=\"haveSecurityInfo\"\n style=\"width: 133px; height: 25px; background-color: white; position: absolute;bottom: 0; \">\n\n <div style=\"width: 100px;height: 25px;position:absolute;margin: 0 17px;\">\n <farris-combo-list [(ngModel)]=\"file.extensionDropListId\" [data]=\"securityInfoList\"\n [idField]=\"'id'\" [textField]=\"'name'\" (selectChange)=\"securityChange($event,file)\"\n [enableClear]=\"false\">\n <!-- <ng-template #itemTemp let-item>\n <div class=\"combo-list\">\n <span [class]=\"'combo-list-circle combo-list-'+item.state\"></span>\n <span class=\"combo-list-label\">{{item.label}}</span>\n </div>\n </ng-template> -->\n </farris-combo-list>\n </div>\n </div>\n </div>\n <table *ngIf=\"!file.isUploading\">\n <tr style=\"height: 20px\">\n <td style=\"width: 15px; vertical-align: middle; text-align: center\">\n <!-- <input type=\"checkbox\" [id]=\"file.name\" (click)=\"checkoutSelectFile(file.name)\"> -->\n <div class=\"farris-input-wrap\" style=\"height: 20px\" (click)=\"checkoutSelectFile(file)\">\n <div class=\"custom-control custom-checkbox\" style=\"margin: 4px 0 0;height: 20px;\"\n [ngStyle]=\"checkboxPos\">\n <input class=\"custom-control-input\" type=\"checkbox\" [id]=\"file.name\"\n [(ngModel)]=\"file.selectd\">\n <label class=\"custom-control-label\"\n style=\"padding: 0 0 10px 0; position: relative; top: -8px;\"></label>\n </div>\n </div>\n </td>\n <td style=\"width: 120px; vertical-align: middle; text-align: center\" [title]=\"file.name\">\n {{file.picListDisplayName}}</td>\n </tr>\n </table>\n <!-- <span>{{file.picListDisplayName}}</span> -->\n <!-- <p class=\"filename\">{{file.picListDisplayName}}</p> -->\n <button *ngIf=\"!file.isUploading && file.mouseOn\"\n style=\"position: absolute; top: 0; right: 0px; width: 24px; height: 24px; border: none;\"\n (click)=\"listDeleteFile(file)\">\n <span style=\"position: relative; right: 2px; \" class=\"f-icon f-icon-delete\"> </span>\n </button>\n <!-- <button *ngIf=\"file.hasUploaded\" class=\"k-primary\" kendoButton [icon]=\"'check'\" [disabled]=\"true\"></button> -->\n </li>\n </ul>\n <br>\n </div>\n\n <div class=\"queue_list\" *ngIf=\"showType==1\">\n <table>\n <tr style=\"height: 50px; table-layout:fixed;\">\n <th style=\"width: 40px; vertical-align: middle; text-align: center\">\n <!-- <input type=\"checkbox\" id=\"allCheckBox\" (click)=\"selectAllFile()\"> -->\n <div class=\"farris-input-wrap\" (click)=\"selectAllFile()\">\n <div class=\"custom-control custom-checkbox\" style=\"margin: 4px 0 0\">\n <input class=\"custom-control-input\" type=\"checkbox\" id=\"allCheckBox\"\n [(ngModel)]=\"fileAllSelected\">\n <label class=\"custom-control-label\" style=\"padding: 0\"></label>\n </div>\n </div>\n </th>\n <th style=\"vertical-align: middle\" [ngStyle]=\"queueListStyle\">{{'fileName' | locale}}</th>\n <th style=\"width: 100px; vertical-align: middle\">{{'size' | locale}}</th>\n <th style=\"width: 170px; vertical-align: middle; text-align: center\">{{'state' | locale}}</th>\n <th *ngIf=\"haveExtensionProperty\" style=\"width: 100px; vertical-align: middle; text-align: center\">\n {{storageExtension.extensionName}}\n </th>\n <th style=\"width: 140px; vertical-align: middle; text-align: center\">{{'operation' | locale}}</th>\n </tr>\n </table>\n <div style=\"height: 370px; overflow: auto;\">\n <table>\n <tr *ngFor=\"let file of files\" style=\"height: 40px\">\n <td colspan=\"5\" *ngIf=\"file.isUploading\">\n <!-- <div style=\"width:100%; display: table-cell; vertical-align: middle; text-align: center; \"> -->\n <div style=\"width: 500px;margin:0 auto\">\n <farris-progress [percent]=\"file.uploadProcess\" [status]=\"'active'\">\n </farris-progress>\n </div>\n\n </td>\n <td *ngIf=\"!file.isUploading\" style=\" width: 40px; vertical-align: middle; text-align: center\">\n <!-- <input type=\"checkbox\" [id]=\"file.name\" (click)=\"checkoutSelectFile(file.name)\"> -->\n <div class=\"farris-input-wrap\" (click)=\"checkoutSelectFile(file)\">\n <div class=\"custom-control custom-checkbox\" style=\"margin: 4px 0 0\">\n <input class=\"custom-control-input\" type=\"checkbox\" [id]=\"file.name\"\n [(ngModel)]=\"file.selectd\">\n <label class=\"custom-control-label\" style=\"padding: 0\"></label>\n </div>\n </div>\n </td>\n <td *ngIf=\"!file.isUploading\" style=\"vertical-align: middle\" [ngStyle]=\"queueListStyle\">\n {{file.queueListDisplayName}}</td>\n <td *ngIf=\"!file.isUploading\" style=\"width: 100px; vertical-align: middle\">{{file.size}}</td>\n <td *ngIf=\"!file.isUploading\" style=\"text-align: center; width: 170px; vertical-align: middle;\">\n <table *ngIf=\"!file.uploadResult\" style=\"margin: 0 auto\">\n <tr style=\"margin: 0 auto\">\n <td><span class=\"f-icon f-icon-error\"></span></td>\n <td> {{'uploadFailure' | locale}} </td>\n <td><button style=\"height: 24px\" class=\"btn-link btn ng-star-inserted\"\n (click)=\"showErrorMessage(file)\">{{'detail' | locale}}</button></td>\n </tr>\n </table>\n <!-- <span *ngIf=\"!file.uploadResult\"><span class=\"f-icon f-icon-error\"></span> \u4E0A\u4F20\u5931\u8D25 <button\n class=\"btn-link btn ng-star-inserted\" (click)=\"showErrorMessage(file)\">\u8BE6\u60C5</button></span> -->\n <span *ngIf=\"file.uploadResult\"><span class=\"f-icon f-icon-success\"></span> {{'uploadSucceed' |\n locale}}</span>\n </td>\n <td *ngIf=\"!file.isUploading&&haveExtensionProperty\"\n style=\"text-align: center; width: 100px; vertical-align: middle;\">\n <farris-combo-list [(ngModel)]=\"file.extensionDropListId\" [data]=\"propertiesNames\"\n [idField]=\"'id'\" [textField]=\"'name'\" (selectChange)=\"typeChange($event,file)\"\n [enableClear]=\"false\">\n <!-- <ng-template #itemTemp let-item>\n <div class=\"combo-list\">\n <span [class]=\"'combo-list-circle combo-list-'+item.state\"></span>\n <span class=\"combo-list-label\">{{item.label}}</span>\n </div>\n </ng-template> -->\n </farris-combo-list>\n </td>\n <td *ngIf=\"!file.isUploading&&haveSecurityInfo\"\n style=\"text-align: center; width: 100px; vertical-align: middle;\">\n <farris-combo-list [(ngModel)]=\"file.extensionDropListId\" [data]=\"securityInfoList\"\n [idField]=\"'id'\" [textField]=\"'name'\" (selectChange)=\"securityChange($event,file)\"\n [enableClear]=\"false\">\n <!-- <ng-template #itemTemp let-item>\n <div class=\"combo-list\">\n <span [class]=\"'combo-list-circle combo-list-'+item.state\"></span>\n <span class=\"combo-list-label\">{{item.label}}</span>\n </div>\n </ng-template> -->\n </farris-combo-list>\n </td>\n\n <td *ngIf=\"!file.isUploading\" style=\"text-align: center; width: 140px; vertical-align: middle;\">\n <!-- <button *ngIf=\"file.uploadResult\" class=\"btn-link btn ng-star-inserted\" (click)=\"retryUploadFile(file.name)\">\u91CD\u8BD5</button> -->\n <button class=\"btn-link btn ng-star-inserted\" style=\"margin: 0 auto\"\n (click)=\"listDeleteFile(file)\">{{'delete' | locale}}</button>\n </td>\n\n </tr>\n </table>\n </div>\n </div>\n</div>\n\n<div *ngIf=\"!hasSelectedFile\" class='home_page'>\n <img [src]=\"uploadIconAddress\">\n <div>\n <span class=\"btn btn-primary btn-lg\">{{'uploadFile' | locale}} </span>\n <input type=\"file\" (change)=\"fileSelected($event)\" id=\"file\" multiple=\"multiple\" title=\"\" [accept]=\"fileType\">\n <!-- <input type=\"file\" (focus)=\"showLoading()\" (change)=\"fileSelected($event)\" id=\"file\" multiple=\"multiple\" title=\"\" [accept]=\"fileType\"> -->\n </div>\n</div>",
1949
+ styles: [".home_page{text-align:center}.home_page img{position:absolute;top:180px;margin-left:-35px;width:70px;height:56px}.home_page div{position:absolute;left:50%;top:255px;margin-left:-75px;width:150px;height:32px;overflow:hidden}.home_page div span{width:150px;height:32px;position:absolute;z-index:10;left:0}.home_page div input{position:absolute;left:0;top:0;opacity:0;filter:'alpha(opacity=0)';z-index:11}.upload_button{width:110px;height:32px;overflow:hidden}.upload_button span{position:relative;right:-4px;top:4px;width:56px;height:22px;font-size:14px}.upload_button input{height:32px;width:110px;position:absolute;left:22px;top:12px;opacity:0;filter:'alpha(opacity=0)';overflow:hidden}.upload_button img{position:relative;left:-6px;top:3px;width:14px;height:14px}.button_group_upload{position:absolute;right:18px;top:12px;height:26px;width:90px}.button_group_upload button{height:26px;width:26px}.fileinput-button{position:absolute;right:60px;bottom:40px;overflow:hidden;width:24px;height:24px;border-radius:12px;transform:scale(2.5);-ms-transform:scale(2.5);-moz-transform:scale(2.5);-webkit-transform:scale(2.5);-o-transform:scale(2.5);color:#0686fd}.fileinput-button input{position:absolute;left:0;top:0;opacity:0;filter:'alpha(opacity=0)'}.pic-droplist{height:24px;color:#e0e1e2;background-color:#e0e1e2}.pic-droplist input-group{display:table-cell;width:100px;text-align:center;border:0}.pic-droplist input-group div{border:0}.pic-droplist input-group div div,.pic-droplist input-group div input{background-color:#e0e1e2}.pic_list{padding:0;height:415px;overflow-y:auto;overflow-x:hidden}.pic_list ul{padding:0;list-style:none;width:100%;margin:20px 0 0 20px}.pic_list ul li{height:179px;width:135px;margin:8px 0 8px 12px;float:left;overflow:hidden;align-items:center;position:relative}.pic_list ul li div{width:135px;height:159px;margin:auto;display:table-cell;vertical-align:middle;text-align:center;position:relative}.pic_list ul li div img{max-width:120px;max-height:118px;align-items:center;margin:auto;vertical-align:middle;text-align:center}.pic_list ul li span.filename{width:100px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.queue_list{display:block;height:420px;overflow-y:auto}.file_list{list-style:none;margin:0;padding:0;overflow-x:hidden;overflow-y:auto}.file_list li{height:50px;line-height:35px;font-size:16px;position:relative}.file_list li button{float:right;top:6px;right:10px;width:20px}.file_list li p.title{padding:0 0 0 6px;margin:0 210px 0 0}.file_list li p.size{position:absolute;width:100px;top:0;right:100px}"]
1846
1950
  }] }
1847
1951
  ];
1848
1952
  /** @nocollapse */
@@ -1884,6 +1988,19 @@ var DownloadService = /** @class */ (function () {
1884
1988
  function (metadataId, rootId) {
1885
1989
  return "/api/runtime/dfs/v1.0/doc/filecontent?metadataid=" + metadataId + "&rootid=" + rootId + "&token=" + this.getToken(this.mergeString(metadataId, rootId));
1886
1990
  };
1991
+ /**
1992
+ * @param {?} metadataId
1993
+ * @param {?} rootId
1994
+ * @return {?}
1995
+ */
1996
+ DownloadService.prototype.getStreamDownloadUrl = /**
1997
+ * @param {?} metadataId
1998
+ * @param {?} rootId
1999
+ * @return {?}
2000
+ */
2001
+ function (metadataId, rootId) {
2002
+ return "/api/runtime/dfs/v1.0/formdoc/stream?metadataid=" + metadataId + "&rootid=" + rootId + "&token=" + this.getToken(this.mergeString(metadataId, rootId));
2003
+ };
1887
2004
  /**
1888
2005
  * @param {?} metadataIdList
1889
2006
  * @param {?} rootId
@@ -2043,12 +2160,12 @@ var UploadModule = /** @class */ (function () {
2043
2160
  declarations: [FileUploadComponent, LocalLangPipe],
2044
2161
  imports: [
2045
2162
  CommonModule,
2046
- ButtonsModule,
2047
2163
  NotifyModule,
2048
2164
  MessagerModule.forRoot(),
2049
2165
  LoadingModule.forRoot(),
2050
2166
  ProgressModule,
2051
2167
  FormsModule,
2168
+ FarrisFormsModule,
2052
2169
  ComboListModule,
2053
2170
  HttpClientModule
2054
2171
  ],
@@ -2342,7 +2459,6 @@ var UploadDialogMoudle = /** @class */ (function () {
2342
2459
  FarrisDialogModule,
2343
2460
  MessagerModule.forRoot(),
2344
2461
  UploadModule,
2345
- ButtonsModule,
2346
2462
  NotifyModule.forRoot(),
2347
2463
  HttpClientModule
2348
2464
  ],
@@ -2377,6 +2493,16 @@ var GspFormUploadListEntity = /** @class */ (function () {
2377
2493
  return GspFormUploadListEntity;
2378
2494
  }());
2379
2495
 
2496
+ /**
2497
+ * @fileoverview added by tsickle
2498
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
2499
+ */
2500
+ var GspFormDocInfo = /** @class */ (function () {
2501
+ function GspFormDocInfo() {
2502
+ }
2503
+ return GspFormDocInfo;
2504
+ }());
2505
+
2380
2506
  /**
2381
2507
  * @fileoverview added by tsickle
2382
2508
  * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
@@ -2387,6 +2513,16 @@ var GspDocMetaProperty = /** @class */ (function () {
2387
2513
  return GspDocMetaProperty;
2388
2514
  }());
2389
2515
 
2516
+ /**
2517
+ * @fileoverview added by tsickle
2518
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
2519
+ */
2520
+ var GspFormUploadEntity = /** @class */ (function () {
2521
+ function GspFormUploadEntity() {
2522
+ }
2523
+ return GspFormUploadEntity;
2524
+ }());
2525
+
2390
2526
  /**
2391
2527
  * @fileoverview added by tsickle
2392
2528
  * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc