PACKET v1.0.0 - Initial release

App móvil Flutter para capturar contenido multimedia, etiquetarlo con hashes y enviarlo a backends configurables.

Features:
- Captura de fotos, audio, video y archivos
- Sistema de etiquetas con bibliotecas externas (HST)
- Packs de etiquetas predefinidos
- Cola de reintentos (hasta 20 contenedores)
- Soporte GPS
- Hash SHA-256 auto-generado por contenedor
- Persistencia SQLite local
- Múltiples destinos configurables

Stack: Flutter 3.38.5, flutter_bloc, sqflite, dio

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
tzzrgit
2025-12-21 18:10:27 +01:00
commit dac0c51483
163 changed files with 8603 additions and 0 deletions

View File

@@ -0,0 +1,29 @@
class Pack {
final int? id;
final String nombre;
final String icono;
final List<String> tags;
Pack({
this.id,
required this.nombre,
this.icono = '📦',
required this.tags,
});
factory Pack.fromMap(Map<String, dynamic> map) => Pack(
id: map['id'] as int?,
nombre: map['nombre'] as String,
icono: map['icono'] as String? ?? '📦',
tags: (map['tags'] as String).split(',').where((t) => t.isNotEmpty).toList(),
);
Map<String, dynamic> toMap() => {
if (id != null) 'id': id,
'nombre': nombre,
'icono': icono,
'tags': tags.join(','),
};
int get tagCount => tags.length;
}