sf-documents 0.1.9 → 0.1.10

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.
@@ -1,6 +1,9 @@
1
1
  import { ElementRef, EventEmitter } from '@angular/core';
2
+ import { MessageService } from 'primeng/api';
3
+ import { RejectedFile } from '../../../utils/file-type.util';
2
4
  import * as i0 from "@angular/core";
3
5
  export declare class UploadDialogComponent {
6
+ private messageService;
4
7
  selectedDocument: any;
5
8
  /** Extensiones permitidas para subir (ej. ['.pdf', '.xlsx']). Si no se define, usa el default de la librería. */
6
9
  allowedExtensions: string[] | undefined;
@@ -10,11 +13,22 @@ export declare class UploadDialogComponent {
10
13
  }>;
11
14
  loadFile: EventEmitter<void>;
12
15
  fileInput: ElementRef<HTMLInputElement>;
13
- constructor();
16
+ readonly maxFileSize: number;
17
+ readonly maxBatchSize: number;
18
+ displayOversizedDialog: boolean;
19
+ allowedFiles: File[];
20
+ rejectedFiles: RejectedFile[];
21
+ private pendingTagValue;
22
+ constructor(messageService: MessageService);
14
23
  private get normalizedExtensions();
15
24
  get acceptedFileTypes(): string;
25
+ formatSize(bytes: number): string;
16
26
  loadFileClick(): void;
17
27
  fileChange(event: any): void;
28
+ continuarConPermitidos(): void;
29
+ cancelarEnvio(): void;
30
+ private limpiarSeleccionRechazada;
31
+ private addMessage;
18
32
  static ɵfac: i0.ɵɵFactoryDeclaration<UploadDialogComponent, never>;
19
33
  static ɵcmp: i0.ɵɵComponentDeclaration<UploadDialogComponent, "lib-upload-dialog", never, { "selectedDocument": { "alias": "selectedDocument"; "required": false; }; "allowedExtensions": { "alias": "allowedExtensions"; "required": false; }; }, { "onUploaded": "onUploaded"; "loadFile": "loadFile"; }, never, never, true, never>;
20
34
  }
@@ -4,11 +4,26 @@
4
4
  * decisión de negocio (qué tipos de documento se aceptan).
5
5
  */
6
6
  export declare const DEFAULT_ALLOWED_UPLOAD_EXTENSIONS: string[];
7
+ export declare const MAX_POR_ARCHIVO: number;
8
+ export declare const MAX_POR_LOTE: number;
9
+ export interface RejectedFile {
10
+ name: string;
11
+ size: number;
12
+ }
7
13
  /** Normaliza una lista de extensiones dada por el host (con o sin punto, mayúsc/minúsc). */
8
14
  export declare function normalizeExtensions(extensions: string[] | undefined | null, fallback: string[]): string[];
9
15
  /** Arma el atributo `accept` del input file a partir de las extensiones permitidas. */
10
16
  export declare function buildAcceptAttr(extensions: string[]): string;
11
17
  export declare function isAllowedUploadFile(file: File, extensions: string[]): boolean;
18
+ /** Formatea un tamaño en bytes a MB con un decimal (ej. "12.3 MB"). */
19
+ export declare function formatFileSizeMB(bytes: number): string;
20
+ /** Tamaño total en bytes de un conjunto de archivos. */
21
+ export declare function getBatchSize(files: File[]): number;
22
+ /** Separa los archivos según superen o no el tamaño máximo permitido por archivo. */
23
+ export declare function splitFilesByMaxSize(files: File[], maxFileSize: number): {
24
+ allowed: File[];
25
+ rejected: RejectedFile[];
26
+ };
12
27
  /** true si el navegador puede mostrar este archivo inline en un <embed>/<iframe>. */
13
28
  export declare function canPreviewFile(name: string | undefined | null): boolean;
14
29
  /** Ícono PrimeIcons según la extensión del archivo; 'pi-file' si no se reconoce. */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sf-documents",
3
- "version": "0.1.9",
3
+ "version": "0.1.10",
4
4
  "peerDependencies": {
5
5
  "@angular/animations": "^19.2.0",
6
6
  "@angular/common": "^19.2.0",