@progress/kendo-angular-upload 8.0.0-dev.202201111351 → 9.0.0-next.202202241540

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 (268) hide show
  1. package/LICENSE.md +1 -1
  2. package/NOTICE.txt +119 -79
  3. package/README.md +1 -1
  4. package/bundles/kendo-angular-upload.umd.js +5 -0
  5. package/{dist/es2015/common → common}/action-buttons-layout.d.ts +0 -0
  6. package/{dist/es2015/common → common}/util.d.ts +0 -0
  7. package/{dist/es2015/common → common}/validation-util.d.ts +0 -0
  8. package/{dist/es2015/dropzone-base.d.ts → dropzone-base.d.ts} +4 -1
  9. package/{dist/es2015/dropzone-external.directive.d.ts → dropzone-external.directive.d.ts} +4 -1
  10. package/{dist/es2015/dropzone-internal.directive.d.ts → dropzone-internal.directive.d.ts} +3 -0
  11. package/{dist/es2015/dropzone.component.d.ts → dropzone.component.d.ts} +5 -2
  12. package/{dist/es2015/dropzone.service.d.ts → dropzone.service.d.ts} +3 -0
  13. package/{dist/es2015 → esm2015}/common/action-buttons-layout.js +1 -0
  14. package/{dist/es2015 → esm2015}/common/util.js +1 -7
  15. package/{dist/es2015 → esm2015}/common/validation-util.js +0 -4
  16. package/{dist/es2015 → esm2015}/dropzone-base.js +18 -16
  17. package/{dist/es2015 → esm2015}/dropzone-external.directive.js +29 -35
  18. package/{dist/es2015 → esm2015}/dropzone-internal.directive.js +25 -37
  19. package/esm2015/dropzone.component.js +113 -0
  20. package/{dist/es2015 → esm2015}/dropzone.service.js +8 -7
  21. package/{dist/es2015 → esm2015}/events/cancel-event.js +0 -0
  22. package/{dist/es2015 → esm2015}/events/clear-event.js +0 -0
  23. package/{dist/es2015 → esm2015}/events/error-event.js +0 -0
  24. package/{dist/es2015 → esm2015}/events/pause-event.js +0 -0
  25. package/{dist/es2015 → esm2015}/events/preventable-event.js +0 -0
  26. package/{dist/es2015 → esm2015}/events/remove-event.js +0 -0
  27. package/{dist/es2015 → esm2015}/events/resume-event.js +0 -0
  28. package/{dist/es2015 → esm2015}/events/select-event.js +0 -0
  29. package/{dist/es2015 → esm2015}/events/success-event.js +0 -0
  30. package/{dist/es2015 → esm2015}/events/upload-event.js +0 -0
  31. package/{dist/es2015 → esm2015}/events/upload-progress-event.js +0 -0
  32. package/{dist/es → esm2015}/events.js +0 -0
  33. package/esm2015/file-select.directive.js +100 -0
  34. package/{dist/es2015 → esm2015}/fileselect.component.js +160 -132
  35. package/esm2015/fileselect.module.js +35 -0
  36. package/{dist/es/types/chunk-info.js → esm2015/kendo-angular-upload.js} +4 -0
  37. package/esm2015/localization/custom-messages.component.js +50 -0
  38. package/esm2015/localization/localized-messages.directive.js +40 -0
  39. package/esm2015/localization/messages.js +59 -0
  40. package/{dist/es → esm2015}/main.js +0 -0
  41. package/{dist/es2015 → esm2015}/navigation.service.js +9 -9
  42. package/{dist/es2015 → esm2015}/package-metadata.js +1 -1
  43. package/{dist/es2015 → esm2015}/rendering/file-list-item-action-button.component.js +70 -28
  44. package/{dist/es2015 → esm2015}/rendering/file-list-item-base.js +9 -0
  45. package/esm2015/rendering/file-list-item.js +107 -0
  46. package/esm2015/rendering/file-list-multiple-items.component.js +172 -0
  47. package/esm2015/rendering/file-list-single-item.component.js +154 -0
  48. package/esm2015/rendering/file-list.component.js +145 -0
  49. package/esm2015/rendering/upload-action-buttons.component.js +136 -0
  50. package/esm2015/rendering/upload-status-total.component.js +60 -0
  51. package/{dist/es2015 → esm2015}/shared.module.js +45 -18
  52. package/esm2015/templates/file-info-template.directive.js +22 -0
  53. package/esm2015/templates/file-template.directive.js +22 -0
  54. package/esm2015/templates/template-context.directive.js +33 -0
  55. package/{dist/es2015 → esm2015}/types/async-settings.js +1 -0
  56. package/{dist/es2015 → esm2015}/types/chunk-info.js +1 -0
  57. package/{dist/es2015 → esm2015}/types/chunk-map.js +0 -0
  58. package/{dist/es → esm2015}/types/chunk-metadata.js +1 -0
  59. package/{dist/es → esm2015}/types/chunk-settings.js +1 -0
  60. package/{dist/es → esm2015}/types/direction.js +1 -0
  61. package/{dist/es2015 → esm2015}/types/file-groups.js +3 -5
  62. package/{dist/es → esm2015}/types/file-info.js +1 -0
  63. package/{dist/es2015 → esm2015}/types/file-map.js +0 -0
  64. package/{dist/es → esm2015}/types/file-restrictions.js +1 -0
  65. package/{dist/es → esm2015}/types/file-state.js +0 -0
  66. package/{dist/es → esm2015}/types/operation-type.js +1 -0
  67. package/{dist/es → esm2015}/types.js +0 -0
  68. package/{dist/es2015 → esm2015}/upload.component.js +263 -243
  69. package/esm2015/upload.module.js +43 -0
  70. package/{dist/es2015 → esm2015}/upload.service.js +10 -9
  71. package/{dist/es2015 → esm2015}/uploads.module.js +17 -12
  72. package/{dist/es2015/events → events}/cancel-event.d.ts +0 -0
  73. package/{dist/es2015/events → events}/clear-event.d.ts +0 -0
  74. package/{dist/es2015/events → events}/error-event.d.ts +0 -0
  75. package/{dist/es2015/events → events}/pause-event.d.ts +0 -0
  76. package/{dist/es2015/events → events}/preventable-event.d.ts +0 -0
  77. package/{dist/es2015/events → events}/remove-event.d.ts +0 -0
  78. package/{dist/es2015/events → events}/resume-event.d.ts +0 -0
  79. package/{dist/es2015/events → events}/select-event.d.ts +0 -0
  80. package/{dist/es2015/events → events}/success-event.d.ts +0 -0
  81. package/{dist/es2015/events → events}/upload-event.d.ts +0 -0
  82. package/{dist/es2015/events → events}/upload-progress-event.d.ts +0 -0
  83. package/{dist/es2015/events.d.ts → events.d.ts} +0 -0
  84. package/{dist/fesm2015/index.js → fesm2015/kendo-angular-upload.js} +2184 -2011
  85. package/{dist/es2015/file-select.directive.d.ts → file-select.directive.d.ts} +7 -4
  86. package/{dist/es2015/fileselect.component.d.ts → fileselect.component.d.ts} +14 -6
  87. package/fileselect.module.d.ts +20 -0
  88. package/{dist/es/common/action-buttons-layout.js → kendo-angular-upload.d.ts} +5 -0
  89. package/{dist/es2015/localization → localization}/custom-messages.component.d.ts +4 -1
  90. package/{dist/es2015/localization → localization}/localized-messages.directive.d.ts +3 -0
  91. package/{dist/es2015/localization → localization}/messages.d.ts +3 -0
  92. package/{dist/es2015/main.d.ts → main.d.ts} +0 -0
  93. package/{dist/es2015/navigation.service.d.ts → navigation.service.d.ts} +7 -3
  94. package/{dist/es2015/package-metadata.d.ts → package-metadata.d.ts} +0 -0
  95. package/package.json +35 -103
  96. package/{dist/es2015/rendering → rendering}/file-list-item-action-button.component.d.ts +11 -8
  97. package/{dist/es2015/rendering → rendering}/file-list-item-base.d.ts +3 -0
  98. package/{dist/es2015/rendering → rendering}/file-list-item.d.ts +10 -7
  99. package/{dist/es2015/rendering → rendering}/file-list-multiple-items.component.d.ts +7 -4
  100. package/{dist/es2015/rendering → rendering}/file-list-single-item.component.d.ts +9 -6
  101. package/{dist/es2015/rendering → rendering}/file-list.component.d.ts +3 -0
  102. package/{dist/es2015/rendering → rendering}/upload-action-buttons.component.d.ts +7 -4
  103. package/{dist/es2015/rendering → rendering}/upload-status-total.component.d.ts +3 -0
  104. package/schematics/ngAdd/index.js +5 -2
  105. package/schematics/ngAdd/index.js.map +1 -1
  106. package/shared.module.d.ts +36 -0
  107. package/{dist/es2015/templates → templates}/file-info-template.directive.d.ts +3 -0
  108. package/{dist/es2015/templates → templates}/file-template.directive.d.ts +3 -0
  109. package/{dist/es2015/templates → templates}/template-context.directive.d.ts +4 -1
  110. package/{dist/es2015/types → types}/async-settings.d.ts +0 -0
  111. package/{dist/es2015/types → types}/chunk-info.d.ts +0 -0
  112. package/{dist/es2015/types → types}/chunk-map.d.ts +0 -0
  113. package/{dist/es2015/types → types}/chunk-metadata.d.ts +0 -0
  114. package/{dist/es2015/types → types}/chunk-settings.d.ts +0 -0
  115. package/{dist/es2015/types → types}/direction.d.ts +0 -0
  116. package/{dist/es2015/types → types}/file-groups.d.ts +0 -0
  117. package/{dist/es2015/types → types}/file-info.d.ts +0 -0
  118. package/{dist/es2015/types → types}/file-map.d.ts +5 -5
  119. package/{dist/es2015/types → types}/file-restrictions.d.ts +0 -0
  120. package/{dist/es2015/types → types}/file-state.d.ts +0 -0
  121. package/{dist/es2015/types → types}/operation-type.d.ts +0 -0
  122. package/{dist/es2015/types.d.ts → types.d.ts} +0 -0
  123. package/{dist/es2015/upload.component.d.ts → upload.component.d.ts} +42 -21
  124. package/upload.module.d.ts +22 -0
  125. package/{dist/es2015/upload.service.d.ts → upload.service.d.ts} +4 -1
  126. package/{dist/es2015/uploads.module.d.ts → uploads.module.d.ts} +6 -0
  127. package/dist/cdn/js/kendo-angular-upload.js +0 -20
  128. package/dist/cdn/main.js +0 -5
  129. package/dist/es/common/util.js +0 -234
  130. package/dist/es/common/validation-util.js +0 -64
  131. package/dist/es/dropzone-base.js +0 -66
  132. package/dist/es/dropzone-external.directive.js +0 -98
  133. package/dist/es/dropzone-internal.directive.js +0 -110
  134. package/dist/es/dropzone.component.js +0 -99
  135. package/dist/es/dropzone.service.js +0 -33
  136. package/dist/es/events/cancel-event.js +0 -41
  137. package/dist/es/events/clear-event.js +0 -43
  138. package/dist/es/events/error-event.js +0 -45
  139. package/dist/es/events/pause-event.js +0 -42
  140. package/dist/es/events/preventable-event.js +0 -29
  141. package/dist/es/events/remove-event.js +0 -47
  142. package/dist/es/events/resume-event.js +0 -42
  143. package/dist/es/events/select-event.js +0 -45
  144. package/dist/es/events/success-event.js +0 -49
  145. package/dist/es/events/upload-event.js +0 -47
  146. package/dist/es/events/upload-progress-event.js +0 -42
  147. package/dist/es/file-select.directive.js +0 -141
  148. package/dist/es/fileselect.component.js +0 -484
  149. package/dist/es/fileselect.module.js +0 -30
  150. package/dist/es/index.js +0 -21
  151. package/dist/es/localization/custom-messages.component.js +0 -53
  152. package/dist/es/localization/localized-messages.directive.js +0 -35
  153. package/dist/es/localization/messages.js +0 -102
  154. package/dist/es/navigation.service.js +0 -166
  155. package/dist/es/package-metadata.js +0 -15
  156. package/dist/es/rendering/file-list-item-action-button.component.js +0 -169
  157. package/dist/es/rendering/file-list-item-base.js +0 -41
  158. package/dist/es/rendering/file-list-item.js +0 -165
  159. package/dist/es/rendering/file-list-multiple-items.component.js +0 -107
  160. package/dist/es/rendering/file-list-single-item.component.js +0 -112
  161. package/dist/es/rendering/file-list.component.js +0 -98
  162. package/dist/es/rendering/upload-action-buttons.component.js +0 -149
  163. package/dist/es/rendering/upload-status-total.component.js +0 -42
  164. package/dist/es/shared.module.js +0 -68
  165. package/dist/es/templates/file-info-template.directive.js +0 -22
  166. package/dist/es/templates/file-template.directive.js +0 -22
  167. package/dist/es/templates/template-context.directive.js +0 -40
  168. package/dist/es/types/async-settings.js +0 -4
  169. package/dist/es/types/chunk-map.js +0 -36
  170. package/dist/es/types/file-groups.js +0 -45
  171. package/dist/es/types/file-map.js +0 -170
  172. package/dist/es/upload.component.js +0 -967
  173. package/dist/es/upload.module.js +0 -34
  174. package/dist/es/upload.service.js +0 -448
  175. package/dist/es/uploads.module.js +0 -47
  176. package/dist/es2015/dropzone.component.js +0 -100
  177. package/dist/es2015/events.js +0 -14
  178. package/dist/es2015/file-select.directive.js +0 -123
  179. package/dist/es2015/fileselect.module.d.ts +0 -9
  180. package/dist/es2015/fileselect.module.js +0 -27
  181. package/dist/es2015/index.d.ts +0 -21
  182. package/dist/es2015/index.js +0 -21
  183. package/dist/es2015/index.metadata.json +0 -1
  184. package/dist/es2015/localization/custom-messages.component.js +0 -45
  185. package/dist/es2015/localization/localized-messages.directive.js +0 -35
  186. package/dist/es2015/localization/messages.js +0 -96
  187. package/dist/es2015/main.js +0 -24
  188. package/dist/es2015/rendering/file-list-item.js +0 -136
  189. package/dist/es2015/rendering/file-list-multiple-items.component.js +0 -128
  190. package/dist/es2015/rendering/file-list-single-item.component.js +0 -117
  191. package/dist/es2015/rendering/file-list.component.js +0 -123
  192. package/dist/es2015/rendering/upload-action-buttons.component.js +0 -141
  193. package/dist/es2015/rendering/upload-status-total.component.js +0 -51
  194. package/dist/es2015/shared.module.d.ts +0 -17
  195. package/dist/es2015/templates/file-info-template.directive.js +0 -21
  196. package/dist/es2015/templates/file-template.directive.js +0 -21
  197. package/dist/es2015/templates/template-context.directive.js +0 -35
  198. package/dist/es2015/types/chunk-metadata.js +0 -4
  199. package/dist/es2015/types/chunk-settings.js +0 -4
  200. package/dist/es2015/types/direction.js +0 -4
  201. package/dist/es2015/types/file-info.js +0 -4
  202. package/dist/es2015/types/file-restrictions.js +0 -4
  203. package/dist/es2015/types/file-state.js +0 -34
  204. package/dist/es2015/types/operation-type.js +0 -4
  205. package/dist/es2015/types.js +0 -5
  206. package/dist/es2015/upload.module.d.ts +0 -9
  207. package/dist/es2015/upload.module.js +0 -31
  208. package/dist/fesm5/index.js +0 -4653
  209. package/dist/npm/common/action-buttons-layout.js +0 -6
  210. package/dist/npm/common/util.js +0 -240
  211. package/dist/npm/common/validation-util.js +0 -68
  212. package/dist/npm/dropzone-base.js +0 -68
  213. package/dist/npm/dropzone-external.directive.js +0 -100
  214. package/dist/npm/dropzone-internal.directive.js +0 -112
  215. package/dist/npm/dropzone.component.js +0 -101
  216. package/dist/npm/dropzone.service.js +0 -35
  217. package/dist/npm/events/cancel-event.js +0 -43
  218. package/dist/npm/events/clear-event.js +0 -45
  219. package/dist/npm/events/error-event.js +0 -47
  220. package/dist/npm/events/pause-event.js +0 -44
  221. package/dist/npm/events/preventable-event.js +0 -31
  222. package/dist/npm/events/remove-event.js +0 -49
  223. package/dist/npm/events/resume-event.js +0 -44
  224. package/dist/npm/events/select-event.js +0 -47
  225. package/dist/npm/events/success-event.js +0 -51
  226. package/dist/npm/events/upload-event.js +0 -49
  227. package/dist/npm/events/upload-progress-event.js +0 -44
  228. package/dist/npm/events.js +0 -26
  229. package/dist/npm/file-select.directive.js +0 -143
  230. package/dist/npm/fileselect.component.js +0 -486
  231. package/dist/npm/fileselect.module.js +0 -32
  232. package/dist/npm/index.js +0 -39
  233. package/dist/npm/localization/custom-messages.component.js +0 -55
  234. package/dist/npm/localization/localized-messages.directive.js +0 -37
  235. package/dist/npm/localization/messages.js +0 -104
  236. package/dist/npm/main.js +0 -45
  237. package/dist/npm/navigation.service.js +0 -168
  238. package/dist/npm/package-metadata.js +0 -17
  239. package/dist/npm/rendering/file-list-item-action-button.component.js +0 -171
  240. package/dist/npm/rendering/file-list-item-base.js +0 -43
  241. package/dist/npm/rendering/file-list-item.js +0 -167
  242. package/dist/npm/rendering/file-list-multiple-items.component.js +0 -109
  243. package/dist/npm/rendering/file-list-single-item.component.js +0 -114
  244. package/dist/npm/rendering/file-list.component.js +0 -100
  245. package/dist/npm/rendering/upload-action-buttons.component.js +0 -151
  246. package/dist/npm/rendering/upload-status-total.component.js +0 -44
  247. package/dist/npm/shared.module.js +0 -70
  248. package/dist/npm/templates/file-info-template.directive.js +0 -24
  249. package/dist/npm/templates/file-template.directive.js +0 -24
  250. package/dist/npm/templates/template-context.directive.js +0 -42
  251. package/dist/npm/types/async-settings.js +0 -6
  252. package/dist/npm/types/chunk-info.js +0 -6
  253. package/dist/npm/types/chunk-map.js +0 -38
  254. package/dist/npm/types/chunk-metadata.js +0 -6
  255. package/dist/npm/types/chunk-settings.js +0 -6
  256. package/dist/npm/types/direction.js +0 -6
  257. package/dist/npm/types/file-groups.js +0 -47
  258. package/dist/npm/types/file-info.js +0 -6
  259. package/dist/npm/types/file-map.js +0 -172
  260. package/dist/npm/types/file-restrictions.js +0 -6
  261. package/dist/npm/types/file-state.js +0 -36
  262. package/dist/npm/types/operation-type.js +0 -6
  263. package/dist/npm/types.js +0 -8
  264. package/dist/npm/upload.component.js +0 -969
  265. package/dist/npm/upload.module.js +0 -36
  266. package/dist/npm/upload.service.js +0 -450
  267. package/dist/npm/uploads.module.js +0 -49
  268. package/dist/systemjs/kendo-angular-upload.js +0 -5
