Saltearse al contenido

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étodoDescripció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

PropiedadTipoDescripción
documentPickerContextBuildContextContexto utilizado para mostrar diálogos y gestionar la navegación.
_pickerImagePickerInstancia privada utilizada para capturar imágenes.
imageUrlNotifierValueNotifier<String?>Notificador estático para actualizar la URL de la imagen en entornos web.

Ejemplo de uso:

DocumentPicker(context).downloadFile(image.sources.first.url);