@progress/kendo-angular-upload 21.1.1-develop.2 → 21.2.0-develop.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -22,7 +22,6 @@ import { UploadFileSelectBase } from './common/base';
22
22
  import { UploadActionButtonsComponent } from './rendering/upload-action-buttons.component';
23
23
  import { FileListComponent } from './rendering/file-list.component';
24
24
  import { UploadStatusTotalComponent } from './rendering/upload-status-total.component';
25
- import { NgIf } from '@angular/common';
26
25
  import { FileSelectDirective } from './file-select.directive';
27
26
  import { ButtonComponent } from '@progress/kendo-angular-buttons';
28
27
  import { DropZoneInternalDirective } from './dropzone-internal.directive';
@@ -566,7 +565,7 @@ export class UploadComponent extends UploadFileSelectBase {
566
565
  }));
567
566
  }
568
567
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UploadComponent, deps: [{ token: i1.UploadService }, { token: i2.LocalizationService }, { token: i3.NavigationService }, { token: i4.DropZoneService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
569
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", 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: [
568
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", 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: [
570
569
  LocalizationService,
571
570
  NavigationService,
572
571
  UploadService,
@@ -582,116 +581,121 @@ export class UploadComponent extends UploadFileSelectBase {
582
581
  }
583
582
  ], viewQueries: [{ propertyName: "fileSelectInput", first: true, predicate: ["fileSelectInput"], descendants: true, static: true }], exportAs: ["kendoUpload"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: `
584
583
  <ng-container kendoUploadLocalizedMessages
585
- i18n-cancel="kendo.upload.cancel|The text for the Cancel button"
586
- cancel="Cancel"
587
-
588
- i18n-clearSelectedFiles="kendo.upload.clearSelectedFiles|The text for the Clear button"
589
- clearSelectedFiles="Clear"
590
-
591
- i18n-dropFilesHere="kendo.upload.dropFilesHere|The drop zone hint"
592
- dropFilesHere="Drop files here to upload"
593
-
594
- i18n-filesBatchStatus="kendo.upload.filesBatchStatus|The status message for a batch of files"
595
- filesBatchStatus="files"
596
-
597
- i18n-filesBatchStatusFailed="kendo.upload.filesBatchStatusFailed|The status message for a batch of files after failed upload"
598
- filesBatchStatusFailed="files failed to upload."
599
-
600
- i18n-filesBatchStatusUploaded="kendo.upload.filesBatchStatusUploaded|The status message for a batch of files after successful upload"
601
- filesBatchStatusUploaded="files successfully uploaded."
602
-
603
- i18n-fileStatusFailed="kendo.upload.fileStatusFailed|The file status message after failed upload"
604
- fileStatusFailed="File failed to upload."
605
-
606
- i18n-fileStatusUploaded="kendo.upload.fileStatusUploaded|The file status message after successful upload"
607
- fileStatusUploaded="File successfully uploaded."
608
-
609
- i18n-headerStatusPaused="kendo.upload.headerStatusPaused|The header status message when the file upload is paused"
610
- headerStatusPaused="Paused"
611
-
612
- i18n-headerStatusUploaded="kendo.upload.headerStatusUploaded|The header status message after file upload completion"
613
- headerStatusUploaded="Done"
614
-
615
- i18n-headerStatusUploading="kendo.upload.headerStatusUploading|The header status message during file upload"
616
- headerStatusUploading="Uploading..."
617
-
618
- i18n-invalidFileExtension="kendo.upload.invalidFileExtension|The text for the invalid allowed extensions restriction message"
619
- invalidFileExtension="File type not allowed."
620
-
621
- i18n-invalidMaxFileSize="kendo.upload.invalidMaxFileSize|The text for the invalid max file size restriction message"
622
- invalidMaxFileSize="File size too large."
623
-
624
- i18n-invalidMinFileSize="kendo.upload.invalidMinFileSize|The text for the invalid min file size restriction message"
625
- invalidMinFileSize="File size too small."
626
-
627
- i18n-pause="kendo.upload.pause|The text for the Pause button"
628
- pause="Pause"
629
-
630
- i18n-remove="kendo.upload.remove|The text for the Remove button"
631
- remove="Remove"
632
-
633
- i18n-resume="kendo.upload.resume|The text for the Resume button"
634
- resume="Resume"
635
-
636
- i18n-retry="kendo.upload.retry|The text for the Retry button"
637
- retry="Retry"
638
-
639
- i18n-select="kendo.upload.select|The text for the Select button"
640
- select="Select files..."
641
-
642
- i18n-uploadSelectedFiles="kendo.upload.uploadSelectedFiles|The text for the Upload files button"
643
- uploadSelectedFiles="Upload"
644
- >
584
+ i18n-cancel="kendo.upload.cancel|The text for the Cancel button"
585
+ cancel="Cancel"
586
+
587
+ i18n-clearSelectedFiles="kendo.upload.clearSelectedFiles|The text for the Clear button"
588
+ clearSelectedFiles="Clear"
589
+
590
+ i18n-dropFilesHere="kendo.upload.dropFilesHere|The drop zone hint"
591
+ dropFilesHere="Drop files here to upload"
592
+
593
+ i18n-filesBatchStatus="kendo.upload.filesBatchStatus|The status message for a batch of files"
594
+ filesBatchStatus="files"
595
+
596
+ i18n-filesBatchStatusFailed="kendo.upload.filesBatchStatusFailed|The status message for a batch of files after failed upload"
597
+ filesBatchStatusFailed="files failed to upload."
598
+
599
+ i18n-filesBatchStatusUploaded="kendo.upload.filesBatchStatusUploaded|The status message for a batch of files after successful upload"
600
+ filesBatchStatusUploaded="files successfully uploaded."
601
+
602
+ i18n-fileStatusFailed="kendo.upload.fileStatusFailed|The file status message after failed upload"
603
+ fileStatusFailed="File failed to upload."
604
+
605
+ i18n-fileStatusUploaded="kendo.upload.fileStatusUploaded|The file status message after successful upload"
606
+ fileStatusUploaded="File successfully uploaded."
607
+
608
+ i18n-headerStatusPaused="kendo.upload.headerStatusPaused|The header status message when the file upload is paused"
609
+ headerStatusPaused="Paused"
610
+
611
+ i18n-headerStatusUploaded="kendo.upload.headerStatusUploaded|The header status message after file upload completion"
612
+ headerStatusUploaded="Done"
613
+
614
+ i18n-headerStatusUploading="kendo.upload.headerStatusUploading|The header status message during file upload"
615
+ headerStatusUploading="Uploading..."
616
+
617
+ i18n-invalidFileExtension="kendo.upload.invalidFileExtension|The text for the invalid allowed extensions restriction message"
618
+ invalidFileExtension="File type not allowed."
619
+
620
+ i18n-invalidMaxFileSize="kendo.upload.invalidMaxFileSize|The text for the invalid max file size restriction message"
621
+ invalidMaxFileSize="File size too large."
622
+
623
+ i18n-invalidMinFileSize="kendo.upload.invalidMinFileSize|The text for the invalid min file size restriction message"
624
+ invalidMinFileSize="File size too small."
625
+
626
+ i18n-pause="kendo.upload.pause|The text for the Pause button"
627
+ pause="Pause"
628
+
629
+ i18n-remove="kendo.upload.remove|The text for the Remove button"
630
+ remove="Remove"
631
+
632
+ i18n-resume="kendo.upload.resume|The text for the Resume button"
633
+ resume="Resume"
634
+
635
+ i18n-retry="kendo.upload.retry|The text for the Retry button"
636
+ retry="Retry"
637
+
638
+ i18n-select="kendo.upload.select|The text for the Select button"
639
+ select="Select files..."
640
+
641
+ i18n-uploadSelectedFiles="kendo.upload.uploadSelectedFiles|The text for the Upload files button"
642
+ uploadSelectedFiles="Upload"
643
+ >
645
644
  </ng-container>
646
645
  <div kendoUploadInternalDropZone
647
- [restrictions]="restrictions"
648
- [multiple]="multiple"
649
- [disabled]="disabled"
650
- >
651
- <div class="k-upload-button-wrap">
652
- <button
653
- kendoButton
654
- #fileSelectButton
655
- class="k-upload-button"
656
- type="button"
657
- (click)="fileSelectInput.click()"
658
- (focus)="onFileSelectButtonFocus()"
659
- [id]="focusableId"
660
- [attr.aria-label]="textFor('select')"
661
- [attr.tabindex]="tabindex"
662
- [attr.aria-expanded]="hasFileList"
663
- [attr.aria-controls]="hasFileList ? fileListId : undefined"
664
- >
665
- {{textFor('select')}}
666
- </button>
667
- <input kendoFileSelect #fileSelectInput
668
- [dir]="direction"
669
- [accept]="accept"
670
- [restrictions]="restrictions"
671
- [multiple]="multiple"
672
- [disabled]="disabled"
673
- [required]="isControlRequired" />
674
- </div>
675
- <kendo-upload-status-total *ngIf="showTotalStatus"
676
- class="k-upload-status"
677
- [fileList]="fileList">
646
+ [restrictions]="restrictions"
647
+ [multiple]="multiple"
648
+ [disabled]="disabled"
649
+ >
650
+ <div class="k-upload-button-wrap">
651
+ <button
652
+ kendoButton
653
+ #fileSelectButton
654
+ class="k-upload-button"
655
+ type="button"
656
+ (click)="fileSelectInput.click()"
657
+ (focus)="onFileSelectButtonFocus()"
658
+ [id]="focusableId"
659
+ [attr.aria-label]="textFor('select')"
660
+ [attr.tabindex]="tabindex"
661
+ [attr.aria-expanded]="hasFileList"
662
+ [attr.aria-controls]="hasFileList ? fileListId : undefined"
663
+ >
664
+ {{textFor('select')}}
665
+ </button>
666
+ <input kendoFileSelect #fileSelectInput
667
+ [dir]="direction"
668
+ [accept]="accept"
669
+ [restrictions]="restrictions"
670
+ [multiple]="multiple"
671
+ [disabled]="disabled"
672
+ [required]="isControlRequired" />
673
+ </div>
674
+ @if (showTotalStatus) {
675
+ <kendo-upload-status-total
676
+ class="k-upload-status"
677
+ [fileList]="fileList">
678
678
  </kendo-upload-status-total>
679
- <div class="k-dropzone-hint">{{textFor('dropFilesHere')}}</div>
679
+ }
680
+ <div class="k-dropzone-hint">{{textFor('dropFilesHere')}}</div>
680
681
  </div>
681
- <ul kendo-upload-file-list *ngIf="hasFileList"
682
+ @if (hasFileList) {
683
+ <ul kendo-upload-file-list
682
684
  class="k-upload-files k-reset"
683
685
  [disabled]="disabled"
684
686
  [fileList]="fileList.files"
685
687
  [fileTemplate]="fileTemplate"
686
688
  [fileInfoTemplate]="fileInfoTemplate"
687
689
  [id]="fileListId">
688
- </ul>
689
- <kendo-upload-action-buttons
690
- *ngIf="showActionButtons"
690
+ </ul>
691
+ }
692
+ @if (showActionButtons) {
693
+ <kendo-upload-action-buttons
691
694
  [disabled]="disabled"
692
695
  [actionsLayout]="actionsLayout">
693
- </kendo-upload-action-buttons>
694
- `, 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"] }] });
696
+ </kendo-upload-action-buttons>
697
+ }
698
+ `, 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: "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"] }] });
695
699
  }
696
700
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UploadComponent, decorators: [{
697
701
  type: Component,
@@ -715,118 +719,123 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
715
719
  selector: 'kendo-upload',
716
720
  template: `
717
721
  <ng-container kendoUploadLocalizedMessages
718
- i18n-cancel="kendo.upload.cancel|The text for the Cancel button"
719
- cancel="Cancel"
720
-
721
- i18n-clearSelectedFiles="kendo.upload.clearSelectedFiles|The text for the Clear button"
722
- clearSelectedFiles="Clear"
723
-
724
- i18n-dropFilesHere="kendo.upload.dropFilesHere|The drop zone hint"
725
- dropFilesHere="Drop files here to upload"
726
-
727
- i18n-filesBatchStatus="kendo.upload.filesBatchStatus|The status message for a batch of files"
728
- filesBatchStatus="files"
729
-
730
- i18n-filesBatchStatusFailed="kendo.upload.filesBatchStatusFailed|The status message for a batch of files after failed upload"
731
- filesBatchStatusFailed="files failed to upload."
732
-
733
- i18n-filesBatchStatusUploaded="kendo.upload.filesBatchStatusUploaded|The status message for a batch of files after successful upload"
734
- filesBatchStatusUploaded="files successfully uploaded."
735
-
736
- i18n-fileStatusFailed="kendo.upload.fileStatusFailed|The file status message after failed upload"
737
- fileStatusFailed="File failed to upload."
738
-
739
- i18n-fileStatusUploaded="kendo.upload.fileStatusUploaded|The file status message after successful upload"
740
- fileStatusUploaded="File successfully uploaded."
741
-
742
- i18n-headerStatusPaused="kendo.upload.headerStatusPaused|The header status message when the file upload is paused"
743
- headerStatusPaused="Paused"
744
-
745
- i18n-headerStatusUploaded="kendo.upload.headerStatusUploaded|The header status message after file upload completion"
746
- headerStatusUploaded="Done"
747
-
748
- i18n-headerStatusUploading="kendo.upload.headerStatusUploading|The header status message during file upload"
749
- headerStatusUploading="Uploading..."
750
-
751
- i18n-invalidFileExtension="kendo.upload.invalidFileExtension|The text for the invalid allowed extensions restriction message"
752
- invalidFileExtension="File type not allowed."
753
-
754
- i18n-invalidMaxFileSize="kendo.upload.invalidMaxFileSize|The text for the invalid max file size restriction message"
755
- invalidMaxFileSize="File size too large."
756
-
757
- i18n-invalidMinFileSize="kendo.upload.invalidMinFileSize|The text for the invalid min file size restriction message"
758
- invalidMinFileSize="File size too small."
759
-
760
- i18n-pause="kendo.upload.pause|The text for the Pause button"
761
- pause="Pause"
762
-
763
- i18n-remove="kendo.upload.remove|The text for the Remove button"
764
- remove="Remove"
765
-
766
- i18n-resume="kendo.upload.resume|The text for the Resume button"
767
- resume="Resume"
768
-
769
- i18n-retry="kendo.upload.retry|The text for the Retry button"
770
- retry="Retry"
771
-
772
- i18n-select="kendo.upload.select|The text for the Select button"
773
- select="Select files..."
774
-
775
- i18n-uploadSelectedFiles="kendo.upload.uploadSelectedFiles|The text for the Upload files button"
776
- uploadSelectedFiles="Upload"
777
- >
722
+ i18n-cancel="kendo.upload.cancel|The text for the Cancel button"
723
+ cancel="Cancel"
724
+
725
+ i18n-clearSelectedFiles="kendo.upload.clearSelectedFiles|The text for the Clear button"
726
+ clearSelectedFiles="Clear"
727
+
728
+ i18n-dropFilesHere="kendo.upload.dropFilesHere|The drop zone hint"
729
+ dropFilesHere="Drop files here to upload"
730
+
731
+ i18n-filesBatchStatus="kendo.upload.filesBatchStatus|The status message for a batch of files"
732
+ filesBatchStatus="files"
733
+
734
+ i18n-filesBatchStatusFailed="kendo.upload.filesBatchStatusFailed|The status message for a batch of files after failed upload"
735
+ filesBatchStatusFailed="files failed to upload."
736
+
737
+ i18n-filesBatchStatusUploaded="kendo.upload.filesBatchStatusUploaded|The status message for a batch of files after successful upload"
738
+ filesBatchStatusUploaded="files successfully uploaded."
739
+
740
+ i18n-fileStatusFailed="kendo.upload.fileStatusFailed|The file status message after failed upload"
741
+ fileStatusFailed="File failed to upload."
742
+
743
+ i18n-fileStatusUploaded="kendo.upload.fileStatusUploaded|The file status message after successful upload"
744
+ fileStatusUploaded="File successfully uploaded."
745
+
746
+ i18n-headerStatusPaused="kendo.upload.headerStatusPaused|The header status message when the file upload is paused"
747
+ headerStatusPaused="Paused"
748
+
749
+ i18n-headerStatusUploaded="kendo.upload.headerStatusUploaded|The header status message after file upload completion"
750
+ headerStatusUploaded="Done"
751
+
752
+ i18n-headerStatusUploading="kendo.upload.headerStatusUploading|The header status message during file upload"
753
+ headerStatusUploading="Uploading..."
754
+
755
+ i18n-invalidFileExtension="kendo.upload.invalidFileExtension|The text for the invalid allowed extensions restriction message"
756
+ invalidFileExtension="File type not allowed."
757
+
758
+ i18n-invalidMaxFileSize="kendo.upload.invalidMaxFileSize|The text for the invalid max file size restriction message"
759
+ invalidMaxFileSize="File size too large."
760
+
761
+ i18n-invalidMinFileSize="kendo.upload.invalidMinFileSize|The text for the invalid min file size restriction message"
762
+ invalidMinFileSize="File size too small."
763
+
764
+ i18n-pause="kendo.upload.pause|The text for the Pause button"
765
+ pause="Pause"
766
+
767
+ i18n-remove="kendo.upload.remove|The text for the Remove button"
768
+ remove="Remove"
769
+
770
+ i18n-resume="kendo.upload.resume|The text for the Resume button"
771
+ resume="Resume"
772
+
773
+ i18n-retry="kendo.upload.retry|The text for the Retry button"
774
+ retry="Retry"
775
+
776
+ i18n-select="kendo.upload.select|The text for the Select button"
777
+ select="Select files..."
778
+
779
+ i18n-uploadSelectedFiles="kendo.upload.uploadSelectedFiles|The text for the Upload files button"
780
+ uploadSelectedFiles="Upload"
781
+ >
778
782
  </ng-container>
779
783
  <div kendoUploadInternalDropZone
780
- [restrictions]="restrictions"
781
- [multiple]="multiple"
782
- [disabled]="disabled"
783
- >
784
- <div class="k-upload-button-wrap">
785
- <button
786
- kendoButton
787
- #fileSelectButton
788
- class="k-upload-button"
789
- type="button"
790
- (click)="fileSelectInput.click()"
791
- (focus)="onFileSelectButtonFocus()"
792
- [id]="focusableId"
793
- [attr.aria-label]="textFor('select')"
794
- [attr.tabindex]="tabindex"
795
- [attr.aria-expanded]="hasFileList"
796
- [attr.aria-controls]="hasFileList ? fileListId : undefined"
797
- >
798
- {{textFor('select')}}
799
- </button>
800
- <input kendoFileSelect #fileSelectInput
801
- [dir]="direction"
802
- [accept]="accept"
803
- [restrictions]="restrictions"
804
- [multiple]="multiple"
805
- [disabled]="disabled"
806
- [required]="isControlRequired" />
807
- </div>
808
- <kendo-upload-status-total *ngIf="showTotalStatus"
809
- class="k-upload-status"
810
- [fileList]="fileList">
784
+ [restrictions]="restrictions"
785
+ [multiple]="multiple"
786
+ [disabled]="disabled"
787
+ >
788
+ <div class="k-upload-button-wrap">
789
+ <button
790
+ kendoButton
791
+ #fileSelectButton
792
+ class="k-upload-button"
793
+ type="button"
794
+ (click)="fileSelectInput.click()"
795
+ (focus)="onFileSelectButtonFocus()"
796
+ [id]="focusableId"
797
+ [attr.aria-label]="textFor('select')"
798
+ [attr.tabindex]="tabindex"
799
+ [attr.aria-expanded]="hasFileList"
800
+ [attr.aria-controls]="hasFileList ? fileListId : undefined"
801
+ >
802
+ {{textFor('select')}}
803
+ </button>
804
+ <input kendoFileSelect #fileSelectInput
805
+ [dir]="direction"
806
+ [accept]="accept"
807
+ [restrictions]="restrictions"
808
+ [multiple]="multiple"
809
+ [disabled]="disabled"
810
+ [required]="isControlRequired" />
811
+ </div>
812
+ @if (showTotalStatus) {
813
+ <kendo-upload-status-total
814
+ class="k-upload-status"
815
+ [fileList]="fileList">
811
816
  </kendo-upload-status-total>
812
- <div class="k-dropzone-hint">{{textFor('dropFilesHere')}}</div>
817
+ }
818
+ <div class="k-dropzone-hint">{{textFor('dropFilesHere')}}</div>
813
819
  </div>
814
- <ul kendo-upload-file-list *ngIf="hasFileList"
820
+ @if (hasFileList) {
821
+ <ul kendo-upload-file-list
815
822
  class="k-upload-files k-reset"
816
823
  [disabled]="disabled"
817
824
  [fileList]="fileList.files"
818
825
  [fileTemplate]="fileTemplate"
819
826
  [fileInfoTemplate]="fileInfoTemplate"
820
827
  [id]="fileListId">
821
- </ul>
822
- <kendo-upload-action-buttons
823
- *ngIf="showActionButtons"
828
+ </ul>
829
+ }
830
+ @if (showActionButtons) {
831
+ <kendo-upload-action-buttons
824
832
  [disabled]="disabled"
825
833
  [actionsLayout]="actionsLayout">
826
- </kendo-upload-action-buttons>
834
+ </kendo-upload-action-buttons>
835
+ }
827
836
  `,
828
837
  standalone: true,
829
- imports: [LocalizedMessagesDirective, DropZoneInternalDirective, ButtonComponent, FileSelectDirective, NgIf, UploadStatusTotalComponent, FileListComponent, UploadActionButtonsComponent]
838
+ imports: [LocalizedMessagesDirective, DropZoneInternalDirective, ButtonComponent, FileSelectDirective, UploadStatusTotalComponent, FileListComponent, UploadActionButtonsComponent]
830
839
  }]
831
840
  }], ctorParameters: () => [{ type: i1.UploadService }, { type: i2.LocalizationService }, { type: i3.NavigationService }, { type: i4.DropZoneService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.Injector }], propDecorators: { autoUpload: [{
832
841
  type: Input