@progress/kendo-angular-upload 17.0.0-develop.4 → 17.0.0-develop.40

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 (84) hide show
  1. package/README.md +36 -15
  2. package/common/action-buttons-layout.d.ts +1 -1
  3. package/common/base.d.ts +1 -1
  4. package/dropzone-external.directive.d.ts +1 -1
  5. package/dropzone-internal.directive.d.ts +1 -1
  6. package/dropzone.component.d.ts +1 -1
  7. package/{esm2020 → esm2022}/common/base.mjs +96 -67
  8. package/{esm2020 → esm2022}/dropzone-base.mjs +13 -9
  9. package/{esm2020 → esm2022}/dropzone-external.directive.mjs +16 -5
  10. package/{esm2020 → esm2022}/dropzone-internal.directive.mjs +14 -6
  11. package/{esm2020 → esm2022}/dropzone.component.mjs +38 -19
  12. package/{esm2020 → esm2022}/dropzone.service.mjs +3 -3
  13. package/{esm2020 → esm2022}/events/cancel-event.mjs +4 -0
  14. package/{esm2020 → esm2022}/events/error-event.mjs +12 -0
  15. package/{esm2020 → esm2022}/events/pause-event.mjs +4 -0
  16. package/{esm2020 → esm2022}/events/preventable-event.mjs +1 -3
  17. package/{esm2020 → esm2022}/events/remove-event.mjs +12 -0
  18. package/{esm2020 → esm2022}/events/resume-event.mjs +4 -0
  19. package/{esm2020 → esm2022}/events/select-event.mjs +4 -0
  20. package/{esm2020 → esm2022}/events/success-event.mjs +12 -0
  21. package/{esm2020 → esm2022}/events/upload-event.mjs +35 -0
  22. package/{esm2020 → esm2022}/events/upload-progress-event.mjs +8 -0
  23. package/{esm2020 → esm2022}/file-select.directive.mjs +17 -8
  24. package/{esm2020 → esm2022}/fileselect.component.mjs +61 -43
  25. package/{esm2020 → esm2022}/fileselect.module.mjs +8 -8
  26. package/{esm2020 → esm2022}/localization/custom-messages.component.mjs +12 -11
  27. package/{esm2020 → esm2022}/localization/localized-messages.directive.mjs +9 -8
  28. package/esm2022/localization/messages.mjs +143 -0
  29. package/{esm2020 → esm2022}/navigation.service.mjs +17 -14
  30. package/{esm2020 → esm2022}/package-metadata.mjs +2 -2
  31. package/{esm2020 → esm2022}/rendering/file-list-item-action-button.component.mjs +16 -10
  32. package/{esm2020 → esm2022}/rendering/file-list-item-base.mjs +7 -4
  33. package/{esm2020 → esm2022}/rendering/file-list-item.mjs +10 -5
  34. package/{esm2020 → esm2022}/rendering/file-list-multiple-items.component.mjs +18 -13
  35. package/{esm2020 → esm2022}/rendering/file-list-single-item.component.mjs +16 -12
  36. package/{esm2020 → esm2022}/rendering/file-list.component.mjs +14 -5
  37. package/{esm2020 → esm2022}/rendering/upload-action-buttons.component.mjs +17 -10
  38. package/{esm2020 → esm2022}/rendering/upload-status-total.component.mjs +14 -8
  39. package/{esm2020 → esm2022}/templates/file-info-template.directive.mjs +4 -3
  40. package/{esm2020 → esm2022}/templates/file-template.directive.mjs +4 -3
  41. package/{esm2020 → esm2022}/types/chunk-map.mjs +1 -0
  42. package/{esm2020 → esm2022}/types/file-map.mjs +1 -0
  43. package/{esm2020 → esm2022}/upload.component.mjs +114 -96
  44. package/{esm2020 → esm2022}/upload.module.mjs +8 -8
  45. package/{esm2020 → esm2022}/upload.service.mjs +50 -49
  46. package/{esm2020 → esm2022}/uploads.module.mjs +8 -8
  47. package/{fesm2020 → fesm2022}/progress-kendo-angular-upload.mjs +791 -443
  48. package/file-select.directive.d.ts +1 -1
  49. package/fileselect.component.d.ts +1 -1
  50. package/localization/messages.d.ts +1 -1
  51. package/package.json +16 -22
  52. package/rendering/file-list-item-action-button.component.d.ts +1 -1
  53. package/rendering/file-list-item.d.ts +1 -1
  54. package/rendering/file-list-multiple-items.component.d.ts +1 -1
  55. package/rendering/file-list-single-item.component.d.ts +1 -1
  56. package/rendering/file-list.component.d.ts +1 -1
  57. package/rendering/upload-action-buttons.component.d.ts +1 -1
  58. package/rendering/upload-status-total.component.d.ts +1 -1
  59. package/schematics/ngAdd/index.js +3 -3
  60. package/types/direction.d.ts +1 -1
  61. package/types/operation-type.d.ts +1 -1
  62. package/upload.component.d.ts +1 -1
  63. package/upload.service.d.ts +1 -1
  64. package/esm2020/localization/messages.mjs +0 -59
  65. package/fesm2015/progress-kendo-angular-upload.mjs +0 -4808
  66. /package/{esm2020 → esm2022}/common/action-buttons-layout.mjs +0 -0
  67. /package/{esm2020 → esm2022}/common/util.mjs +0 -0
  68. /package/{esm2020 → esm2022}/common/validation-util.mjs +0 -0
  69. /package/{esm2020 → esm2022}/directives.mjs +0 -0
  70. /package/{esm2020 → esm2022}/events/clear-event.mjs +0 -0
  71. /package/{esm2020 → esm2022}/events.mjs +0 -0
  72. /package/{esm2020 → esm2022}/index.mjs +0 -0
  73. /package/{esm2020 → esm2022}/progress-kendo-angular-upload.mjs +0 -0
  74. /package/{esm2020 → esm2022}/types/async-settings.mjs +0 -0
  75. /package/{esm2020 → esm2022}/types/chunk-info.mjs +0 -0
  76. /package/{esm2020 → esm2022}/types/chunk-metadata.mjs +0 -0
  77. /package/{esm2020 → esm2022}/types/chunk-settings.mjs +0 -0
  78. /package/{esm2020 → esm2022}/types/direction.mjs +0 -0
  79. /package/{esm2020 → esm2022}/types/file-groups.mjs +0 -0
  80. /package/{esm2020 → esm2022}/types/file-info.mjs +0 -0
  81. /package/{esm2020 → esm2022}/types/file-restrictions.mjs +0 -0
  82. /package/{esm2020 → esm2022}/types/file-state.mjs +0 -0
  83. /package/{esm2020 → esm2022}/types/operation-type.mjs +0 -0
  84. /package/{esm2020 → esm2022}/types.mjs +0 -0
@@ -56,6 +56,7 @@ var FileState;
56
56
  * @hidden
57
57
  */