@@ -1,36 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- "use strict";
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- var tslib_1 = require("tslib");
8
- var core_1 = require("@angular/core");
9
- var upload_component_1 = require("./upload.component");
10
- var upload_action_buttons_component_1 = require("./rendering/upload-action-buttons.component");
11
- var upload_status_total_component_1 = require("./rendering/upload-status-total.component");
12
- var shared_module_1 = require("./shared.module");
13
- var UPLOAD_DECLARATIONS = [
14
- upload_component_1.UploadComponent,
15
- upload_action_buttons_component_1.UploadActionButtonsComponent,
16
- upload_status_total_component_1.UploadStatusTotalComponent
17
- ];
18
- /**
19
- * Represents the [NgModule](https://angular.io/api/core/NgModule) definition for the Upload component.
20
- */
21
- var UploadModule = /** @class */ (function () {
22
- function UploadModule() {
23
- }
24
- UploadModule = tslib_1.__decorate([
25
- core_1.NgModule({
26
- declarations: [UPLOAD_DECLARATIONS],
27
- exports: [
28
- shared_module_1.PUBLIC_DIRECTIVES,
29
- UPLOAD_DECLARATIONS
30
- ],
31
- imports: [shared_module_1.SharedModule]
32
- })
33
- ], UploadModule);
34
- return UploadModule;
35
- }());
36
- exports.UploadModule = UploadModule;
@@ -1,450 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- "use strict";
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- var tslib_1 = require("tslib");
8
- var http_1 = require("@angular/common/http");
9
- var core_1 = require("@angular/core");
10
- var types_1 = require("./types");
11
- var file_map_1 = require("./types/file-map");
12
- var events_1 = require("./events");
13
- var util_1 = require("./common/util");
14
- var chunk_map_1 = require("./types/chunk-map");
15
- /**
16
- * @hidden
17
- */
18
- var UploadService = /** @class */ (function () {
19
- function UploadService(http) {
20
- this.http = http;
21
- this.cancelEvent = new core_1.EventEmitter();
22
- this.clearEvent = new core_1.EventEmitter();
23
- this.completeEvent = new core_1.EventEmitter();
24
- this.errorEvent = new core_1.EventEmitter();
25
- this.pauseEvent = new core_1.EventEmitter();
26
- this.removeEvent = new core_1.EventEmitter();
27
- this.resumeEvent = new core_1.EventEmitter();
28
- this.selectEvent = new core_1.EventEmitter();
29
- this.successEvent = new core_1.EventEmitter();
30
- this.uploadEvent = new core_1.EventEmitter();
31
- this.uploadProgressEvent = new core_1.EventEmitter();
32
- /**
33
- * Required for the `ControlValueAccessor` integration
34
- */
35
- this.changeEvent = new core_1.EventEmitter();
36
- /**
37
- * Default async settings
38
- */
39
- this.async = {
40
- autoUpload: true,
41
- batch: false,
42
- chunk: false,
43
- concurrent: true,
44
- removeField: "fileNames",
45
- removeHeaders: new http_1.HttpHeaders(),
46
- removeMethod: "POST",
47
- removeUrl: "",
48
- responseType: "json",
49
- saveField: "files",
50
- saveHeaders: new http_1.HttpHeaders(),
51
- saveMethod: "POST",
52
- saveUrl: "",
53
- withCredentials: true
54
- };
55
- /**
56
- * Default chunk settings
57
- */
58
- this.chunk = {
59
- autoRetryAfter: 100,
60
- size: 1024 * 1024,
61
- maxAutoRetries: 1,
62
- resumable: true
63
- };
64
- this.component = 'Upload';
65
- this.chunkMap = new chunk_map_1.ChunkMap();
66
- this.fileList = new file_map_1.FileMap();
67
- }
68
- Object.defineProperty(UploadService.prototype, "files", {
69
- get: function () {
70
- return this.fileList;
71
- },
72
- enumerable: true,
73
- configurable: true
74
- });
75
- UploadService.prototype.setChunkSettings = function (settings) {
76
- if (settings !== false) {
77
- this.async.chunk = true;
78
- if (typeof settings === "object") {
79
- this.chunk = Object.assign({}, this.chunk, settings);
80
- }
81
- }
82
- };
83
- UploadService.prototype.onChange = function () {
84
- var files = this.fileList.filesFlat.filter(function (file) {
85
- return file.state === types_1.FileState.Initial ||
86
- file.state === types_1.FileState.Uploaded;
87
- });
88
- this.changeEvent.emit(files.length > 0 ? files : null);
89
- };
90
- UploadService.prototype.addFiles = function (files) {
91
- var selectEventArgs = new events_1.SelectEvent(files);
92
- this.selectEvent.emit(selectEventArgs);
93
- if (!selectEventArgs.isDefaultPrevented()) {
94
- for (var _i = 0, files_1 = files; _i < files_1.length; _i++) {
95
- var file = files_1[_i];
96
- this.fileList.add(file);
97
- }
98
- if (this.async.autoUpload) {
99
- this.uploadFiles();
100
- }
101
- }
102
- if (this.component === 'FileSelect') {
103
- var flatFiles = this.fileList.filesFlat;
104
- this.changeEvent.emit(flatFiles.length > 0 ? flatFiles : null);
105
- }
106
- };
107
- UploadService.prototype.addInitialFiles = function (initialFiles) {
108
- var _this = this;
109
- this.fileList.clear();
110
- initialFiles.forEach(function (file) {
111
- var fakeFile = util_1.getInitialFileInfo(file);
112
- _this.fileList.add(fakeFile);
113
- });
114
- };
115
- UploadService.prototype.addInitialFileSelectFiles = function (initialFiles) {
116
- var _this = this;
117
- this.fileList.clear();
118
- initialFiles.forEach(function (file) {
119
- if (file instanceof File) {
120
- _this.fileList.add(util_1.convertFileToFileInfo(file));
121
- }
122
- else {
123
- _this.fileList.add(util_1.getInitialFileInfo(file));
124
- }
125
- });
126
- };
127
- UploadService.prototype.resumeFile = function (uid) {
128
- var fileToResume = this.fileList.get(uid);
129
- this.resumeEvent.emit(new events_1.ResumeEvent(fileToResume[0]));
130
- this.fileList.setFilesStateByUid(uid, types_1.FileState.Uploading);
131
- this._uploadFiles([fileToResume]);
132
- };
133
- UploadService.prototype.pauseFile = function (uid) {
134
- var pausedFile = this.fileList.get(uid)[0];
135
- this.pauseEvent.emit(new events_1.PauseEvent(pausedFile));
136
- this.fileList.setFilesStateByUid(uid, types_1.FileState.Paused);
137
- };
138
- UploadService.prototype.removeFiles = function (uid) {
139
- var removedFiles = this.fileList.get(uid);
140
- // Clone the Headers so that the default ones are not overridden
141
- var removeEventArgs = new events_1.RemoveEvent(removedFiles, this.cloneRequestHeaders(this.async.removeHeaders));
142
- this.removeEvent.emit(removeEventArgs);
143
- if (!removeEventArgs.isDefaultPrevented()) {
144
- if (this.component === 'Upload' &&
145
- (removedFiles[0].state === types_1.FileState.Uploaded ||
146
- removedFiles[0].state === types_1.FileState.Initial)) {
147
- this.performRemove(removedFiles, removeEventArgs);
148
- }
149
- else {
150
- this.fileList.remove(uid);
151
- if (this.component === 'FileSelect') {
152
- var flatFiles = this.fileList.filesFlat;
153
- this.changeEvent.emit(flatFiles.length > 0 ? flatFiles : null);
154
- }
155
- }
156
- }
157
- };
158
- UploadService.prototype.cancelFiles = function (uid) {
159
- var canceledFiles = this.fileList.get(uid);
160
- var cancelEventArgs = new events_1.CancelEvent(canceledFiles);
161
- this.cancelEvent.emit(cancelEventArgs);
162
- for (var _i = 0, canceledFiles_1 = canceledFiles; _i < canceledFiles_1.length; _i++) {
163
- var file = canceledFiles_1[_i];
164
- if (file.httpSubscription) {
165
- file.httpSubscription.unsubscribe();
166
- }
167
- }
168
- this.fileList.remove(uid);
169
- this.checkAllComplete();
170
- };
171
- UploadService.prototype.clearFiles = function () {
172
- var clearEventArgs = new events_1.ClearEvent();
173
- this.clearEvent.emit(clearEventArgs);
174
- if (!clearEventArgs.isDefaultPrevented()) {
175
- var triggerChange = this.fileList.hasFileWithState([
176
- types_1.FileState.Initial,
177
- types_1.FileState.Uploaded
178
- ]);
179
- this.fileList.clear();
180
- if (triggerChange) {
181
- this.onChange();
182
- }
183
- }
184
- };
185
- UploadService.prototype.uploadFiles = function () {
186
- var filesToUpload = [];
187
- if (this.async.concurrent) {
188
- filesToUpload = this.fileList.filesToUpload;
189
- }
190
- if (!this.async.concurrent && !this.fileList.hasFileWithState([types_1.FileState.Uploading])) {
191
- filesToUpload = this.fileList.firstFileToUpload ? [this.fileList.firstFileToUpload] : [];
192
- }
193
- if (filesToUpload && filesToUpload.length > 0) {
194
- this._uploadFiles(filesToUpload);
195
- }
196
- };
197
- UploadService.prototype.retryFiles = function (uid) {
198
- var filesToRetry = [this.fileList.get(uid)];
199
- if (filesToRetry) {
200
- this._uploadFiles(filesToRetry);
201
- }
202
- };
203
- UploadService.prototype._uploadFiles = function (allFiles) {
204
- var _loop_1 = function (filesToUpload) {
205
- if (filesToUpload[0].state === types_1.FileState.Paused) {
206
- return { value: void 0 };
207
- }
208
- // Clone the Headers so that the default ones are not overridden
209
- var uploadEventArgs = new events_1.UploadEvent(filesToUpload, this_1.cloneRequestHeaders(this_1.async.saveHeaders));
210
- this_1.uploadEvent.emit(uploadEventArgs);
211
- if (!uploadEventArgs.isDefaultPrevented()) {
212
- this_1.fileList.setFilesState(filesToUpload, types_1.FileState.Uploading);
213
- var httpSubcription_1 = this_1.performUpload(filesToUpload, uploadEventArgs);
214
- filesToUpload.forEach(function (file) {
215
- file.httpSubscription = httpSubcription_1;
216
- });
217
- }
218
- else {
219
- this_1.fileList.remove(filesToUpload[0].uid);
220
- }
221
- };
222
- var this_1 = this;
223
- for (var _i = 0, allFiles_1 = allFiles; _i < allFiles_1.length; _i++) {
224
- var filesToUpload = allFiles_1[_i];
225
- var state_1 = _loop_1(filesToUpload);
226
- if (typeof state_1 === "object")
227
- return state_1.value;
228
- }
229
- };
230
- UploadService.prototype.performRemove = function (files, removeEventArgs) {
231
- var _this = this;
232
- var async = this.async;
233
- var fileNames = files.map(function (file) {
234
- return file.name;
235
- });
236
- var formData = this.populateRemoveFormData(fileNames, removeEventArgs.data);
237
- var options = this.populateRequestOptions(removeEventArgs.headers);
238
- var removeRequest = new http_1.HttpRequest(async.removeMethod, async.removeUrl, formData, options);
239
- this.http.request(removeRequest)
240
- .subscribe(function (success) {
241
- _this.onSuccess(success, files, "remove");
242
- }, function (error) {
243
- _this.onError(error, files, "remove");
244
- });
245
- };
246
- UploadService.prototype.performUpload = function (files, uploadEventArgs) {
247
- var _this = this;
248
- var async = this.async;
249
- var formData = this.populateUploadFormData(files, uploadEventArgs.data);
250
- var options = this.populateRequestOptions(uploadEventArgs.headers);
251
- var uploadRequest = new http_1.HttpRequest(async.saveMethod, async.saveUrl, formData, options);
252
- var httpSubscription = this.http.request(uploadRequest)
253
- .subscribe(function (event) {
254
- if (event.type === http_1.HttpEventType.UploadProgress && !_this.async.chunk) {
255
- _this.onProgress(event, files);
256
- }
257
- else if (event instanceof http_1.HttpResponse) {
258
- _this.onSuccess(event, files, "upload");
259
- _this.checkAllComplete();
260
- }
261
- }, function (error) {
262
- _this.onError(error, files, "upload");
263
- _this.checkAllComplete();
264
- });
265
- return httpSubscription;
266
- };
267
- UploadService.prototype.onSuccess = function (successResponse, files, operation) {
268
- if (operation === "upload" && this.async.chunk) {
269
- this.onChunkProgress(files);
270
- if (this.isChunkUploadComplete(files[0].uid)) {
271
- this.removeChunkInfo(files[0].uid);
272
- }
273
- else {
274
- this.updateChunkInfo(files[0].uid);
275
- this._uploadFiles([files]);
276
- return;
277
- }
278
- }
279
- var successArgs = new events_1.SuccessEvent(files, operation, successResponse);
280
- this.successEvent.emit(successArgs);
281
- if (operation === "upload") {
282
- this.fileList.setFilesState(files, successArgs.isDefaultPrevented() ? types_1.FileState.Failed : types_1.FileState.Uploaded);
283
- }
284
- else {
285
- if (!successArgs.isDefaultPrevented()) {
286
- this.fileList.remove(files[0].uid);
287
- }
288
- }
289
- if (!successArgs.isDefaultPrevented()) {
290
- this.onChange();
291
- }
292
- };
293
- UploadService.prototype.onError = function (errorResponse, files, operation) {
294
- var _this = this;
295
- if (operation === "upload" && this.async.chunk) {
296
- var maxRetries = this.chunk.maxAutoRetries;
297
- var chunkInfo = this.chunkMap.get(files[0].uid);
298
- if (chunkInfo.retries < maxRetries) {
299
- chunkInfo.retries += 1;
300
- setTimeout(function () {
301
- _this.retryFiles(files[0].uid);
302
- }, this.chunk.autoRetryAfter);
303
- return;
304
- }
305
- }
306
- var errorArgs = new events_1.ErrorEvent(files, operation, errorResponse);
307
- this.errorEvent.emit(errorArgs);
308
- if (operation === "upload") {
309
- this.fileList.setFilesState(files, types_1.FileState.Failed);
310
- }
311
- };
312
- UploadService.prototype.onProgress = function (event, files) {
313
- var percentComplete = Math.round(100 * event.loaded / event.total);
314
- var progressArgs = new events_1.UploadProgressEvent(files, percentComplete < 100 ? percentComplete : 100);
315
- this.uploadProgressEvent.emit(progressArgs);
316
- };
317
- UploadService.prototype.onChunkProgress = function (files) {
318
- var chunkInfo = this.chunkMap.get(files[0].uid);
319
- var percentComplete = 0;
320
- if (chunkInfo) {
321
- if (chunkInfo.index === chunkInfo.totalChunks - 1) {
322
- percentComplete = 100;
323
- }
324
- else {
325
- percentComplete = Math.round(((chunkInfo.index + 1) / chunkInfo.totalChunks) * 100);
326
- }
327
- }
328
- var progressArgs = new events_1.UploadProgressEvent(files, percentComplete < 100 ? percentComplete : 100);
329
- this.uploadProgressEvent.emit(progressArgs);
330
- };
331
- UploadService.prototype.checkAllComplete = function () {
332
- if (!this.fileList.hasFileWithState([
333
- types_1.FileState.Uploading,
334
- types_1.FileState.Paused
335
- ]) && this.areAllSelectedFilesHandled()) {
336
- this.completeEvent.emit();
337
- }
338
- else if (this.shouldUploadNextFile()) {
339
- this.uploadFiles();
340
- }
341
- };
342
- UploadService.prototype.shouldUploadNextFile = function () {
343
- return !this.async.concurrent &&
344
- this.fileList.hasFileWithState([types_1.FileState.Selected]) &&
345
- !this.fileList.hasFileWithState([types_1.FileState.Uploading]);
346
- };
347
- UploadService.prototype.areAllSelectedFilesHandled = function () {
348
- var validSelectedFiles = this.fileList.getFilesWithState(types_1.FileState.Selected).filter(function (file) { return !file.validationErrors; });
349
- return validSelectedFiles.length === 0;
350
- };
351
- UploadService.prototype.cloneRequestHeaders = function (headers) {
352
- var cloned = {};
353
- if (headers) {
354
- headers.keys().forEach(function (key) {
355
- cloned[key] = headers.get(key);
356
- });
357
- }
358
- return new http_1.HttpHeaders(cloned);
359
- };
360
- UploadService.prototype.populateRequestOptions = function (headers) {
361
- return {
362
- headers: headers,
363
- reportProgress: true,
364
- responseType: this.async.responseType,
365
- withCredentials: this.async.withCredentials
366
- };
367
- };
368
- UploadService.prototype.populateUploadFormData = function (files, clientData) {
369
- var saveField = this.async.saveField;
370
- var data = new FormData();
371
- this.populateClientFormData(data, clientData);
372
- if (this.async.chunk) {
373
- data.append(saveField, this.getNextChunk(files[0]));
374
- data.append("metadata", this.getChunkMetadata(files[0]));
375
- }
376
- else {
377
- for (var _i = 0, files_2 = files; _i < files_2.length; _i++) {
378
- var file = files_2[_i];
379
- data.append(saveField, file.rawFile);
380
- }
381
- }
382
- return data;
383
- };
384
- UploadService.prototype.populateRemoveFormData = function (fileNames, clientData) {
385
- var data = new FormData();
386
- this.populateClientFormData(data, clientData);
387
- for (var _i = 0, fileNames_1 = fileNames; _i < fileNames_1.length; _i++) {
388
- var fileName = fileNames_1[_i];
389
- data.append(this.async.removeField, fileName);
390
- }
391
- return data;
392
- };
393
- UploadService.prototype.populateClientFormData = function (data, clientData) {
394
- for (var key in clientData) {
395
- if (clientData.hasOwnProperty(key)) {
396
- data.append(key, clientData[key]);
397
- }
398
- }
399
- };
400
- /* Chunking Helper Methods Section */
401
- UploadService.prototype.getNextChunk = function (file) {
402
- var info = this.getChunkInfo(file);
403
- var newPosition = info.position + this.chunk.size;
404
- return file.rawFile.slice(info.position, newPosition);
405
- };
406
- UploadService.prototype.getChunkInfo = function (file) {
407
- var chunkInfo = this.chunkMap.get(file.uid);
408
- if (!chunkInfo) {
409
- var totalChunks = Math.ceil(file.size / this.chunk.size);
410
- chunkInfo = this.chunkMap.add(file.uid, totalChunks);
411
- }
412
- return chunkInfo;
413
- };
414
- UploadService.prototype.updateChunkInfo = function (uid) {
415
- var chunkInfo = this.chunkMap.get(uid);
416
- if (chunkInfo.index < chunkInfo.totalChunks - 1) {
417
- chunkInfo.index += 1;
418
- chunkInfo.position += this.chunk.size;
419
- chunkInfo.retries = 0;
420
- }
421
- };
422
- UploadService.prototype.removeChunkInfo = function (uid) {
423
- this.chunkMap.remove(uid);
424
- };
425
- UploadService.prototype.getChunkMetadata = function (file) {
426
- var chunkInfo = this.chunkMap.get(file.uid);
427
- var chunkMetadata = {
428
- chunkIndex: chunkInfo.index,
429
- contentType: file.rawFile.type,
430
- fileName: file.name,
431
- fileSize: file.size,
432
- fileUid: file.uid,
433
- totalChunks: chunkInfo.totalChunks
434
- };
435
- return JSON.stringify(chunkMetadata);
436
- };
437
- UploadService.prototype.isChunkUploadComplete = function (uid) {
438
- var chunkInfo = this.chunkMap.get(uid);
439
- if (chunkInfo) {
440
- return chunkInfo.index + 1 === chunkInfo.totalChunks;
441
- }
442
- return false;
443
- };
444
- UploadService = tslib_1.__decorate([
445
- core_1.Injectable(),
446
- tslib_1.__metadata("design:paramtypes", [http_1.HttpClient])
447
- ], UploadService);
448
- return UploadService;
449
- }());
450
- exports.UploadService = UploadService;
@@ -1,49 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- "use strict";
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- var tslib_1 = require("tslib");
8
- var core_1 = require("@angular/core");
9
- var fileselect_module_1 = require("./fileselect.module");
10
- var upload_module_1 = require("./upload.module");
11
- /**
12
- * Represents the [NgModule]({{ site.data.urls.angular['ngmoduleapi'] }})
13
- * definition for the Uploads components.
14
- *
15
- * @example
16
- *
17
- * ```ts-no-run
18
- * import { UploadsModule } from '@progress/kendo-angular-upload';
19
- *
20
- * import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
21
- * import { NgModule } from '@angular/core';
22
- *
23
- * import { AppComponent } from './app.component';
24
- *
25
- * _@NgModule({
26
- * declarations: [AppComponent],
27
- * imports: [BrowserModule, UploadsModule],
28
- * bootstrap: [AppComponent]
29
- * })
30
- * export class AppModule {}
31
- *
32
- * platformBrowserDynamic().bootstrapModule(AppModule);
33
- *
34
- * ```
35
- */
36
- var UploadsModule = /** @class */ (function () {
37
- function UploadsModule() {
38
- }
39
- UploadsModule = tslib_1.__decorate([
40
- core_1.NgModule({
41
- exports: [
42
- fileselect_module_1.FileSelectModule,
43
- upload_module_1.UploadModule
44
- ]
45
- })
46
- ], UploadsModule);
47
- return UploadsModule;
48
- }());
49
- exports.UploadsModule = UploadsModule;