DocumentPicker
Utilidad para seleccionar y gestionar documentos e imágenes, permitiendo capturar imágenes, seleccionar archivos, descargarlos, abrirlos y subir archivos temporales, además de mostrar diálogos para elegir la fuente del documento.
Importación
import 'package:togie/utils/document_picker.dart';Métodos
| Método | Descripción |
|---|---|
pickImage({ImageSource source = ImageSource.gallery}) | Captura una imagen desde la cámara o la galería, valida su tamaño y, en entornos web, genera una URL temporal para la imagen. |
showImagePickerDialog({List<DocumentPickerOrigin> sourceList = const [DocumentPickerOrigin.camera, DocumentPickerOrigin.gallery]}) | Muestra un diálogo para seleccionar la fuente de la imagen (cámara, galería, archivo o URL) y retorna el documento seleccionado. |
takePhoto({bool multiple = true}) | Permite seleccionar una o varias fotos utilizando FilePicker y retorna una lista de documentos. |
getDocuments({bool multiple = true}) | Permite seleccionar documentos mediante FilePicker y retorna una lista de documentos. |
downloadFile(String url, {String? name, bool open = true}) | Descarga un archivo desde una URL, lo guarda en un directorio temporal, actualiza el progreso y abre el archivo si se especifica. |
getName(String url) | Extrae y retorna el nombre del archivo a partir de la URL. |
openDocument(Document document) | Abre un documento utilizando OpenFilex. |
openPath(String path) | Abre un archivo a partir de su ruta. |
getImage() | Permite seleccionar una imagen utilizando FilePicker; en entornos web, genera una URL temporal para la imagen. |
uploadTempFile(Document document, {bool visibleProgress = true}) | Sube un archivo temporal al servidor, validando su tamaño y actualizando el progreso, y retorna un objeto TemporaryFiles. |
Propiedades
| Propiedad | Tipo | Descripción |
|---|---|---|
documentPickerContext | BuildContext | Contexto utilizado para mostrar diálogos y gestionar la navegación. |
_picker | ImagePicker | Instancia privada utilizada para capturar imágenes. |
imageUrlNotifier | ValueNotifier<String?> | Notificador estático para actualizar la URL de la imagen en entornos web. |
Ejemplo de uso:
DocumentPicker(context).downloadFile(image.sources.first.url);