{"version":3,"file":"fiscal-io-ds-components-uploader.mjs","sources":["../../../../projects/fiscal-io/ds-components/src/lib/components/ds-uploader/ds-uploader.component.ts","../../../../projects/fiscal-io/ds-components/src/lib/components/ds-uploader/ds-uploader.component.html","../../../../projects/fiscal-io/ds-components/src/fiscal-io-ds-components-uploader.ts"],"sourcesContent":["import {\r\n  Component,\r\n  ChangeDetectionStrategy,\r\n  input,\r\n  output,\r\n  inject,\r\n  ViewChild,\r\n} from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {\r\n  UploaderComponent,\r\n  UploaderModule,\r\n} from '@syncfusion/ej2-angular-inputs';\r\nimport {\r\n  AsyncSettingsModel,\r\n  ButtonsPropsModel,\r\n  FilesPropModel,\r\n  SelectedEventArgs,\r\n  SuccessEventArgs,\r\n  FailureEventArgs,\r\n  RemovingEventArgs,\r\n  BeforeUploadEventArgs,\r\n  BeforeRemoveEventArgs,\r\n  ActionCompleteEventArgs,\r\n  UploadingEventArgs,\r\n  CancelEventArgs,\r\n  PauseResumeEventArgs,\r\n  ClearingEventArgs,\r\n  FileInfo,\r\n  DropEffect,\r\n  RenderingEventArgs,\r\n  FileListRenderingEventArgs,\r\n} from '@syncfusion/ej2-inputs';\r\nimport { DsLocaleService } from '@fiscal-io/ds-components';\r\n\r\n@Component({\r\n  selector: 'ds-uploader',\r\n  standalone: true,\r\n  imports: [CommonModule, UploaderModule],\r\n  templateUrl: './ds-uploader.component.html',\r\n  styleUrls: ['./ds-uploader.component.scss'],\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class DsUploaderComponent {\r\n  private localeService = inject(DsLocaleService);\r\n\r\n  @ViewChild('uploader') uploaderObj!: UploaderComponent;\r\n  @ViewChild('wrapper', { static: true }) wrapperRef!: any;\r\n\r\n  // --- Props de Configuração (Syncfusion API Reference) ---\r\n\r\n  /** Configurações de destino para o upload (saveUrl e removeUrl) */\r\n  asyncSettings = input<AsyncSettingsModel>({ saveUrl: '' });\r\n\r\n  /** Personalização dos botões (Browse, Clear, Upload) */\r\n  buttons = input<ButtonsPropsModel | null>(null);\r\n\r\n  /** Classe CSS customizada para o wrapper */\r\n  cssClass = input<string>('');\r\n\r\n  /** Atributos HTML adicionais para o input */\r\n  htmlAttributes = input<{ [key: string]: string }>({});\r\n\r\n  /** Ativa ou desativa a seleção de diretórios (pastas) */\r\n  directoryUpload = input<boolean>(false);\r\n\r\n  /** Seletor ou Elemento que servirá como área de Drop externa */\r\n  dropArea = input<string | HTMLElement | null>(null);\r\n\r\n  /** Efeito de operação de drag (Copy, Move, Link, None) */\r\n  dropEffect = input<DropEffect>('Default');\r\n\r\n  /** Se deve prevenir Cross-Site Scripting (XSS) no nome do arquivo */\r\n  enableHtmlSanitizer = input<boolean>(true);\r\n\r\n  /** Se permite selecionar múltiplos arquivos */\r\n  multiple = input<boolean>(true);\r\n\r\n  /** Se deve iniciar o upload automaticamente ao selecionar */\r\n  autoUpload = input<boolean>(true);\r\n\r\n  /** Extensões permitidas (ex: \".pdf, .png\") */\r\n  allowedExtensions = input<string>('');\r\n\r\n  /** Tamanho mínimo do arquivo em bytes */\r\n  minFileSize = input<number>(0);\r\n\r\n  /** Tamanho máximo do arquivo em bytes */\r\n  maxFileSize = input<number>(30000000); // 30MB (Default Syncfusion)\r\n\r\n  /** Lista de arquivos pré-carregados */\r\n  files = input<FilesPropModel[]>([]);\r\n\r\n  /** Se deve exibir uma lista visual de arquivos selecionados */\r\n  showFileList = input<boolean>(true);\r\n\r\n  /** Processa uploads sequencialmente (um por um) */\r\n  sequentialUpload = input<boolean>(false);\r\n\r\n  /** Mantém o estado dos arquivos entre refreshs (Local Storage) */\r\n  enablePersistence = input<boolean>(false);\r\n\r\n  /** Renderiza o componente da direita para a esquerda */\r\n  enableRtl = input<boolean>(false);\r\n\r\n  /** Estado habilitado/desabilitado */\r\n  enabled = input<boolean>(true);\r\n\r\n  /** Idioma do componente (Default: pt) */\r\n  locale = input<string>('pt');\r\n\r\n  /** Template HTML customizado para os itens da lista */\r\n  template = input<string | Function | null>(null);\r\n\r\n  // --- Outputs (Eventos Completos da API) ---\r\n  actionComplete = output<ActionCompleteEventArgs>();\r\n  beforeRemove = output<BeforeRemoveEventArgs>();\r\n  beforeUpload = output<BeforeUploadEventArgs>();\r\n  canceling = output<CancelEventArgs>();\r\n  change = output<any>();\r\n  chunkFailure = output<any>();\r\n  chunkSuccess = output<any>();\r\n  chunkUploading = output<UploadingEventArgs>();\r\n  clearing = output<ClearingEventArgs>();\r\n  created = output<any>();\r\n  failure = output<any>();\r\n  fileListRendering = output<FileListRenderingEventArgs>();\r\n  pausing = output<PauseResumeEventArgs>();\r\n  progress = output<any>();\r\n  removing = output<RemovingEventArgs>();\r\n  rendering = output<RenderingEventArgs>();\r\n  resuming = output<PauseResumeEventArgs>();\r\n  selected = output<SelectedEventArgs>();\r\n  success = output<any>();\r\n  uploading = output<UploadingEventArgs>();\r\n\r\n  /** \r\n   * Métodos Públicos (Expostos conforme Documentação)\r\n   */\r\n\r\n  public bytesToSize(bytes: number): string {\r\n    return this.uploaderObj.bytesToSize(bytes);\r\n  }\r\n\r\n  public cancel(fileData?: FileInfo[]): void {\r\n    this.uploaderObj.cancel(fileData);\r\n  }\r\n\r\n  public clearAll(): void {\r\n    this.uploaderObj.clearAll();\r\n  }\r\n\r\n  public createFileList(fileData: FileInfo[]): void {\r\n    this.uploaderObj.createFileList(fileData);\r\n  }\r\n\r\n  public getFilesData(index?: number): FileInfo[] {\r\n    return this.uploaderObj.getFilesData(index);\r\n  }\r\n\r\n  public pause(fileData?: FileInfo | FileInfo[], custom?: boolean): void {\r\n    this.uploaderObj.pause(fileData, custom);\r\n  }\r\n\r\n  public remove(fileData?: FileInfo | FileInfo[]): void {\r\n    this.uploaderObj.remove(fileData);\r\n  }\r\n\r\n  public resume(fileData?: FileInfo | FileInfo[], custom?: boolean): void {\r\n    this.uploaderObj.resume(fileData, custom);\r\n  }\r\n\r\n  public retry(fileData?: FileInfo | FileInfo[], fromCanceledStage?: boolean, custom?: boolean): void {\r\n    this.uploaderObj.retry(fileData, fromCanceledStage, custom);\r\n  }\r\n\r\n  public sortFileList(filesData?: any): any {\r\n    return this.uploaderObj.sortFileList(filesData);\r\n  }\r\n\r\n  public upload(files?: FileInfo | FileInfo[], custom?: boolean): void {\r\n    this.uploaderObj.upload(files, custom);\r\n  }\r\n}\r\n","<div #wrapper class=\"ds-uploader-wrapper\">\n  <ejs-uploader\n    #uploader\n    [dropArea]=\"dropArea() || wrapper\"\n    [multiple]=\"multiple()\"\n    [autoUpload]=\"autoUpload()\"\n    [allowedExtensions]=\"allowedExtensions()\"\n    [minFileSize]=\"minFileSize()\"\n    [maxFileSize]=\"maxFileSize()\"\n    [showFileList]=\"showFileList()\"\n    [asyncSettings]=\"asyncSettings()\"\n    [enabled]=\"enabled()\"\n    [locale]=\"locale()\"\n    [cssClass]=\"cssClass()\"\n    [directoryUpload]=\"directoryUpload()\"\n    [files]=\"files()\"\n    [htmlAttributes]=\"htmlAttributes()\"\n    [sequentialUpload]=\"sequentialUpload()\"\n    [enablePersistence]=\"enablePersistence()\"\n    [enableRtl]=\"enableRtl()\"\n    [enableHtmlSanitizer]=\"enableHtmlSanitizer()\"\n    [dropEffect]=\"dropEffect()\"\n    [template]=\"template()\"\n    [buttons]=\"buttons()\"\n    (actionComplete)=\"actionComplete.emit($any($event))\"\n    (beforeRemove)=\"beforeRemove.emit($any($event))\"\n    (beforeUpload)=\"beforeUpload.emit($any($event))\"\n    (canceling)=\"canceling.emit($any($event))\"\n    (change)=\"change.emit($any($event))\"\n    (chunkFailure)=\"chunkFailure.emit($any($event))\"\n    (chunkSuccess)=\"chunkSuccess.emit($any($event))\"\n    (chunkUploading)=\"chunkUploading.emit($any($event))\"\n    (clearing)=\"clearing.emit($any($event))\"\n    (created)=\"created.emit($any($event))\"\n    (failure)=\"failure.emit($any($event))\"\n    (fileListRendering)=\"fileListRendering.emit($any($event))\"\n    (pausing)=\"pausing.emit($any($event))\"\n    (progress)=\"progress.emit($any($event))\"\n    (removing)=\"removing.emit($any($event))\"\n    (rendering)=\"rendering.emit($any($event))\"\n    (resuming)=\"resuming.emit($any($event))\"\n    (selected)=\"selected.emit($any($event))\"\n    (success)=\"success.emit($any($event))\"\n    (uploading)=\"uploading.emit($any($event))\"\n  ></ejs-uploader>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './uploader';\n"],"names":[],"mappings":"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"}