58
58
  class FileMap {
59
+ _files;
59
60
  constructor() {
60
61
  this._files = {};
61
62
  }
@@ -218,6 +219,10 @@ class FileMap {
218
219
  * ```
219
220
  */
220
221
  class CancelEvent {
222
+ /**
223
+ * The list of the files that were going to be uploaded.
224
+ */
225
+ files;
221
226
  /**
222
227
  * @hidden
223
228
  * Constructs the event arguments for the `cancel` event.
@@ -232,9 +237,7 @@ class CancelEvent {
232
237
  * @hidden
233
238
  */
234
239
  class PreventableEvent {
235
- constructor() {
236
- this.prevented = false;
237
- }
240
+ prevented = false;
238
241
  /**
239
242
  * Prevents the default action for a specified event.
240
243
  * In this way, the source component suppresses the built-in behavior that follows the event.
@@ -312,6 +315,18 @@ class ClearEvent extends PreventableEvent {
312
315
  * ```
313
316
  */
314
317
  class ErrorEvent {
318
+ /**
319
+ * The list of the files that failed to be uploaded or removed.
320
+ */
321
+ files;
322
+ /**
323
+ * The operation type (`upload` or `remove`).
324
+ */
325
+ operation;
326
+ /**
327
+ * The response object returned by the server.
328
+ */
329
+ response;
315
330
  /**
316
331
  * @hidden
317
332
  * Constructs the event arguments for the `error` event.
@@ -355,6 +370,10 @@ class ErrorEvent {
355
370
  *
356
371
  */
357
372
  class PauseEvent {
373
+ /**
374
+ * The file that is going to be paused.
375
+ */
376
+ file;
358
377
  /**
359
378
  * @hidden
360
379
  * Constructs the event arguments for the `pause` event.
@@ -391,6 +410,18 @@ class PauseEvent {
391
410
  * ```
392
411
  */
393
412
  class RemoveEvent extends PreventableEvent {
413
+ /**
414
+ * An optional object that is sent to the `remove` handler in the form of a key/value pair.
415
+ */
416
+ data;
417
+ /**
418
+ * The list of the files that will be removed.
419
+ */
420
+ files;
421
+ /**
422
+ * The headers of the request.
423
+ */
424
+ headers;
394
425
  /**
395
426
  * @hidden
396
427
  * Constructs the event arguments for the `remove` event.
@@ -432,6 +463,10 @@ class RemoveEvent extends PreventableEvent {
432
463
  *
433
464
  */
434
465
  class ResumeEvent {
466
+ /**
467
+ * The file that is going to be resumed.
468
+ */
469
+ file;
435
470
  /**
436
471
  * @hidden
437
472
  * Constructs the event arguments for the `resume` event.
@@ -468,6 +503,10 @@ class ResumeEvent {
468
503
  * ```
469
504
  */
470
505
  class SelectEvent extends PreventableEvent {
506
+ /**
507
+ * The list of the selected files.
508
+ */
509
+ files;
471
510
  /**
472
511
  * @hidden
473
512
  * Constructs the event arguments for the `select` event.
@@ -505,6 +544,18 @@ class SelectEvent extends PreventableEvent {
505
544
  * ```
506
545
  */
507
546
  class SuccessEvent extends PreventableEvent {
547
+ /**
548
+ * The list of the files that were uploaded or removed.
549
+ */
550
+ files;
551
+ /**
552
+ * The operation type (`upload` or `remove`).
553
+ */
554
+ operation;
555
+ /**
556
+ * The response object returned by the server.
557
+ */
558
+ response;
508
559
  /**
509
560
  * @hidden
510
561
  * Constructs the event arguments for the `success` event.
@@ -546,6 +597,41 @@ class SuccessEvent extends PreventableEvent {
546
597
  * ```
547
598
  */
548
599
  class UploadEvent extends PreventableEvent {
600
+ /**
601
+ * The optional object that is sent to the `upload` handler in the form of key/value pair.
602
+ *
603
+ * ```ts-no-run
604
+ * @Component({
605
+ * selector: 'my-upload',
606
+ * template: `
607
+ * <kendo-upload
608
+ * [saveUrl]="uploadSaveUrl"
609
+ * [removeUrl]="uploadRemoveUrl"
610
+ * (upload)="uploadEventHandler($event)">
611
+ * </kendo-upload>
612
+ * `
613
+ * })
614
+ * export class UploadComponent {
615
+ * uploadSaveUrl = 'saveUrl'; // should represent an actual API endpoint
616
+ * uploadRemoveUrl = 'removeUrl'; // should represent an actual API endpoint
617
+ *
618
+ * uploadEventHandler(e: UploadEvent) {
619
+ * e.data = {
620
+ * description: 'File description'
621
+ * };
622
+ * }
623
+ * }
624
+ * ```
625
+ */
626
+ data;
627
+ /**
628
+ * The list of the files that will be uploaded.
629
+ */
630
+ files;
631
+ /**
632
+ * The headers of the request.
633
+ */
634
+ headers;
549
635
  /**
550
636
  * @hidden
551
637
  * Constructs the event arguments for the `upload` event.
@@ -585,6 +671,14 @@ class UploadEvent extends PreventableEvent {
585
671
  * ```
586
672
  */
587
673
  class UploadProgressEvent {
674
+ /**
675
+ * The list of files that are being uploaded.
676
+ */
677
+ files;
678
+ /**
679
+ * The portion that has been uploaded.
680
+ */
681
+ percentComplete;
588
682
  /**
589
683
  * @hidden
590
684
  * Constructs the event arguments for the `uploadprogress` event.
@@ -880,6 +974,7 @@ const isPresent = (value) => value !== null && value !== undefined;
880
974
  * @hidden
881
975
  */
882
976
  class ChunkMap {
977
+ _files;
883
978
  constructor() {
884
979
  this._files = {};
885
980
  }
@@ -911,54 +1006,55 @@ class ChunkMap {
911
1006
  * @hidden
912
1007
  */
913
1008
  class UploadService {
1009
+ http;
1010
+ cancelEvent = new EventEmitter();
1011
+ clearEvent = new EventEmitter();
1012
+ completeEvent = new EventEmitter();
1013
+ errorEvent = new EventEmitter();
1014
+ pauseEvent = new EventEmitter();
1015
+ removeEvent = new EventEmitter();
1016
+ resumeEvent = new EventEmitter();
1017
+ selectEvent = new EventEmitter();
1018
+ successEvent = new EventEmitter();
1019
+ uploadEvent = new EventEmitter();
1020
+ uploadProgressEvent = new EventEmitter();
1021
+ /**
1022
+ * Required for the `ControlValueAccessor` integration
1023
+ */
1024
+ changeEvent = new EventEmitter();
1025
+ /**
1026
+ * Default async settings
1027
+ */
1028
+ async = {
1029
+ autoUpload: true,
1030
+ batch: false,
1031
+ chunk: false,
1032
+ concurrent: true,
1033
+ removeField: "fileNames",
1034
+ removeHeaders: new HttpHeaders(),
1035
+ removeMethod: "POST",
1036
+ removeUrl: "",
1037
+ responseType: "json",
1038
+ saveField: "files",
1039
+ saveHeaders: new HttpHeaders(),
1040
+ saveMethod: "POST",
1041
+ saveUrl: "",
1042
+ withCredentials: true
1043
+ };
1044
+ /**
1045
+ * Default chunk settings
1046
+ */
1047
+ chunk = {
1048
+ autoRetryAfter: 100,
1049
+ size: 1024 * 1024,
1050
+ maxAutoRetries: 1,
1051
+ resumable: true
1052
+ };
1053
+ component = 'Upload';
1054
+ chunkMap = new ChunkMap();
1055
+ fileList = new FileMap();
914
1056
  constructor(http) {
915
1057
  this.http = http;
916
- this.cancelEvent = new EventEmitter();
917
- this.clearEvent = new EventEmitter();
918
- this.completeEvent = new EventEmitter();
919
- this.errorEvent = new EventEmitter();
920
- this.pauseEvent = new EventEmitter();
921
- this.removeEvent = new EventEmitter();
922
- this.resumeEvent = new EventEmitter();
923
- this.selectEvent = new EventEmitter();
924
- this.successEvent = new EventEmitter();
925
- this.uploadEvent = new EventEmitter();
926
- this.uploadProgressEvent = new EventEmitter();
927
- /**
928
- * Required for the `ControlValueAccessor` integration
929
- */
930
- this.changeEvent = new EventEmitter();
931
- /**
932
- * Default async settings
933
- */
934
- this.async = {
935
- autoUpload: true,
936
- batch: false,
937
- chunk: false,
938
- concurrent: true,
939
- removeField: "fileNames",
940
- removeHeaders: new HttpHeaders(),
941
- removeMethod: "POST",
942
- removeUrl: "",
943
- responseType: "json",
944
- saveField: "files",
945
- saveHeaders: new HttpHeaders(),
946
- saveMethod: "POST",
947
- saveUrl: "",
948
- withCredentials: true
949
- };
950
- /**
951
- * Default chunk settings
952
- */
953
- this.chunk = {
954
- autoRetryAfter: 100,
955
- size: 1024 * 1024,
956
- maxAutoRetries: 1,
957
- resumable: true
958
- };
959
- this.component = 'Upload';
960
- this.chunkMap = new ChunkMap();
961
- this.fileList = new FileMap();
962
1058
  }
963
1059
  get files() {
964
1060
  return this.fileList;
@@ -1316,10 +1412,10 @@ class UploadService {
1316
1412
  }
1317
1413
  return false;
1318
1414
  }
1415
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1416
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadService });
1319
1417
  }
1320
- UploadService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1321
- UploadService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadService });
1322
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadService, decorators: [{
1418
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadService, decorators: [{
1323
1419
  type: Injectable
1324
1420
  }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
1325
1421
 
@@ -1327,20 +1423,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1327
1423
  * @hidden
1328
1424
  */
1329
1425
  class NavigationService {
1426
+ uploadService;
1427
+ zone;
1428
+ onActionButtonFocus = new EventEmitter();
1429
+ onFileAction = new EventEmitter();
1430
+ onFileFocus = new EventEmitter();
1431
+ onTabOut = new EventEmitter();
1432
+ onWrapperFocus = new EventEmitter();
1433
+ onSelectButtonFocus = new EventEmitter();
1434
+ actionButtonsVisible = false;
1435
+ fileListVisible = false;
1436
+ focused = false;
1437
+ keyBindings;
1438
+ focusedFileIndex = 0;
1439
+ _focusedIndex = -1;
1330
1440
  constructor(uploadService, zone) {
1331
1441
  this.uploadService = uploadService;
1332
1442
  this.zone = zone;
1333
- this.onActionButtonFocus = new EventEmitter();
1334
- this.onFileAction = new EventEmitter();
1335
- this.onFileFocus = new EventEmitter();
1336
- this.onTabOut = new EventEmitter();
1337
- this.onWrapperFocus = new EventEmitter();
1338
- this.onSelectButtonFocus = new EventEmitter();
1339
- this.actionButtonsVisible = false;
1340
- this.fileListVisible = false;
1341
- this.focused = false;
1342
- this.focusedFileIndex = 0;
1343
- this._focusedIndex = -1;
1344
1443
  }
1345
1444
  action(event) {
1346
1445
  const key = event.keyCode;
@@ -1455,10 +1554,10 @@ class NavigationService {
1455
1554
  const fileCount = this.uploadService.files.count;
1456
1555
  return this.actionButtonsVisible ? fileCount + 1 : fileCount - 1;
1457
1556
  }
1557
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavigationService, deps: [{ token: UploadService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
1558
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavigationService });
1458
1559
  }
1459
- NavigationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NavigationService, deps: [{ token: UploadService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
1460
- NavigationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NavigationService });
1461
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NavigationService, decorators: [{
1560
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavigationService, decorators: [{
1462
1561
  type: Injectable
1463
1562
  }], ctorParameters: function () { return [{ type: UploadService }, { type: i0.NgZone }]; } });
1464
1563
 
@@ -1487,10 +1586,10 @@ class DropZoneService {
1487
1586
  has(id) {
1488
1587
  return id in components;
1489
1588
  }
1589
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropZoneService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1590
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropZoneService });
1490
1591
  }
1491
- DropZoneService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DropZoneService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1492
- DropZoneService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DropZoneService });
1493
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DropZoneService, decorators: [{
1592
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropZoneService, decorators: [{
1494
1593
  type: Injectable
1495
1594
  }] });
1496
1595
 
@@ -1558,8 +1657,8 @@ const packageMetadata = {
1558
1657
  name: '@progress/kendo-angular-upload',
1559
1658
  productName: 'Kendo UI for Angular',
1560
1659
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
1561
- publishDate: 1728985017,
1562
- version: '17.0.0-develop.4',
1660
+ publishDate: 1730798842,
1661
+ version: '17.0.0-develop.40',
1563
1662
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
1564
1663
  };
1565
1664
 
@@ -1567,13 +1666,14 @@ const packageMetadata = {
1567
1666
  * Used to customize the rendering of the files in the list ([see example]({% slug templates_upload %}#toc-file-template)).
1568
1667
  */
1569
1668
  class FileTemplateDirective {
1669
+ templateRef;
1570
1670
  constructor(templateRef) {
1571
1671
  this.templateRef = templateRef;
1572
1672
  }
1673
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
1674
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: FileTemplateDirective, isStandalone: true, selector: "[kendoUploadFileTemplate], [kendoFileSelectFileTemplate]", ngImport: i0 });
1573
1675
  }
1574
- FileTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
1575
- FileTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FileTemplateDirective, isStandalone: true, selector: "[kendoUploadFileTemplate], [kendoFileSelectFileTemplate]", ngImport: i0 });
1576
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileTemplateDirective, decorators: [{
1676
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileTemplateDirective, decorators: [{
1577
1677
  type: Directive,
1578
1678
  args: [{
1579
1679
  selector: '[kendoUploadFileTemplate], [kendoFileSelectFileTemplate]',
@@ -1585,13 +1685,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1585
1685
  * Used to customize the rendering of the file info section in the list. All other elements of the default template, such as file icon, action buttons, upload progress etc. will be preserved in place. ([see example]({% slug templates_upload %}#toc-file-info-template)).
1586
1686
  */
1587
1687
  class FileInfoTemplateDirective {
1688
+ templateRef;
1588
1689
  constructor(templateRef) {
1589
1690
  this.templateRef = templateRef;
1590
1691
  }
1692
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileInfoTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
1693
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: FileInfoTemplateDirective, isStandalone: true, selector: "[kendoUploadFileInfoTemplate], [kendoFileSelectFileInfoTemplate]", ngImport: i0 });
1591
1694
  }
1592
- FileInfoTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileInfoTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
1593
- FileInfoTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FileInfoTemplateDirective, isStandalone: true, selector: "[kendoUploadFileInfoTemplate], [kendoFileSelectFileInfoTemplate]", ngImport: i0 });
1594
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileInfoTemplateDirective, decorators: [{
1695
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileInfoTemplateDirective, decorators: [{
1595
1696
  type: Directive,
1596
1697
  args: [{
1597
1698
  selector: '[kendoUploadFileInfoTemplate], [kendoFileSelectFileInfoTemplate]',
@@ -1603,70 +1704,49 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1603
1704
  * @hidden
1604
1705
  */
1605
1706
  class UploadFileSelectBase {
1606
- constructor(uploadService, navigation, cdr, injector, zone) {
1607
- this.uploadService = uploadService;
1608
- this.navigation = navigation;
1609
- this.cdr = cdr;
1610
- this.injector = injector;
1611
- this.zone = zone;
1612
- /**
1613
- * Disables the component.
1614
- *
1615
- * @default false
1616
- */
1617
- this.disabled = false;
1618
- /**
1619
- * Enables the selection of multiple files
1620
- * If set to `false`, only one file can be selected at a time.
1621
- * @default true
1622
- */
1623
- this.multiple = true;
1624
- /**
1625
- * Toggles the visibility of the file list.
1626
- * @default true
1627
- */
1628
- this.showFileList = true;
1629
- /**
1630
- * Specifies the [`tabindex`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex) of the component.
1631
- * @default 0
1632
- */
1633
- this.tabindex = 0;
1634
- /**
1635
- * @hidden
1636
- */
1637
- this.focusableId = `k-${guid()}`;
1638
- /**
1639
- * @hidden
1640
- */
1641
- this.hostDefaultClasses = true;
1642
- /**
1643
- * Fires when the user navigates outside the component.
1644
- */
1645
- this.onBlur = new EventEmitter();
1646
- /**
1647
- * Fires when the component is focused.
1648
- */
1649
- this.onFocus = new EventEmitter();
1650
- /**
1651
- * Fires when files are selected. If prevented, the selected files will not be added to the list.
1652
- */
1653
- this.select = new EventEmitter();
1654
- /**
1655
- * Fires when a file is about to be removed. If prevented, the file will remain in the list.
1656
- */
1657
- this.remove = new EventEmitter();
1658
- /**
1659
- * @hidden
1660
- */
1661
- this._restrictions = {
1662
- allowedExtensions: [],
1663
- maxFileSize: 0,
1664
- minFileSize: 0
1665
- };
1666
- this.onTouchedCallback = (_) => { };
1667
- this.onChangeCallback = (_) => { };
1668
- this.fileList = this.uploadService.files;
1669
- }
1707
+ uploadService;
1708
+ navigation;
1709
+ cdr;
1710
+ injector;
1711
+ zone;
1712
+ /**
1713
+ * @hidden
1714
+ */
1715
+ fileTemplate;
1716
+ /**
1717
+ * @hidden
1718
+ */
1719
+ fileInfoTemplate;
1720
+ /**
1721
+ * @hidden
1722
+ */
1723
+ fileSelectButton;
1724
+ /**
1725
+ * Sets the `accept` attribute of the internal `input` element of the component.
1726
+ */
1727
+ accept;
1728
+ /**
1729
+ * Disables the component.
1730
+ *
1731
+ * @default false
1732
+ */
1733
+ disabled = false;
1734
+ /**
1735
+ * Enables the selection of multiple files
1736
+ * If set to `false`, only one file can be selected at a time.
1737
+ * @default true
1738
+ */
1739
+ multiple = true;
1740
+ /**
1741
+ * Toggles the visibility of the file list.
1742
+ * @default true
1743
+ */
1744
+ showFileList = true;
1745
+ /**
1746
+ * Specifies the [`tabindex`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex) of the component.
1747
+ * @default 0
1748
+ */
1749
+ tabindex = 0;
1670
1750
  /**
1671
1751
  * Sets the restrictions for selected files.
1672
1752
  */
@@ -1677,12 +1757,60 @@ class UploadFileSelectBase {
1677
1757
  get restrictions() {
1678
1758
  return this._restrictions;
1679
1759
  }
1760
+ /**
1761
+ * Specifies the id of the external drop zone to associate with the component.
1762
+ */
1763
+ zoneId;
1764
+ /**
1765
+ * @hidden
1766
+ */
1767
+ focusableId = `k-${guid()}`;
1768
+ /**
1769
+ * @hidden
1770
+ */
1771
+ hostDefaultClasses = true;
1680
1772
  /**
1681
1773
  * @hidden
1682
1774
  */
1683
1775
  get hostDisabledClass() {
1684
1776
  return this.disabled;
1685
1777
  }
1778
+ /**
1779
+ * Fires when the user navigates outside the component.
1780
+ */
1781
+ onBlur = new EventEmitter();
1782
+ /**
1783
+ * Fires when the component is focused.
1784
+ */
1785
+ onFocus = new EventEmitter();
1786
+ /**
1787
+ * Fires when files are selected. If prevented, the selected files will not be added to the list.
1788
+ */
1789
+ select = new EventEmitter();
1790
+ /**
1791
+ * Fires when a file is about to be removed. If prevented, the file will remain in the list.
1792
+ */
1793
+ remove = new EventEmitter();
1794
+ /**
1795
+ * @hidden
1796
+ */
1797
+ _restrictions = {
1798
+ allowedExtensions: [],
1799
+ maxFileSize: 0,
1800
+ minFileSize: 0
1801
+ };
1802
+ /**
1803
+ * @hidden
1804
+ */
1805
+ fileList;
1806
+ constructor(uploadService, navigation, cdr, injector, zone) {
1807
+ this.uploadService = uploadService;
1808
+ this.navigation = navigation;
1809
+ this.cdr = cdr;
1810
+ this.injector = injector;
1811
+ this.zone = zone;
1812
+ this.fileList = this.uploadService.files;
1813
+ }
1686
1814
  /**
1687
1815
  * @hidden
1688
1816
  */
@@ -1724,6 +1852,8 @@ class UploadFileSelectBase {
1724
1852
  }
1725
1853
  this.cdr.markForCheck();
1726
1854
  }
1855
+ onTouchedCallback = (_) => { };
1856
+ onChangeCallback = (_) => { };
1727
1857
  /**
1728
1858
  * @hidden
1729
1859
  */
@@ -1784,10 +1914,10 @@ class UploadFileSelectBase {
1784
1914
  blurComponent() {
1785
1915
  this.blur();
1786
1916
  }
1917
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadFileSelectBase, deps: [{ token: UploadService }, { token: NavigationService }, { token: i0.ChangeDetectorRef }, { token: i0.Injector }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
1918
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: UploadFileSelectBase, inputs: { accept: "accept", disabled: "disabled", multiple: "multiple", showFileList: "showFileList", tabindex: "tabindex", restrictions: "restrictions", zoneId: "zoneId", focusableId: "focusableId" }, outputs: { onBlur: "blur", onFocus: "focus", select: "select", remove: "remove" }, host: { properties: { "class.k-upload": "this.hostDefaultClasses", "class.k-disabled": "this.hostDisabledClass" } }, queries: [{ propertyName: "fileTemplate", first: true, predicate: FileTemplateDirective, descendants: true }, { propertyName: "fileInfoTemplate", first: true, predicate: FileInfoTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "fileSelectButton", first: true, predicate: ["fileSelectButton"], descendants: true, read: ElementRef, static: true }], ngImport: i0 });
1787
1919
  }
1788
- UploadFileSelectBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadFileSelectBase, deps: [{ token: UploadService }, { token: NavigationService }, { token: i0.ChangeDetectorRef }, { token: i0.Injector }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
1789
- UploadFileSelectBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: UploadFileSelectBase, inputs: { accept: "accept", disabled: "disabled", multiple: "multiple", showFileList: "showFileList", tabindex: "tabindex", restrictions: "restrictions", zoneId: "zoneId", focusableId: "focusableId" }, outputs: { onBlur: "blur", onFocus: "focus", select: "select", remove: "remove" }, host: { properties: { "class.k-upload": "this.hostDefaultClasses", "class.k-disabled": "this.hostDisabledClass" } }, queries: [{ propertyName: "fileTemplate", first: true, predicate: FileTemplateDirective, descendants: true }, { propertyName: "fileInfoTemplate", first: true, predicate: FileInfoTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "fileSelectButton", first: true, predicate: ["fileSelectButton"], descendants: true, read: ElementRef, static: true }], ngImport: i0 });
1790
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadFileSelectBase, decorators: [{
1920
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadFileSelectBase, decorators: [{
1791
1921
  type: Directive,
1792
1922
  args: [{}]
1793
1923
  }], ctorParameters: function () { return [{ type: UploadService }, { type: NavigationService }, { type: i0.ChangeDetectorRef }, { type: i0.Injector }, { type: i0.NgZone }]; }, propDecorators: { fileTemplate: [{
@@ -1838,12 +1968,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1838
1968
  * @hidden
1839
1969
  */
1840
1970
  class UploadActionButtonsComponent {
1841
- constructor(uploadService, localization, navigation) {
1842
- this.uploadService = uploadService;
1843
- this.localization = localization;
1844
- this.navigation = navigation;
1845
- this.hostDefaultClass = true;
1846
- }
1971
+ uploadService;
1972
+ localization;
1973
+ navigation;
1974
+ disabled;
1975
+ actionsLayout;
1976
+ clearButton;
1977
+ uploadButton;
1978
+ hostDefaultClass = true;
1847
1979
  get actionButtonsEndClassName() {
1848
1980
  return this.actionsLayout === 'end';
1849
1981
  }
@@ -1856,6 +1988,11 @@ class UploadActionButtonsComponent {
1856
1988
  get actionButtonsCenterClassName() {
1857
1989
  return this.actionsLayout === 'center';
1858
1990
  }
1991
+ constructor(uploadService, localization, navigation) {
1992
+ this.uploadService = uploadService;
1993
+ this.localization = localization;
1994
+ this.navigation = navigation;
1995
+ }
1859
1996
  onUploadButtonFocus() {
1860
1997
  if (!this.navigation.focused) {
1861
1998
  this.navigation.focusedIndex = this.navigation.lastIndex;
@@ -1884,9 +2021,8 @@ class UploadActionButtonsComponent {
1884
2021
  textFor(key) {
1885
2022
  return this.localization.get(key);
1886
2023
  }
1887
- }
1888
- UploadActionButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadActionButtonsComponent, deps: [{ token: UploadService }, { token: i1$1.LocalizationService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
1889
- UploadActionButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: UploadActionButtonsComponent, isStandalone: true, selector: "kendo-upload-action-buttons", inputs: { disabled: "disabled", actionsLayout: "actionsLayout" }, host: { properties: { "class.k-actions": "this.hostDefaultClass", "class.k-actions-end": "this.actionButtonsEndClassName", "class.k-actions-stretched": "this.actionButtonsStretchedClassName", "class.k-actions-start": "this.actionButtonsStartClassName", "class.k-actions-center": "this.actionButtonsCenterClassName" } }, viewQueries: [{ propertyName: "clearButton", first: true, predicate: ["clearButton"], descendants: true, static: true }, { propertyName: "uploadButton", first: true, predicate: ["uploadButton"], descendants: true, static: true }], ngImport: i0, template: `
2024
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadActionButtonsComponent, deps: [{ token: UploadService }, { token: i1$1.LocalizationService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
2025
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: UploadActionButtonsComponent, isStandalone: true, selector: "kendo-upload-action-buttons", inputs: { disabled: "disabled", actionsLayout: "actionsLayout" }, host: { properties: { "class.k-actions": "this.hostDefaultClass", "class.k-actions-end": "this.actionButtonsEndClassName", "class.k-actions-stretched": "this.actionButtonsStretchedClassName", "class.k-actions-start": "this.actionButtonsStartClassName", "class.k-actions-center": "this.actionButtonsCenterClassName" } }, viewQueries: [{ propertyName: "clearButton", first: true, predicate: ["clearButton"], descendants: true, static: true }, { propertyName: "uploadButton", first: true, predicate: ["uploadButton"], descendants: true, static: true }], ngImport: i0, template: `
1890
2026
  <button #clearButton role="button" class="k-button k-button-md k-rounded-md k-button-solid k-button-solid-base k-clear-selected"
1891
2027
  (click)="onClearButtonClick($event)">
1892
2028
  {{textFor('clearSelectedFiles')}}
@@ -1897,7 +2033,8 @@ UploadActionButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14
1897
2033
  {{textFor('uploadSelectedFiles')}}
1898
2034
  </button>
1899
2035
  `, isInline: true });
1900
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadActionButtonsComponent, decorators: [{
2036
+ }
2037
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadActionButtonsComponent, decorators: [{
1901
2038
  type: Component,
1902
2039
  args: [{
1903
2040
  selector: 'kendo-upload-action-buttons',
@@ -1945,11 +2082,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1945
2082
  * @hidden
1946
2083
  */
1947
2084
  class FileListItemDirective {
2085
+ navigationService;
2086
+ uploadService;
2087
+ files;
2088
+ index;
2089
+ fileClass = true;
2090
+ focused = false;
2091
+ element;
1948
2092
  constructor(el, navigationService, uploadService) {
1949
2093
  this.navigationService = navigationService;
1950
2094
  this.uploadService = uploadService;
1951
- this.fileClass = true;
1952
- this.focused = false;
1953
2095
  this.element = el;
1954
2096
  }
1955
2097
  focus() {
@@ -1992,10 +2134,10 @@ class FileListItemDirective {
1992
2134
  this.navigationService.focusedIndex = this.navigationService.focusedFileIndex = this.index;
1993
2135
  }
1994
2136
  }
2137
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileListItemDirective, deps: [{ token: i0.ElementRef }, { token: NavigationService }, { token: UploadService }], target: i0.ɵɵFactoryTarget.Directive });
2138
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: FileListItemDirective, isStandalone: true, selector: "[kendoUploadFileListItem]", inputs: { files: "files", index: "index" }, host: { listeners: { "focus": "onFocus()", "blur": "onBlur()", "click": "onClick($event)" }, properties: { "class.k-file": "this.fileClass", "attr.data-uid": "this.uidAttribute", "attr.tabIndex": "this.tabIndex", "class.k-file-error": "this.kFileError", "class.k-file-invalid": "this.kFileInvalid", "class.k-file-progress": "this.kFileProgress", "class.k-file-success": "this.kFileSuccess", "class.k-focus": "this.kStateFocused" } }, ngImport: i0 });
1995
2139
  }
1996
- FileListItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileListItemDirective, deps: [{ token: i0.ElementRef }, { token: NavigationService }, { token: UploadService }], target: i0.ɵɵFactoryTarget.Directive });
1997
- FileListItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FileListItemDirective, isStandalone: true, selector: "[kendoUploadFileListItem]", inputs: { files: "files", index: "index" }, host: { listeners: { "focus": "onFocus()", "blur": "onBlur()", "click": "onClick($event)" }, properties: { "class.k-file": "this.fileClass", "attr.data-uid": "this.uidAttribute", "attr.tabIndex": "this.tabIndex", "class.k-file-error": "this.kFileError", "class.k-file-invalid": "this.kFileInvalid", "class.k-file-progress": "this.kFileProgress", "class.k-file-success": "this.kFileSuccess", "class.k-focus": "this.kStateFocused" } }, ngImport: i0 });
1998
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileListItemDirective, decorators: [{
2140
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileListItemDirective, decorators: [{
1999
2141
  type: Directive,
2000
2142
  args: [{
2001
2143
  selector: '[kendoUploadFileListItem]',
@@ -2044,9 +2186,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2044
2186
  * @hidden
2045
2187
  */
2046
2188
  class FileListItemBase {
2189
+ uploadService;
2190
+ progressComplete = 0;
2191
+ localization;
2192
+ uploadProgressSubscription;
2047
2193
  constructor(uploadService) {
2048
2194
  this.uploadService = uploadService;
2049
- this.progressComplete = 0;
2050
2195
  }
2051
2196
  subscribeUploadProgress(uploadProgressHandler) {
2052
2197
  this.uploadProgressSubscription = this.uploadService.uploadProgressEvent.subscribe(uploadProgressHandler);
@@ -2073,10 +2218,10 @@ class FileListItemBase {
2073
2218
  textFor(key) {
2074
2219
  return this.localization.get(key);
2075
2220
  }
2221
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileListItemBase, deps: [{ token: UploadService }], target: i0.ɵɵFactoryTarget.Component });
2222
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FileListItemBase, selector: "ng-component", ngImport: i0, template: '', isInline: true });
2076
2223
  }
2077
- FileListItemBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileListItemBase, deps: [{ token: UploadService }], target: i0.ɵɵFactoryTarget.Component });
2078
- FileListItemBase.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FileListItemBase, selector: "ng-component", ngImport: i0, template: '', isInline: true });
2079
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileListItemBase, decorators: [{
2224
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileListItemBase, decorators: [{
2080
2225
  type: Component,
2081
2226
  args: [{ template: '' }]
2082
2227
  }], ctorParameters: function () { return [{ type: UploadService }]; } });
@@ -2085,15 +2230,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2085
2230
  * @hidden
2086
2231
  */
2087
2232
  class FileListItemActionButtonComponent {
2233
+ uploadService;
2234
+ localization;
2235
+ navigation;
2236
+ file;
2237
+ disabled;
2238
+ progress;
2239
+ retrySVGIcon = arrowRotateCwSmallIcon;
2240
+ playSVGIcon = playSmIcon;
2241
+ pauseSVGIcon = pauseSmIcon;
2242
+ cancelSVGIcon = cancelIcon;
2243
+ deleteSVGIcon = xIcon;
2088
2244
  constructor(uploadService, localization, navigation) {
2089
2245
  this.uploadService = uploadService;
2090
2246
  this.localization = localization;
2091
2247
  this.navigation = navigation;
2092
- this.retrySVGIcon = arrowRotateCwSmallIcon;
2093
- this.playSVGIcon = playSmIcon;
2094
- this.pauseSVGIcon = pauseSmIcon;
2095
- this.cancelSVGIcon = cancelIcon;
2096
- this.deleteSVGIcon = xIcon;
2097
2248
  }
2098
2249
  onRetryClick() {
2099
2250
  if (this.disabled) {
@@ -2164,9 +2315,8 @@ class FileListItemActionButtonComponent {
2164
2315
  }
2165
2316
  return true;
2166
2317
  }
2167
- }
2168
- FileListItemActionButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileListItemActionButtonComponent, deps: [{ token: UploadService }, { token: i1$1.LocalizationService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
2169
- FileListItemActionButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FileListItemActionButtonComponent, isStandalone: true, selector: "kendo-upload-file-list-item-action-button", inputs: { file: "file", disabled: "disabled", progress: "progress" }, ngImport: i0, template: `
2318
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileListItemActionButtonComponent, deps: [{ token: UploadService }, { token: i1$1.LocalizationService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
2319
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FileListItemActionButtonComponent, isStandalone: true, selector: "kendo-upload-file-list-item-action-button", inputs: { file: "file", disabled: "disabled", progress: "progress" }, ngImport: i0, template: `
2170
2320
  <span class="k-upload-actions">
2171
2321
  <span class="k-upload-pct" *ngIf="isUploading || isPaused">{{progress}}%</span>
2172
2322
 
@@ -2215,8 +2365,9 @@ FileListItemActionButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion
2215
2365
  (click)="onRemoveCancelClick($event)"
2216
2366
  ></button>
2217
2367
  </span>
2218
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }] });
2219
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileListItemActionButtonComponent, decorators: [{
2368
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }] });
2369
+ }
2370
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileListItemActionButtonComponent, decorators: [{
2220
2371
  type: Component,
2221
2372
  args: [{
2222
2373
  selector: 'kendo-upload-file-list-item-action-button',
@@ -2285,10 +2436,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2285
2436
  * @hidden
2286
2437
  */
2287
2438
  class FileListMultipleItemsComponent extends FileListItemBase {
2439
+ localization;
2440
+ disabled;
2441
+ files;
2442
+ fileInfoTemplate;
2443
+ filesHaveErrors;
2444
+ copySVGIcon = copyIcon;
2288
2445
  constructor(localization, uploadService) {
2289
2446
  super(uploadService);
2290
2447
  this.localization = localization;
2291
- this.copySVGIcon = copyIcon;
2292
2448
  this.subscribeUploadProgress((args) => {
2293
2449
  if (args.files[0].uid === this.files[0].uid) {
2294
2450
  this.progressComplete = args.percentComplete;
@@ -2326,9 +2482,8 @@ class FileListMultipleItemsComponent extends FileListItemBase {
2326
2482
  get isUploadFailed() {
2327
2483
  return this.files[0].state === FileState.Failed;
2328
2484
  }
2329
- }
2330
- FileListMultipleItemsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileListMultipleItemsComponent, deps: [{ token: i1$1.LocalizationService }, { token: UploadService }], target: i0.ɵɵFactoryTarget.Component });
2331
- FileListMultipleItemsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FileListMultipleItemsComponent, isStandalone: true, selector: "kendo-upload-file-list-multiple-items", inputs: { disabled: "disabled", files: "files", fileInfoTemplate: "fileInfoTemplate" }, usesInheritance: true, ngImport: i0, template: `
2485
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileListMultipleItemsComponent, deps: [{ token: i1$1.LocalizationService }, { token: UploadService }], target: i0.ɵɵFactoryTarget.Component });
2486
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FileListMultipleItemsComponent, isStandalone: true, selector: "kendo-upload-file-list-multiple-items", inputs: { disabled: "disabled", files: "files", fileInfoTemplate: "fileInfoTemplate" }, usesInheritance: true, ngImport: i0, template: `
2332
2487
  <kendo-progressbar
2333
2488
  [@progressState]="showProgress"
2334
2489
  [value]="progressComplete"
@@ -2374,15 +2529,16 @@ FileListMultipleItemsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
2374
2529
  [progress]='progressComplete'>
2375
2530
  </kendo-upload-file-list-item-action-button>
2376
2531
  `, isInline: true, dependencies: [{ kind: "component", type: ProgressBarComponent, selector: "kendo-progressbar", inputs: ["label", "progressCssStyle", "progressCssClass", "emptyCssStyle", "emptyCssClass", "animation"], outputs: ["animationEnd"], exportAs: ["kendoProgressBar"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: FileListItemActionButtonComponent, selector: "kendo-upload-file-list-item-action-button", inputs: ["file", "disabled", "progress"] }], animations: [
2377
- trigger('progressState', [
2378
- state('active', style({ opacity: 1 })),
2379
- state('inactive', style({ opacity: 0 })),
2380
- transition('void => active', style({ opacity: 0 })),
2381
- transition('inactive => active', style({ opacity: 1 })),
2382
- transition('active => inactive', animate('1s 2s ease-out'))
2383
- ])
2384
- ] });
2385
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileListMultipleItemsComponent, decorators: [{
2532
+ trigger('progressState', [
2533
+ state('active', style({ opacity: 1 })),
2534
+ state('inactive', style({ opacity: 0 })),
2535
+ transition('void => active', style({ opacity: 0 })),
2536
+ transition('inactive => active', style({ opacity: 1 })),
2537
+ transition('active => inactive', animate('1s 2s ease-out'))
2538
+ ])
2539
+ ] });
2540
+ }
2541
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileListMultipleItemsComponent, decorators: [{
2386
2542
  type: Component,
2387
2543
  args: [{
2388
2544
  animations: [
@@ -2456,6 +2612,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2456
2612
  * @hidden
2457
2613
  */
2458
2614
  class FileListSingleItemComponent extends FileListItemBase {
2615
+ localization;
2616
+ disabled;
2617
+ file;
2618
+ fileInfoTemplate;
2459
2619
  constructor(localization, uploadService) {
2460
2620
  super(uploadService);
2461
2621
  this.localization = localization;
@@ -2505,9 +2665,8 @@ class FileListSingleItemComponent extends FileListItemBase {
2505
2665
  get isNotYetUploaded() {
2506
2666
  return !this.isUploadFailed && !this.isUploadSuccessful;
2507
2667
  }
2508
- }
2509
- FileListSingleItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileListSingleItemComponent, deps: [{ token: i1$1.LocalizationService }, { token: UploadService }], target: i0.ɵɵFactoryTarget.Component });
2510
- FileListSingleItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FileListSingleItemComponent, isStandalone: true, selector: "kendo-upload-file-list-single-item", inputs: { disabled: "disabled", file: "file", fileInfoTemplate: "fileInfoTemplate" }, usesInheritance: true, ngImport: i0, template: `
2668
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileListSingleItemComponent, deps: [{ token: i1$1.LocalizationService }, { token: UploadService }], target: i0.ɵɵFactoryTarget.Component });
2669
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FileListSingleItemComponent, isStandalone: true, selector: "kendo-upload-file-list-single-item", inputs: { disabled: "disabled", file: "file", fileInfoTemplate: "fileInfoTemplate" }, usesInheritance: true, ngImport: i0, template: `
2511
2670
  <kendo-progressbar
2512
2671
  [@progressState]="showProgress"
2513
2672
  [value]="progressComplete"
@@ -2545,15 +2704,16 @@ FileListSingleItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.
2545
2704
  [progress]='progressComplete'>
2546
2705
  </kendo-upload-file-list-item-action-button>
2547
2706
  `, isInline: true, dependencies: [{ kind: "component", type: ProgressBarComponent, selector: "kendo-progressbar", inputs: ["label", "progressCssStyle", "progressCssClass", "emptyCssStyle", "emptyCssClass", "animation"], outputs: ["animationEnd"], exportAs: ["kendoProgressBar"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: FileListItemActionButtonComponent, selector: "kendo-upload-file-list-item-action-button", inputs: ["file", "disabled", "progress"] }], animations: [
2548
- trigger('progressState', [
2549
- state('active', style({ opacity: 1 })),
2550
- state('inactive', style({ opacity: 0 })),
2551
- transition('void => active', style({ opacity: 0 })),
2552
- transition('inactive => active', style({ opacity: 1 })),
2553
- transition('active => inactive', animate('1s 2s ease-out'))
2554
- ])
2555
- ] });
2556
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileListSingleItemComponent, decorators: [{
2707
+ trigger('progressState', [
2708
+ state('active', style({ opacity: 1 })),
2709
+ state('inactive', style({ opacity: 0 })),
2710
+ transition('void => active', style({ opacity: 0 })),
2711
+ transition('inactive => active', style({ opacity: 1 })),
2712
+ transition('active => inactive', animate('1s 2s ease-out'))
2713
+ ])
2714
+ ] });
2715
+ }
2716
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileListSingleItemComponent, decorators: [{
2557
2717
  type: Component,
2558
2718
  args: [{
2559
2719
  animations: [
@@ -2620,10 +2780,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2620
2780
  * @hidden
2621
2781
  */
2622
2782
  class FileListComponent {
2783
+ uploadService;
2784
+ navigation;
2785
+ disabled;
2786
+ fileList;
2787
+ fileTemplate;
2788
+ fileInfoTemplate;
2789
+ fileListItems;
2790
+ fileListRole = 'list';
2791
+ focusSubscription;
2792
+ actionSubscription;
2623
2793
  constructor(uploadService, navigation) {
2624
2794
  this.uploadService = uploadService;
2625
2795
  this.navigation = navigation;
2626
- this.fileListRole = 'list';
2627
2796
  this.onItemFocus();
2628
2797
  this.onItemAction();
2629
2798
  }
@@ -2689,9 +2858,8 @@ class FileListComponent {
2689
2858
  this.focusSubscription.unsubscribe();
2690
2859
  this.actionSubscription.unsubscribe();
2691
2860
  }
2692
- }
2693
- FileListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileListComponent, deps: [{ token: UploadService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
2694
- FileListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FileListComponent, isStandalone: true, selector: "[kendo-upload-file-list]", inputs: { disabled: "disabled", fileList: "fileList", fileTemplate: "fileTemplate", fileInfoTemplate: "fileInfoTemplate" }, host: { properties: { "attr.role": "this.fileListRole" } }, viewQueries: [{ propertyName: "fileListItems", predicate: FileListItemDirective, descendants: true }], ngImport: i0, template: `
2861
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileListComponent, deps: [{ token: UploadService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
2862
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FileListComponent, isStandalone: true, selector: "[kendo-upload-file-list]", inputs: { disabled: "disabled", fileList: "fileList", fileTemplate: "fileTemplate", fileInfoTemplate: "fileInfoTemplate" }, host: { properties: { "attr.role": "this.fileListRole" } }, viewQueries: [{ propertyName: "fileListItems", predicate: FileListItemDirective, descendants: true }], ngImport: i0, template: `
2695
2863
  <ng-template ngFor
2696
2864
  [ngForOf]="fileList"
2697
2865
  let-files
@@ -2718,7 +2886,8 @@ FileListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", vers
2718
2886
  </li>
2719
2887
  </ng-template>
2720
2888
  `, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: FileListItemDirective, selector: "[kendoUploadFileListItem]", inputs: ["files", "index"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FileListSingleItemComponent, selector: "kendo-upload-file-list-single-item", inputs: ["disabled", "file", "fileInfoTemplate"] }, { kind: "component", type: FileListMultipleItemsComponent, selector: "kendo-upload-file-list-multiple-items", inputs: ["disabled", "files", "fileInfoTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
2721
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileListComponent, decorators: [{
2889
+ }
2890
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileListComponent, decorators: [{
2722
2891
  type: Component,
2723
2892
  args: [{
2724
2893
  selector: '[kendo-upload-file-list]',
@@ -2772,12 +2941,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2772
2941
  * @hidden
2773
2942
  */
2774
2943
  class UploadStatusTotalComponent {
2944
+ localization;
2945
+ fileList;
2946
+ isFailed;
2947
+ isPaused;
2948
+ isUploading;
2949
+ statusText;
2950
+ checkmarkIcon = checkIcon;
2951
+ exceptionSVGIcon = exclamationCircleIcon;
2952
+ uploadSVGIcon = uploadIcon;
2953
+ pauseSVGIcon = pauseSmIcon;
2775
2954
  constructor(localization) {
2776
2955
  this.localization = localization;
2777
- this.checkmarkIcon = checkIcon;
2778
- this.exceptionSVGIcon = exclamationCircleIcon;
2779
- this.uploadSVGIcon = uploadIcon;
2780
- this.pauseSVGIcon = pauseSmIcon;
2781
2956
  }
2782
2957
  get iconClass() {
2783
2958
  if (!this.isUploading && !this.isFailed) {
@@ -2819,9 +2994,8 @@ class UploadStatusTotalComponent {
2819
2994
  : this.localization.get('headerStatusUploaded');
2820
2995
  }
2821
2996
  }
2822
- }
2823
- UploadStatusTotalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadStatusTotalComponent, deps: [{ token: i1$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
2824
- UploadStatusTotalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: UploadStatusTotalComponent, isStandalone: true, selector: "kendo-upload-status-total", inputs: { fileList: "fileList" }, ngImport: i0, template: `
2997
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadStatusTotalComponent, deps: [{ token: i1$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
2998
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: UploadStatusTotalComponent, isStandalone: true, selector: "kendo-upload-status-total", inputs: { fileList: "fileList" }, ngImport: i0, template: `
2825
2999
  <kendo-icon-wrapper
2826
3000
  [name]="iconClass"
2827
3001
  [svgIcon]="SVGIconClass"
@@ -2829,7 +3003,8 @@ UploadStatusTotalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0
2829
3003
  </kendo-icon-wrapper>
2830
3004
  {{statusText}}
2831
3005
  `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
2832
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadStatusTotalComponent, decorators: [{
3006
+ }
3007
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadStatusTotalComponent, decorators: [{
2833
3008
  type: Component,
2834
3009
  args: [{
2835
3010
  selector: 'kendo-upload-status-total',
@@ -2852,16 +3027,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2852
3027
  * @hidden
2853
3028
  */
2854
3029
  class FileSelectDirective {
3030
+ uploadService;
3031
+ navigation;
3032
+ dir;
3033
+ disabled;
3034
+ multiple;
3035
+ restrictions;
3036
+ accept;
3037
+ required;
3038
+ type = "file";
3039
+ autocomplete = "off";
3040
+ tabIndex = -1;
3041
+ ariaHidden = true;
3042
+ element;
2855
3043
  constructor(uploadService, navigation, el) {
2856
3044
  this.uploadService = uploadService;
2857
3045
  this.navigation = navigation;
2858
- this.type = "file";
2859
- this.autocomplete = "off";
2860
- this.tabIndex = -1;
2861
- this.ariaHidden = true;
2862
- this.classNames = true;
2863
3046
  this.element = el;
2864
3047
  }
3048
+ classNames = true;
2865
3049
  get nameAttribute() {
2866
3050
  return this.uploadService.async.saveField;
2867
3051
  }
@@ -2905,10 +3089,10 @@ class FileSelectDirective {
2905
3089
  this.navigation.focusedIndex = -1;
2906
3090
  });
2907
3091
  }
3092
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileSelectDirective, deps: [{ token: UploadService }, { token: NavigationService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
3093
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: FileSelectDirective, isStandalone: true, selector: "[kendoFileSelect]", inputs: { dir: "dir", disabled: "disabled", multiple: "multiple", restrictions: "restrictions", accept: "accept", required: "required" }, host: { listeners: { "change": "onInputChange($event)" }, properties: { "attr.type": "this.type", "attr.autocomplete": "this.autocomplete", "attr.tabindex": "this.tabIndex", "attr.aria-hidden": "this.ariaHidden", "class.k-hidden": "this.classNames", "attr.name": "this.nameAttribute", "attr.multiple": "this.multipleAttribute", "attr.dir": "this.dirAttribute", "attr.disabled": "this.disabledAttribute", "attr.accept": "this.acceptAttribute", "attr.required": "this.requiredAttribute" } }, ngImport: i0 });
2908
3094
  }
2909
- FileSelectDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileSelectDirective, deps: [{ token: UploadService }, { token: NavigationService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
2910
- FileSelectDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FileSelectDirective, isStandalone: true, selector: "[kendoFileSelect]", inputs: { dir: "dir", disabled: "disabled", multiple: "multiple", restrictions: "restrictions", accept: "accept", required: "required" }, host: { listeners: { "change": "onInputChange($event)" }, properties: { "attr.type": "this.type", "attr.autocomplete": "this.autocomplete", "attr.tabindex": "this.tabIndex", "attr.aria-hidden": "this.ariaHidden", "class.k-hidden": "this.classNames", "attr.name": "this.nameAttribute", "attr.multiple": "this.multipleAttribute", "attr.dir": "this.dirAttribute", "attr.disabled": "this.disabledAttribute", "attr.accept": "this.acceptAttribute", "attr.required": "this.requiredAttribute" } }, ngImport: i0 });
2911
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileSelectDirective, decorators: [{
3095
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileSelectDirective, decorators: [{
2912
3096
  type: Directive,
2913
3097
  args: [{
2914
3098
  selector: '[kendoFileSelect]',
@@ -2968,12 +3152,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2968
3152
  * @hidden
2969
3153
  */
2970
3154
  class DropZoneBase {
2971
- constructor(element, renderer, cssClass) {
2972
- this.element = element;
2973
- this.renderer = renderer;
2974
- this.hideIntervalElement = null;
2975
- this.hoverClass = cssClass;
2976
- }
3155
+ element;
3156
+ renderer;
3157
+ hoverClass;
3158
+ lastDragElement;
3159
+ hideIntervalElement = null;
2977
3160
  /**
2978
3161
  * @hidden
2979
3162
  */
@@ -2999,6 +3182,11 @@ class DropZoneBase {
2999
3182
  this.lastDragElement = new Date();
3000
3183
  return false;
3001
3184
  }
3185
+ constructor(element, renderer, cssClass) {
3186
+ this.element = element;
3187
+ this.renderer = renderer;
3188
+ this.hoverClass = cssClass;
3189
+ }
3002
3190
  calculateTimeDiff(prevEvent) {
3003
3191
  return new Date().getTime() - prevEvent.getTime();
3004
3192
  }
@@ -3008,10 +3196,10 @@ class DropZoneBase {
3008
3196
  removeClass(className) {
3009
3197
  this.renderer.removeClass(this.element.nativeElement, className);
3010
3198
  }
3199
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropZoneBase, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: 'hoverClass' }], target: i0.ɵɵFactoryTarget.Directive });
3200
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DropZoneBase, host: { listeners: { "dragenter": "onElementDragEnterListener()", "dragover": "onElementDragOverListener()" } }, ngImport: i0 });
3011
3201
  }
3012
- DropZoneBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DropZoneBase, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: 'hoverClass' }], target: i0.ɵɵFactoryTarget.Directive });
3013
- DropZoneBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: DropZoneBase, host: { listeners: { "dragenter": "onElementDragEnterListener()", "dragover": "onElementDragOverListener()" } }, ngImport: i0 });
3014
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DropZoneBase, decorators: [{
3202
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropZoneBase, decorators: [{
3015
3203
  type: Directive
3016
3204
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
3017
3205
  type: Inject,
@@ -3028,13 +3216,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
3028
3216
  * @hidden
3029
3217
  */
3030
3218
  class DropZoneInternalDirective extends DropZoneBase {
3219
+ ngZone;
3220
+ uploadService;
3221
+ disabled;
3222
+ multiple;
3223
+ restrictions;
3224
+ initialClassName = true;
3225
+ unsubscribeDocumentDragEnter;
3226
+ unsubscribeDocumentDragOver;
3227
+ lastDragDocument;
3228
+ hideIntervalDocument = null;
3229
+ activeClass = 'k-dropzone-active';
3031
3230
  constructor(element, renderer, ngZone, uploadService) {
3032
3231
  super(element, renderer, 'k-hover');
3033
3232
  this.ngZone = ngZone;
3034
3233
  this.uploadService = uploadService;
3035
- this.initialClassName = true;
3036
- this.hideIntervalDocument = null;
3037
- this.activeClass = 'k-dropzone-active';
3038
3234
  this.ngZone.runOutsideAngular(() => {
3039
3235
  this.unsubscribeDocumentDragEnter = this.renderer.listen('document', 'dragenter', () => this.onDocumentDragEnter());
3040
3236
  this.unsubscribeDocumentDragOver = this.renderer.listen('document', 'dragover', () => this.onDocumentDragOver());
@@ -3086,10 +3282,10 @@ class DropZoneInternalDirective extends DropZoneBase {
3086
3282
  }
3087
3283
  return false;
3088
3284
  }
3285
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropZoneInternalDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: UploadService }], target: i0.ɵɵFactoryTarget.Directive });
3286
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DropZoneInternalDirective, isStandalone: true, selector: "\n [kendoUploadInternalDropZone],\n [kendoFileSelectInternalDropZone]\n ", inputs: { disabled: "disabled", multiple: "multiple", restrictions: "restrictions" }, host: { listeners: { "drop": "onDropListener($event)" }, properties: { "class.k-dropzone": "this.initialClassName", "class.k-upload-dropzone": "this.initialClassName" } }, usesInheritance: true, ngImport: i0 });
3089
3287
  }
3090
- DropZoneInternalDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DropZoneInternalDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: UploadService }], target: i0.ɵɵFactoryTarget.Directive });
3091
- DropZoneInternalDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: DropZoneInternalDirective, isStandalone: true, selector: "\n [kendoUploadInternalDropZone],\n [kendoFileSelectInternalDropZone]\n ", inputs: { disabled: "disabled", multiple: "multiple", restrictions: "restrictions" }, host: { listeners: { "drop": "onDropListener($event)" }, properties: { "class.k-dropzone": "this.initialClassName", "class.k-upload-dropzone": "this.initialClassName" } }, usesInheritance: true, ngImport: i0 });
3092
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DropZoneInternalDirective, decorators: [{
3288
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropZoneInternalDirective, decorators: [{
3093
3289
  type: Directive,
3094
3290
  args: [{
3095
3291
  selector: `
@@ -3119,10 +3315,94 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
3119
3315
  * @hidden
3120
3316
  */
3121
3317
  class Messages extends ComponentMessages {
3318
+ /**
3319
+ * Sets the text for the **Cancel** button.
3320
+ */
3321
+ cancel;
3322
+ /**
3323
+ * Sets the text for the **Clear** button.
3324
+ */
3325
+ clearSelectedFiles;
3326
+ /**
3327
+ * Sets the drop-zone hint.
3328
+ */
3329
+ dropFilesHere;
3330
+ /**
3331
+ * Sets the external drop-zone hint.
3332
+ */
3333
+ externalDropFilesHere;
3334
+ /**
3335
+ * Sets the status message for a batch of files.
3336
+ */
3337
+ filesBatchStatus;
3338
+ /**
3339
+ * Sets the status message for a batch of files after failed upload.
3340
+ */
3341
+ filesBatchStatusFailed;
3342
+ /**
3343
+ * Sets the status message for a batch of files after successful upload.
3344
+ */
3345
+ filesBatchStatusUploaded;
3346
+ /**
3347
+ * Sets the file status message after failed upload.
3348
+ */
3349
+ fileStatusFailed;
3350
+ /**
3351
+ * Sets the file status message after successful upload.
3352
+ */
3353
+ fileStatusUploaded;
3354
+ /**
3355
+ * Sets the header status message when the file upload is paused.
3356
+ */
3357
+ headerStatusPaused;
3358
+ /**
3359
+ * Sets the header status message after the file upload completes.
3360
+ */
3361
+ headerStatusUploaded;
3362
+ /**
3363
+ * Sets the header status message during the upload of the file.
3364
+ */
3365
+ headerStatusUploading;
3366
+ /**
3367
+ * Sets the text for the invalid `allowedExtensions` restriction message.
3368
+ */
3369
+ invalidFileExtension;
3370
+ /**
3371
+ * Sets the text for the invalid `maxFileSize` restriction message.
3372
+ */
3373
+ invalidMaxFileSize;
3374
+ /**
3375
+ * Sets the text for the invalid `minFileSize` restriction message.
3376
+ */
3377
+ invalidMinFileSize;
3378
+ /**
3379
+ * Sets the text for the **Pause** button.
3380
+ */
3381
+ pause;
3382
+ /**
3383
+ * Sets the text for the **Remove** button.
3384
+ */
3385
+ remove;
3386
+ /**
3387
+ * Sets the text for the **Resume** button.
3388
+ */
3389
+ resume;
3390
+ /**
3391
+ * Sets the text for the **Retry** button.
3392
+ */
3393
+ retry;
3394
+ /**
3395
+ * Sets the text for the **Select** button.
3396
+ */
3397
+ select;
3398
+ /**
3399
+ * Sets the text for the **Upload files** button.
3400
+ */
3401
+ uploadSelectedFiles;
3402
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: Messages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
3403
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: Messages, inputs: { cancel: "cancel", clearSelectedFiles: "clearSelectedFiles", dropFilesHere: "dropFilesHere", externalDropFilesHere: "externalDropFilesHere", filesBatchStatus: "filesBatchStatus", filesBatchStatusFailed: "filesBatchStatusFailed", filesBatchStatusUploaded: "filesBatchStatusUploaded", fileStatusFailed: "fileStatusFailed", fileStatusUploaded: "fileStatusUploaded", headerStatusPaused: "headerStatusPaused", headerStatusUploaded: "headerStatusUploaded", headerStatusUploading: "headerStatusUploading", invalidFileExtension: "invalidFileExtension", invalidMaxFileSize: "invalidMaxFileSize", invalidMinFileSize: "invalidMinFileSize", pause: "pause", remove: "remove", resume: "resume", retry: "retry", select: "select", uploadSelectedFiles: "uploadSelectedFiles" }, usesInheritance: true, ngImport: i0 });
3122
3404
  }
3123
- Messages.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: Messages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
3124
- Messages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: Messages, inputs: { cancel: "cancel", clearSelectedFiles: "clearSelectedFiles", dropFilesHere: "dropFilesHere", externalDropFilesHere: "externalDropFilesHere", filesBatchStatus: "filesBatchStatus", filesBatchStatusFailed: "filesBatchStatusFailed", filesBatchStatusUploaded: "filesBatchStatusUploaded", fileStatusFailed: "fileStatusFailed", fileStatusUploaded: "fileStatusUploaded", headerStatusPaused: "headerStatusPaused", headerStatusUploaded: "headerStatusUploaded", headerStatusUploading: "headerStatusUploading", invalidFileExtension: "invalidFileExtension", invalidMaxFileSize: "invalidMaxFileSize", invalidMinFileSize: "invalidMinFileSize", pause: "pause", remove: "remove", resume: "resume", retry: "retry", select: "select", uploadSelectedFiles: "uploadSelectedFiles" }, usesInheritance: true, ngImport: i0 });
3125
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: Messages, decorators: [{
3405
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: Messages, decorators: [{
3126
3406
  type: Directive
3127
3407
  }], propDecorators: { cancel: [{
3128
3408
  type: Input
@@ -3172,19 +3452,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
3172
3452
  * @hidden
3173
3453
  */
3174
3454
  class LocalizedMessagesDirective extends Messages {
3455
+ service;
3175
3456
  constructor(service) {
3176
3457
  super();
3177
3458
  this.service = service;
3178
3459
  }
3460
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LocalizedMessagesDirective, deps: [{ token: i1$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
3461
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: LocalizedMessagesDirective, isStandalone: true, selector: "\n [kendoUploadLocalizedMessages],\n [kendoFileSelectLocalizedMessages],\n [kendoUploadDropZoneLocalizedMessages]\n ", providers: [
3462
+ {
3463
+ provide: Messages,
3464
+ useExisting: forwardRef(() => LocalizedMessagesDirective)
3465
+ }
3466
+ ], usesInheritance: true, ngImport: i0 });
3179
3467
  }
3180
- LocalizedMessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LocalizedMessagesDirective, deps: [{ token: i1$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
3181
- LocalizedMessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: LocalizedMessagesDirective, isStandalone: true, selector: "\n [kendoUploadLocalizedMessages],\n [kendoFileSelectLocalizedMessages],\n [kendoUploadDropZoneLocalizedMessages]\n ", providers: [
3182
- {
3183
- provide: Messages,
3184
- useExisting: forwardRef(() => LocalizedMessagesDirective)
3185
- }
3186
- ], usesInheritance: true, ngImport: i0 });
3187
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LocalizedMessagesDirective, decorators: [{
3468
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LocalizedMessagesDirective, decorators: [{
3188
3469
  type: Directive,
3189
3470
  args: [{
3190
3471
  providers: [
@@ -3217,83 +3498,14 @@ let idx$1 = 0;
3217
3498
  * Represents the [Kendo UI Upload component for Angular]({% slug overview_upload %}).
3218
3499
  */
3219
3500
  class UploadComponent extends UploadFileSelectBase {
3220
- constructor(uploadService, localization, navigation, dropZoneService, zone, renderer, cdr, wrapper, injector) {
3221
- super(uploadService, navigation, cdr, injector, zone);
3222
- this.uploadService = uploadService;
3223
- this.localization = localization;
3224
- this.navigation = navigation;
3225
- this.dropZoneService = dropZoneService;
3226
- this.zone = zone;
3227
- this.renderer = renderer;
3228
- this.cdr = cdr;
3229
- this.injector = injector;
3230
- /**
3231
- * Enables the chunk functionality of the Upload.
3232
- *
3233
- * @default false
3234
- */
3235
- this.chunkable = false;
3236
- /**
3237
- * Toggles the visibility of the file list.
3238
- * @default true
3239
- */
3240
- this.showFileList = true;
3241
- /**
3242
- * Specifies the possible layout of the action buttons.
3243
- */
3244
- this.actionsLayout = 'end';
3245
- /**
3246
- * Fires when the upload is canceled while in progress.
3247
- */
3248
- this.cancel = new EventEmitter();
3249
- /**
3250
- * Fires when the file list is about to be cleared. If prevented, the files will not be cleared.
3251
- */
3252
- this.clear = new EventEmitter();
3253
- /**
3254
- * Fires when all active uploads are completed either successfully or with errors.
3255
- */
3256
- this.complete = new EventEmitter();
3257
- /**
3258
- * Fires when an `upload` or `remove` operation has failed.
3259
- */
3260
- this.error = new EventEmitter();
3261
- /**
3262
- * Fires when the upload of a file has been paused.
3263
- */
3264
- this.pause = new EventEmitter();
3265
- /**
3266
- * Fires when the upload of a file has been resumed.
3267
- */
3268
- this.resume = new EventEmitter();
3269
- /**
3270
- * Fires when an `upload` or `remove` operation is successfully completed.
3271
- */
3272
- this.success = new EventEmitter();
3273
- /**
3274
- * Fires when one or more files are about to be uploaded. If prevented, the files will neither be uploaded, nor added to the file list.
3275
- */
3276
- this.upload = new EventEmitter();
3277
- /**
3278
- * Fires when one or more files are being uploaded.
3279
- */
3280
- this.uploadProgress = new EventEmitter();
3281
- /**
3282
- * Fires when the value of the component has changed as a result of a successful `upload`, `remove` or `clear` operation.
3283
- */
3284
- this.valueChange = new EventEmitter();
3285
- validatePackage(packageMetadata);
3286
- this.fileList = this.uploadService.files;
3287
- this.localizationChangeSubscription = localization.changes.subscribe(({ rtl }) => {
3288
- this.direction = rtl ? 'rtl' : 'ltr';
3289
- });
3290
- this.direction = localization.rtl ? 'rtl' : 'ltr';
3291
- this.navigation.computeKeys();
3292
- this.wrapper = wrapper.nativeElement;
3293
- this.subscribeBlur();
3294
- this.subscribeFocus();
3295
- this.attachEventHandlers();
3296
- }
3501
+ uploadService;
3502
+ localization;
3503
+ navigation;
3504
+ dropZoneService;
3505
+ zone;
3506
+ renderer;
3507
+ cdr;
3508
+ injector;
3297
3509
  /**
3298
3510
  * By default, the selected files are immediately uploaded
3299
3511
  * ([see example]({% slug fileprocessing_upload %}#toc-automatic-upload-of-files)).
@@ -3419,6 +3631,12 @@ class UploadComponent extends UploadFileSelectBase {
3419
3631
  get removeUrl() {
3420
3632
  return this.uploadService.async.removeUrl;
3421
3633
  }
3634
+ /**
3635
+ * Enables the chunk functionality of the Upload.
3636
+ *
3637
+ * @default false
3638
+ */
3639
+ chunkable = false;
3422
3640
  /**
3423
3641
  * Specifies if the selected files are uploaded simultaneously or one by one.
3424
3642
  *
@@ -3430,6 +3648,11 @@ class UploadComponent extends UploadFileSelectBase {
3430
3648
  get concurrent() {
3431
3649
  return this.uploadService.async.concurrent;
3432
3650
  }
3651
+ /**
3652
+ * Toggles the visibility of the file list.
3653
+ * @default true
3654
+ */
3655
+ showFileList = true;
3433
3656
  /**
3434
3657
  * @hidden
3435
3658
  */
@@ -3439,9 +3662,85 @@ class UploadComponent extends UploadFileSelectBase {
3439
3662
  get tabIndex() {
3440
3663
  return this.tabindex;
3441
3664
  }
3665
+ /**
3666
+ * Specifies the possible layout of the action buttons.
3667
+ */
3668
+ actionsLayout = 'end';
3669
+ fileSelectInput;
3670
+ /**
3671
+ * Fires when the upload is canceled while in progress.
3672
+ */
3673
+ cancel = new EventEmitter();
3674
+ /**
3675
+ * Fires when the file list is about to be cleared. If prevented, the files will not be cleared.
3676
+ */
3677
+ clear = new EventEmitter();
3678
+ /**
3679
+ * Fires when all active uploads are completed either successfully or with errors.
3680
+ */
3681
+ complete = new EventEmitter();
3682
+ /**
3683
+ * Fires when an `upload` or `remove` operation has failed.
3684
+ */
3685
+ error = new EventEmitter();
3686
+ /**
3687
+ * Fires when the upload of a file has been paused.
3688
+ */
3689
+ pause = new EventEmitter();
3690
+ /**
3691
+ * Fires when the upload of a file has been resumed.
3692
+ */
3693
+ resume = new EventEmitter();
3694
+ /**
3695
+ * Fires when an `upload` or `remove` operation is successfully completed.
3696
+ */
3697
+ success = new EventEmitter();
3698
+ /**
3699
+ * Fires when one or more files are about to be uploaded. If prevented, the files will neither be uploaded, nor added to the file list.
3700
+ */
3701
+ upload = new EventEmitter();
3702
+ /**
3703
+ * Fires when one or more files are being uploaded.
3704
+ */
3705
+ uploadProgress = new EventEmitter();
3706
+ /**
3707
+ * Fires when the value of the component has changed as a result of a successful `upload`, `remove` or `clear` operation.
3708
+ */
3709
+ valueChange = new EventEmitter();
3442
3710
  get dir() {
3443
3711
  return this.direction;
3444
3712
  }
3713
+ direction;
3714
+ wrapper;
3715
+ fileListId;
3716
+ documentClick; // eslint-disable-line @typescript-eslint/ban-types
3717
+ blurSubscription;
3718
+ wrapperFocusSubscription;
3719
+ selectButtonFocusSubscription;
3720
+ localizationChangeSubscription;
3721
+ subs;
3722
+ constructor(uploadService, localization, navigation, dropZoneService, zone, renderer, cdr, wrapper, injector) {
3723
+ super(uploadService, navigation, cdr, injector, zone);
3724
+ this.uploadService = uploadService;
3725
+ this.localization = localization;
3726
+ this.navigation = navigation;
3727
+ this.dropZoneService = dropZoneService;
3728
+ this.zone = zone;
3729
+ this.renderer = renderer;
3730
+ this.cdr = cdr;
3731
+ this.injector = injector;
3732
+ validatePackage(packageMetadata);
3733
+ this.fileList = this.uploadService.files;
3734
+ this.localizationChangeSubscription = localization.changes.subscribe(({ rtl }) => {
3735
+ this.direction = rtl ? 'rtl' : 'ltr';
3736
+ });
3737
+ this.direction = localization.rtl ? 'rtl' : 'ltr';
3738
+ this.navigation.computeKeys();
3739
+ this.wrapper = wrapper.nativeElement;
3740
+ this.subscribeBlur();
3741
+ this.subscribeFocus();
3742
+ this.attachEventHandlers();
3743
+ }
3445
3744
  ngOnInit() {
3446
3745
  this.verifySettings();
3447
3746
  const { buttonId, fileListId } = this.getIds();
@@ -3696,23 +3995,22 @@ class UploadComponent extends UploadFileSelectBase {
3696
3995
  this.uploadProgress.emit(args);
3697
3996
  }));
3698
3997
  }
3699
- }
3700
- UploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadComponent, deps: [{ token: UploadService }, { token: i1$1.LocalizationService }, { token: NavigationService }, { token: DropZoneService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
3701
- UploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: UploadComponent, isStandalone: true, selector: "kendo-upload", inputs: { autoUpload: "autoUpload", batch: "batch", withCredentials: "withCredentials", saveField: "saveField", saveHeaders: "saveHeaders", saveMethod: "saveMethod", saveUrl: "saveUrl", responseType: "responseType", removeField: "removeField", removeHeaders: "removeHeaders", removeMethod: "removeMethod", removeUrl: "removeUrl", chunkable: "chunkable", concurrent: "concurrent", showFileList: "showFileList", tabIndex: "tabIndex", actionsLayout: "actionsLayout" }, outputs: { cancel: "cancel", clear: "clear", complete: "complete", error: "error", pause: "pause", resume: "resume", success: "success", upload: "upload", uploadProgress: "uploadProgress", valueChange: "valueChange" }, host: { properties: { "attr.dir": "this.dir" } }, providers: [
3702
- LocalizationService,
3703
- NavigationService,
3704
- UploadService,
3705
- DropZoneService,
3706
- UPLOAD_VALUE_ACCESSOR,
3707
- {
3708
- provide: L10N_PREFIX,
3709
- useValue: 'kendo.upload'
3710
- },
3711
- {
3712
- provide: KendoInput,
3713
- useExisting: forwardRef(() => UploadComponent)
3714
- }
3715
- ], viewQueries: [{ propertyName: "fileSelectInput", first: true, predicate: ["fileSelectInput"], descendants: true, static: true }], exportAs: ["kendoUpload"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: `
3998
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadComponent, deps: [{ token: UploadService }, { token: i1$1.LocalizationService }, { token: NavigationService }, { token: DropZoneService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
3999
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: UploadComponent, isStandalone: true, selector: "kendo-upload", inputs: { autoUpload: "autoUpload", batch: "batch", withCredentials: "withCredentials", saveField: "saveField", saveHeaders: "saveHeaders", saveMethod: "saveMethod", saveUrl: "saveUrl", responseType: "responseType", removeField: "removeField", removeHeaders: "removeHeaders", removeMethod: "removeMethod", removeUrl: "removeUrl", chunkable: "chunkable", concurrent: "concurrent", showFileList: "showFileList", tabIndex: "tabIndex", actionsLayout: "actionsLayout" }, outputs: { cancel: "cancel", clear: "clear", complete: "complete", error: "error", pause: "pause", resume: "resume", success: "success", upload: "upload", uploadProgress: "uploadProgress", valueChange: "valueChange" }, host: { properties: { "attr.dir": "this.dir" } }, providers: [
4000
+ LocalizationService,
4001
+ NavigationService,
4002
+ UploadService,
4003
+ DropZoneService,
4004
+ UPLOAD_VALUE_ACCESSOR,
4005
+ {
4006
+ provide: L10N_PREFIX,
4007
+ useValue: 'kendo.upload'
4008
+ },
4009
+ {
4010
+ provide: KendoInput,
4011
+ useExisting: forwardRef(() => UploadComponent)
4012
+ }
4013
+ ], viewQueries: [{ propertyName: "fileSelectInput", first: true, predicate: ["fileSelectInput"], descendants: true, static: true }], exportAs: ["kendoUpload"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: `
3716
4014
  <ng-container kendoUploadLocalizedMessages
3717
4015
  i18n-cancel="kendo.upload.cancel|The text for the Cancel button"
3718
4016
  cancel="Cancel"
@@ -3823,8 +4121,9 @@ UploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", versio
3823
4121
  [disabled]="disabled"
3824
4122
  [actionsLayout]="actionsLayout">
3825
4123
  </kendo-upload-action-buttons>
3826
- `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "\n [kendoUploadLocalizedMessages],\n [kendoFileSelectLocalizedMessages],\n [kendoUploadDropZoneLocalizedMessages]\n " }, { kind: "directive", type: DropZoneInternalDirective, selector: "\n [kendoUploadInternalDropZone],\n [kendoFileSelectInternalDropZone]\n ", inputs: ["disabled", "multiple", "restrictions"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: FileSelectDirective, selector: "[kendoFileSelect]", inputs: ["dir", "disabled", "multiple", "restrictions", "accept", "required"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: UploadStatusTotalComponent, selector: "kendo-upload-status-total", inputs: ["fileList"] }, { kind: "component", type: FileListComponent, selector: "[kendo-upload-file-list]", inputs: ["disabled", "fileList", "fileTemplate", "fileInfoTemplate"] }, { kind: "component", type: UploadActionButtonsComponent, selector: "kendo-upload-action-buttons", inputs: ["disabled", "actionsLayout"] }] });
3827
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadComponent, decorators: [{
4124
+ `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "\n [kendoUploadLocalizedMessages],\n [kendoFileSelectLocalizedMessages],\n [kendoUploadDropZoneLocalizedMessages]\n " }, { kind: "directive", type: DropZoneInternalDirective, selector: "\n [kendoUploadInternalDropZone],\n [kendoFileSelectInternalDropZone]\n ", inputs: ["disabled", "multiple", "restrictions"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: FileSelectDirective, selector: "[kendoFileSelect]", inputs: ["dir", "disabled", "multiple", "restrictions", "accept", "required"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: UploadStatusTotalComponent, selector: "kendo-upload-status-total", inputs: ["fileList"] }, { kind: "component", type: FileListComponent, selector: "[kendo-upload-file-list]", inputs: ["disabled", "fileList", "fileTemplate", "fileInfoTemplate"] }, { kind: "component", type: UploadActionButtonsComponent, selector: "kendo-upload-action-buttons", inputs: ["disabled", "actionsLayout"] }] });
4125
+ }
4126
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadComponent, decorators: [{
3828
4127
  type: Component,
3829
4128
  args: [{
3830
4129
  exportAs: 'kendoUpload',
@@ -4023,6 +4322,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
4023
4322
  }] } });
4024
4323
 
4025
4324
  class UploadDropZoneDirective {
4325
+ dropZoneService;
4326
+ /**
4327
+ * Specifies the id of the drop zone used to associate it with
4328
+ * an existing Upload component.
4329
+ */
4330
+ zoneId;
4331
+ /**
4332
+ * Specifies the id of the drop zone used to associate it with
4333
+ * an existing FileSelect component.
4334
+ */
4335
+ fileSelectZoneId;
4026
4336
  constructor(dropZoneService) {
4027
4337
  this.dropZoneService = dropZoneService;
4028
4338
  }
@@ -4073,12 +4383,12 @@ class UploadDropZoneDirective {
4073
4383
  const id = this.zoneId || this.fileSelectZoneId;
4074
4384
  return this.dropZoneService.getComponents(id);
4075
4385
  }
4386
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadDropZoneDirective, deps: [{ token: DropZoneService }], target: i0.ɵɵFactoryTarget.Directive });
4387
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: UploadDropZoneDirective, isStandalone: true, selector: "[kendoUploadDropZone], [kendoFileSelectDropZone]", inputs: { zoneId: ["kendoUploadDropZone", "zoneId"], fileSelectZoneId: ["kendoFileSelectDropZone", "fileSelectZoneId"] }, host: { listeners: { "dragenter": "onElementDragEnter()", "dragover": "onElementDragOver()", "drop": "onDropListener($event)" } }, providers: [
4388
+ DropZoneService
4389
+ ], ngImport: i0 });
4076
4390
  }
4077
- UploadDropZoneDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadDropZoneDirective, deps: [{ token: DropZoneService }], target: i0.ɵɵFactoryTarget.Directive });
4078
- UploadDropZoneDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: UploadDropZoneDirective, isStandalone: true, selector: "[kendoUploadDropZone], [kendoFileSelectDropZone]", inputs: { zoneId: ["kendoUploadDropZone", "zoneId"], fileSelectZoneId: ["kendoFileSelectDropZone", "fileSelectZoneId"] }, host: { listeners: { "dragenter": "onElementDragEnter()", "dragover": "onElementDragOver()", "drop": "onDropListener($event)" } }, providers: [
4079
- DropZoneService
4080
- ], ngImport: i0 });
4081
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadDropZoneDirective, decorators: [{
4391
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadDropZoneDirective, decorators: [{
4082
4392
  type: Directive,
4083
4393
  args: [{
4084
4394
  providers: [
@@ -4108,18 +4418,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
4108
4418
  * Represents the [Kendo UI UploadDropZone component for Angular]({% slug overview_upload %}).
4109
4419
  */
4110
4420
  class UploadDropZoneComponent extends DropZoneBase {
4111
- constructor(element, renderer, localization) {
4112
- super(element, renderer, 'k-external-dropzone-hover');
4113
- this.localization = localization;
4114
- this.hostClass = true;
4115
- this._svgIcon = uploadIcon;
4116
- this.localizationChangeSubscription = this.localization.changes.subscribe(({ rtl }) => {
4117
- this.direction = rtl ? 'rtl' : 'ltr';
4118
- });
4119
- }
4421
+ localization;
4422
+ hostClass = true;
4120
4423
  get dirAttribute() {
4121
4424
  return this.direction;
4122
4425
  }
4426
+ /**
4427
+ * Defines the id of the component.
4428
+ * It is used to associate it with an existing Upload or FileSelect component.
4429
+ */
4430
+ zoneId;
4431
+ /**
4432
+ * Defines the name for an existing icon in a Kendo UI theme.
4433
+ * The icon is rendered inside the DropZone.
4434
+ */
4435
+ icon;
4436
+ /**
4437
+ * Defines a CSS class or multiple classes separated by spaces,
4438
+ * which are applied to a span element.
4439
+ * Allows the usage of custom icons.
4440
+ */
4441
+ iconClass;
4123
4442
  /**
4124
4443
  * Defines an SVGIcon to be rendered inside the DropZone.
4125
4444
  * The input can take either an [existing Kendo SVG icon](slug:svgicon_list) or a custom one.
@@ -4133,6 +4452,16 @@ class UploadDropZoneComponent extends DropZoneBase {
4133
4452
  get svgIcon() {
4134
4453
  return this._svgIcon;
4135
4454
  }
4455
+ direction;
4456
+ localizationChangeSubscription;
4457
+ _svgIcon = uploadIcon;
4458
+ constructor(element, renderer, localization) {
4459
+ super(element, renderer, 'k-external-dropzone-hover');
4460
+ this.localization = localization;
4461
+ this.localizationChangeSubscription = this.localization.changes.subscribe(({ rtl }) => {
4462
+ this.direction = rtl ? 'rtl' : 'ltr';
4463
+ });
4464
+ }
4136
4465
  /**
4137
4466
  * @hidden
4138
4467
  */
@@ -4155,15 +4484,14 @@ class UploadDropZoneComponent extends DropZoneBase {
4155
4484
  this.localizationChangeSubscription.unsubscribe();
4156
4485
  }
4157
4486
  }
4158
- }
4159
- UploadDropZoneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadDropZoneComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
4160
- UploadDropZoneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: UploadDropZoneComponent, isStandalone: true, selector: "kendo-uploaddropzone", inputs: { zoneId: "zoneId", icon: "icon", iconClass: "iconClass", svgIcon: "svgIcon" }, host: { properties: { "class.k-external-dropzone": "this.hostClass", "attr.dir": "this.dirAttribute" } }, providers: [
4161
- LocalizationService,
4162
- {
4163
- provide: L10N_PREFIX,
4164
- useValue: 'kendo.uploaddropzone'
4165
- }
4166
- ], exportAs: ["kendoUploadDropZone"], usesInheritance: true, ngImport: i0, template: `
4487
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadDropZoneComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
4488
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: UploadDropZoneComponent, isStandalone: true, selector: "kendo-uploaddropzone", inputs: { zoneId: "zoneId", icon: "icon", iconClass: "iconClass", svgIcon: "svgIcon" }, host: { properties: { "class.k-external-dropzone": "this.hostClass", "attr.dir": "this.dirAttribute" } }, providers: [
4489
+ LocalizationService,
4490
+ {
4491
+ provide: L10N_PREFIX,
4492
+ useValue: 'kendo.uploaddropzone'
4493
+ }
4494
+ ], exportAs: ["kendoUploadDropZone"], usesInheritance: true, ngImport: i0, template: `
4167
4495
  <ng-container kendoUploadDropZoneLocalizedMessages
4168
4496
  i18n-externalDropFilesHere='kendo.uploaddropzone.externalDropFilesHere|Sets the external drop-zone hint'
4169
4497
  externalDropFilesHere='Drag and drop files here to upload'>
@@ -4182,7 +4510,8 @@ UploadDropZoneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0"
4182
4510
  </span>
4183
4511
  </div>
4184
4512
  `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "\n [kendoUploadLocalizedMessages],\n [kendoFileSelectLocalizedMessages],\n [kendoUploadDropZoneLocalizedMessages]\n " }, { kind: "directive", type: UploadDropZoneDirective, selector: "[kendoUploadDropZone], [kendoFileSelectDropZone]", inputs: ["kendoUploadDropZone", "kendoFileSelectDropZone"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
4185
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadDropZoneComponent, decorators: [{
4513
+ }
4514
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadDropZoneComponent, decorators: [{
4186
4515
  type: Component,
4187
4516
  args: [{
4188
4517
  exportAs: 'kendoUploadDropZone',
@@ -4242,6 +4571,48 @@ const FILESELECT_VALUE_ACCESSOR = {
4242
4571
  };
4243
4572
  let idx = 0;
4244
4573
  class FileSelectComponent extends UploadFileSelectBase {
4574
+ uploadService;
4575
+ localization;
4576
+ navigation;
4577
+ dropZoneService;
4578
+ ngZone;
4579
+ renderer;
4580
+ cdr;
4581
+ injector;
4582
+ fileSelectInput;
4583
+ get dir() {
4584
+ return this.direction;
4585
+ }
4586
+ /**
4587
+ * Sets the `name` attribute of the `input` element of the FileSelect.
4588
+ */
4589
+ set name(name) {
4590
+ this.uploadService.async.saveField = name;
4591
+ }
4592
+ get name() {
4593
+ return this.uploadService.async.saveField;
4594
+ }
4595
+ /**
4596
+ * Fires when the value of the component has changed as a result of a successful `select` or `remove` operation.
4597
+ */
4598
+ valueChange = new EventEmitter();
4599
+ /**
4600
+ * @hidden
4601
+ */
4602
+ _restrictions = {
4603
+ allowedExtensions: [],
4604
+ maxFileSize: 0,
4605
+ minFileSize: 0
4606
+ };
4607
+ direction;
4608
+ wrapper;
4609
+ fileListId;
4610
+ documentClick; // eslint-disable-line @typescript-eslint/ban-types
4611
+ blurSubscription;
4612
+ wrapperFocusSubscription;
4613
+ selectButtonFocusSubscription;
4614
+ localizationChangeSubscription;
4615
+ subs;
4245
4616
  constructor(uploadService, localization, navigation, dropZoneService, ngZone, renderer, cdr, wrapper, injector) {
4246
4617
  super(uploadService, navigation, cdr, injector, ngZone);
4247
4618
  this.uploadService = uploadService;
@@ -4252,18 +4623,6 @@ class FileSelectComponent extends UploadFileSelectBase {
4252
4623
  this.renderer = renderer;
4253
4624
  this.cdr = cdr;
4254
4625
  this.injector = injector;
4255
- /**
4256
- * Fires when the value of the component has changed as a result of a successful `select` or `remove` operation.
4257
- */
4258
- this.valueChange = new EventEmitter();
4259
- /**
4260
- * @hidden
4261
- */
4262
- this._restrictions = {
4263
- allowedExtensions: [],
4264
- maxFileSize: 0,
4265
- minFileSize: 0
4266
- };
4267
4626
  validatePackage(packageMetadata);
4268
4627
  this.wrapper = wrapper.nativeElement;
4269
4628
  this.direction = localization.rtl ? 'rtl' : 'ltr';
@@ -4276,18 +4635,6 @@ class FileSelectComponent extends UploadFileSelectBase {
4276
4635
  this.attachEventHandlers();
4277
4636
  this.setDefaultSettings();
4278
4637
  }
4279
- get dir() {
4280
- return this.direction;
4281
- }
4282
- /**
4283
- * Sets the `name` attribute of the `input` element of the FileSelect.
4284
- */
4285
- set name(name) {
4286
- this.uploadService.async.saveField = name;
4287
- }
4288
- get name() {
4289
- return this.uploadService.async.saveField;
4290
- }
4291
4638
  ngOnInit() {
4292
4639
  const { buttonId, fileListId } = this.getIds();
4293
4640
  this.focusableId = buttonId;
@@ -4447,23 +4794,22 @@ class FileSelectComponent extends UploadFileSelectBase {
4447
4794
  this.uploadService.async.autoUpload = false;
4448
4795
  this.uploadService.component = 'FileSelect';
4449
4796
  }
4450
- }
4451
- FileSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileSelectComponent, deps: [{ token: UploadService }, { token: i1$1.LocalizationService }, { token: NavigationService }, { token: DropZoneService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
4452
- FileSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FileSelectComponent, isStandalone: true, selector: "kendo-fileselect", inputs: { name: "name" }, outputs: { valueChange: "valueChange" }, host: { properties: { "attr.dir": "this.dir" } }, providers: [
4453
- LocalizationService,
4454
- NavigationService,
4455
- UploadService,
4456
- DropZoneService,
4457
- FILESELECT_VALUE_ACCESSOR,
4458
- {
4459
- provide: L10N_PREFIX,
4460
- useValue: 'kendo.fileselect'
4461
- },
4462
- {
4463
- provide: KendoInput,
4464
- useExisting: forwardRef(() => FileSelectComponent)
4465
- }
4466
- ], viewQueries: [{ propertyName: "fileSelectInput", first: true, predicate: ["fileSelectInput"], descendants: true, static: true }], exportAs: ["kendoFileSelect"], usesInheritance: true, ngImport: i0, template: `
4797
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileSelectComponent, deps: [{ token: UploadService }, { token: i1$1.LocalizationService }, { token: NavigationService }, { token: DropZoneService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
4798
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FileSelectComponent, isStandalone: true, selector: "kendo-fileselect", inputs: { name: "name" }, outputs: { valueChange: "valueChange" }, host: { properties: { "attr.dir": "this.dir" } }, providers: [
4799
+ LocalizationService,
4800
+ NavigationService,
4801
+ UploadService,
4802
+ DropZoneService,
4803
+ FILESELECT_VALUE_ACCESSOR,
4804
+ {
4805
+ provide: L10N_PREFIX,
4806
+ useValue: 'kendo.fileselect'
4807
+ },
4808
+ {
4809
+ provide: KendoInput,
4810
+ useExisting: forwardRef(() => FileSelectComponent)
4811
+ }
4812
+ ], viewQueries: [{ propertyName: "fileSelectInput", first: true, predicate: ["fileSelectInput"], descendants: true, static: true }], exportAs: ["kendoFileSelect"], usesInheritance: true, ngImport: i0, template: `
4467
4813
  <ng-container kendoFileSelectLocalizedMessages
4468
4814
  i18n-dropFilesHere="kendo.fileselect.dropFilesHere|The drop zone hint"
4469
4815
  dropFilesHere="Drop files here to select"
@@ -4525,8 +4871,9 @@ FileSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
4525
4871
  [fileInfoTemplate]="fileInfoTemplate"
4526
4872
  [id]="fileListId">
4527
4873
  </ul>
4528
- `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "\n [kendoUploadLocalizedMessages],\n [kendoFileSelectLocalizedMessages],\n [kendoUploadDropZoneLocalizedMessages]\n " }, { kind: "directive", type: DropZoneInternalDirective, selector: "\n [kendoUploadInternalDropZone],\n [kendoFileSelectInternalDropZone]\n ", inputs: ["disabled", "multiple", "restrictions"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: FileSelectDirective, selector: "[kendoFileSelect]", inputs: ["dir", "disabled", "multiple", "restrictions", "accept", "required"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FileListComponent, selector: "[kendo-upload-file-list]", inputs: ["disabled", "fileList", "fileTemplate", "fileInfoTemplate"] }] });
4529
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileSelectComponent, decorators: [{
4874
+ `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "\n [kendoUploadLocalizedMessages],\n [kendoFileSelectLocalizedMessages],\n [kendoUploadDropZoneLocalizedMessages]\n " }, { kind: "directive", type: DropZoneInternalDirective, selector: "\n [kendoUploadInternalDropZone],\n [kendoFileSelectInternalDropZone]\n ", inputs: ["disabled", "multiple", "restrictions"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: FileSelectDirective, selector: "[kendoFileSelect]", inputs: ["dir", "disabled", "multiple", "restrictions", "accept", "required"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FileListComponent, selector: "[kendo-upload-file-list]", inputs: ["disabled", "fileList", "fileTemplate", "fileInfoTemplate"] }] });
4875
+ }
4876
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileSelectComponent, decorators: [{
4530
4877
  type: Component,
4531
4878
  args: [{
4532
4879
  exportAs: 'kendoFileSelect',
@@ -4638,22 +4985,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
4638
4985
  * ```
4639
4986
  */
4640
4987
  class CustomMessagesComponent extends Messages {
4988
+ service;
4989
+ get override() {
4990
+ return true;
4991
+ }
4641
4992
  constructor(service) {
4642
4993
  super();
4643
4994
  this.service = service;
4644
4995
  }
4645
- get override() {
4646
- return true;
4647
- }
4996
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CustomMessagesComponent, deps: [{ token: i1$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
4997
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CustomMessagesComponent, isStandalone: true, selector: "kendo-upload-messages, kendo-fileselect-messages, kendo-uploaddropzone-messages", providers: [
4998
+ {
4999
+ provide: Messages,
5000
+ useExisting: forwardRef(() => CustomMessagesComponent)
5001
+ }
5002
+ ], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
4648
5003
  }
4649
- CustomMessagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomMessagesComponent, deps: [{ token: i1$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
4650
- CustomMessagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomMessagesComponent, isStandalone: true, selector: "kendo-upload-messages, kendo-fileselect-messages, kendo-uploaddropzone-messages", providers: [
4651
- {
4652
- provide: Messages,
4653
- useExisting: forwardRef(() => CustomMessagesComponent)
4654
- }
4655
- ], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
4656
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomMessagesComponent, decorators: [{
5004
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CustomMessagesComponent, decorators: [{
4657
5005
  type: Component,
4658
5006
  args: [{
4659
5007
  providers: [
@@ -4705,15 +5053,15 @@ const KENDO_UPLOADS = [
4705
5053
  * Represents the [NgModule](https://angular.io/api/core/NgModule) definition for the FileSelect component.
4706
5054
  */
4707
5055
  class FileSelectModule {
5056
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5057
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: FileSelectModule, imports: [FileSelectComponent, FileTemplateDirective, FileInfoTemplateDirective, CustomMessagesComponent, UploadDropZoneDirective, UploadDropZoneComponent], exports: [FileSelectComponent, FileTemplateDirective, FileInfoTemplateDirective, CustomMessagesComponent, UploadDropZoneDirective, UploadDropZoneComponent] });
5058
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileSelectModule, providers: [
5059
+ IconsService,
5060
+ PopupService,
5061
+ ResizeBatchService
5062
+ ], imports: [FileSelectComponent, UploadDropZoneComponent] });
4708
5063
  }
4709
- FileSelectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4710
- FileSelectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: FileSelectModule, imports: [FileSelectComponent, FileTemplateDirective, FileInfoTemplateDirective, CustomMessagesComponent, UploadDropZoneDirective, UploadDropZoneComponent], exports: [FileSelectComponent, FileTemplateDirective, FileInfoTemplateDirective, CustomMessagesComponent, UploadDropZoneDirective, UploadDropZoneComponent] });
4711
- FileSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileSelectModule, providers: [
4712
- IconsService,
4713
- PopupService,
4714
- ResizeBatchService
4715
- ], imports: [FileSelectComponent, CustomMessagesComponent, UploadDropZoneComponent] });
4716
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileSelectModule, decorators: [{
5064
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileSelectModule, decorators: [{
4717
5065
  type: NgModule,
4718
5066
  args: [{
4719
5067
  exports: [...KENDO_FILESELECT],
@@ -4731,15 +5079,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
4731
5079
  * Represents the [NgModule](https://angular.io/api/core/NgModule) definition for the Upload component.
4732
5080
  */
4733
5081
  class UploadModule {
5082
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5083
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: UploadModule, imports: [UploadComponent, UploadActionButtonsComponent, UploadStatusTotalComponent, FileTemplateDirective, FileInfoTemplateDirective, CustomMessagesComponent, UploadDropZoneDirective, UploadDropZoneComponent], exports: [UploadComponent, UploadActionButtonsComponent, UploadStatusTotalComponent, FileTemplateDirective, FileInfoTemplateDirective, CustomMessagesComponent, UploadDropZoneDirective, UploadDropZoneComponent] });
5084
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadModule, providers: [
5085
+ IconsService,
5086
+ PopupService,
5087
+ ResizeBatchService
5088
+ ], imports: [UploadComponent, UploadStatusTotalComponent, UploadDropZoneComponent] });
4734
5089
  }
4735
- UploadModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4736
- UploadModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: UploadModule, imports: [UploadComponent, UploadActionButtonsComponent, UploadStatusTotalComponent, FileTemplateDirective, FileInfoTemplateDirective, CustomMessagesComponent, UploadDropZoneDirective, UploadDropZoneComponent], exports: [UploadComponent, UploadActionButtonsComponent, UploadStatusTotalComponent, FileTemplateDirective, FileInfoTemplateDirective, CustomMessagesComponent, UploadDropZoneDirective, UploadDropZoneComponent] });
4737
- UploadModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadModule, providers: [
4738
- IconsService,
4739
- PopupService,
4740
- ResizeBatchService
4741
- ], imports: [UploadComponent, UploadActionButtonsComponent, UploadStatusTotalComponent, CustomMessagesComponent, UploadDropZoneComponent] });
4742
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadModule, decorators: [{
5090
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadModule, decorators: [{
4743
5091
  type: NgModule,
4744
5092
  args: [{
4745
5093
  exports: [...KENDO_UPLOAD],
@@ -4779,15 +5127,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
4779
5127
  * ```
4780
5128
  */
4781
5129
  class UploadsModule {
5130
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5131
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: UploadsModule, imports: [FileSelectComponent, FileTemplateDirective, FileInfoTemplateDirective, CustomMessagesComponent, UploadDropZoneDirective, UploadDropZoneComponent, UploadComponent, UploadActionButtonsComponent, UploadStatusTotalComponent, FileTemplateDirective, FileInfoTemplateDirective, CustomMessagesComponent, UploadDropZoneDirective, UploadDropZoneComponent], exports: [FileSelectComponent, FileTemplateDirective, FileInfoTemplateDirective, CustomMessagesComponent, UploadDropZoneDirective, UploadDropZoneComponent, UploadComponent, UploadActionButtonsComponent, UploadStatusTotalComponent, FileTemplateDirective, FileInfoTemplateDirective, CustomMessagesComponent, UploadDropZoneDirective, UploadDropZoneComponent] });
5132
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadsModule, providers: [
5133
+ IconsService,
5134
+ PopupService,
5135
+ ResizeBatchService
5136
+ ], imports: [FileSelectComponent, UploadDropZoneComponent, UploadComponent, UploadStatusTotalComponent, UploadDropZoneComponent] });
4782
5137
  }
4783
- UploadsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4784
- UploadsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: UploadsModule, imports: [FileSelectComponent, FileTemplateDirective, FileInfoTemplateDirective, CustomMessagesComponent, UploadDropZoneDirective, UploadDropZoneComponent, UploadComponent, UploadActionButtonsComponent, UploadStatusTotalComponent, FileTemplateDirective, FileInfoTemplateDirective, CustomMessagesComponent, UploadDropZoneDirective, UploadDropZoneComponent], exports: [FileSelectComponent, FileTemplateDirective, FileInfoTemplateDirective, CustomMessagesComponent, UploadDropZoneDirective, UploadDropZoneComponent, UploadComponent, UploadActionButtonsComponent, UploadStatusTotalComponent, FileTemplateDirective, FileInfoTemplateDirective, CustomMessagesComponent, UploadDropZoneDirective, UploadDropZoneComponent] });
4785
- UploadsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadsModule, providers: [
4786
- IconsService,
4787
- PopupService,
4788
- ResizeBatchService
4789
- ], imports: [FileSelectComponent, CustomMessagesComponent, UploadDropZoneComponent, UploadComponent, UploadActionButtonsComponent, UploadStatusTotalComponent, CustomMessagesComponent, UploadDropZoneComponent] });
4790
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UploadsModule, decorators: [{
5138
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UploadsModule, decorators: [{
4791
5139
  type: NgModule,
4792
5140
  args: [{
4793
5141
  exports: [...KENDO_UPLOADS],