Some checks are pending
Build / Build Backend (push) Waiting to run
Build / Build Docker Image (push) Blocked by required conditions
Build / Build Mobile (TypeScript Check) (push) Waiting to run
Lint / Lint Backend (push) Waiting to run
Lint / Lint Mobile (push) Waiting to run
Test / Backend E2E Tests (push) Waiting to run
Test / Mobile Unit Tests (push) Waiting to run
- Move 5 non-standard folders to _archive/ - Archive 2 extra root files - Update _MAP.md with standardized structure Standard: SIMCO-ESTANDAR-ORCHESTRATION v1.0.0 Level: CONSUMER (L2) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
9.2 KiB
9.2 KiB
PLAN DE DOCUMENTACIÓN - UX MOBILE: Animaciones + Modo Offline
id: PLAN-DOC-UX-MOBILE-001 type: Plan status: Draft created_date: 2026-01-12 updated_date: 2026-01-12 phase: 3-planificacion simco_version: "4.0.0"
FASE 3: PLANEACIÓN BASADA EN ANÁLISIS
3.1 Documentos a Actualizar
| # | Documento | Ubicación | Acción | Prioridad |
|---|---|---|---|---|
| 1 | TRAZA-TAREAS-MOBILE.md | orchestration/trazas/ | Agregar tarea MII-MO-014 | Alta |
| 2 | FRONTEND_INVENTORY.yml | orchestration/inventarios/ | Agregar nuevos componentes | Alta |
| 3 | PROJECT-STATUS.md | orchestration/ | Actualizar métricas mobile | Media |
| 4 | PROXIMA-ACCION.md | orchestration/ | Marcar UX como completado | Media |
3.2 Detalle de Cambios por Documento
3.2.1 TRAZA-TAREAS-MOBILE.md
Estado Actual:
- Tareas totales: 13
- Última tarea: MII-MO-013
Cambio Requerido:
Agregar nueva tarea MII-MO-014 con formato estándar:
### [2026-01-12] MII-MO-014
**Estado:** completado
**Agente:** Claude Opus 4.5
**Fecha Completado:** 2026-01-12
#### Descripcion
UX Mobile: Animaciones fluidas + Modo Offline
#### Archivos Creados
# Hooks
- `src/hooks/useAnimations.ts`
- `src/hooks/useNetworkStatus.ts`
# Theme
- `src/theme/ThemeContext.tsx`
# Componentes UI
- `src/components/ui/Skeleton.tsx`
- `src/components/ui/OfflineBanner.tsx`
- `src/components/ui/AnimatedList.tsx`
# Skeletons Específicos
- `src/components/skeletons/InventoryItemSkeleton.tsx`
- `src/components/skeletons/StoreCardSkeleton.tsx`
- `src/components/skeletons/CreditCardSkeleton.tsx`
- `src/components/skeletons/NotificationSkeleton.tsx`
#### Archivos Modificados
- `src/stores/stores.store.ts` - Persistencia AsyncStorage
- `src/stores/inventory.store.ts` - Persistencia AsyncStorage
- `src/stores/credits.store.ts` - Persistencia AsyncStorage
- `src/stores/notifications.store.ts` - Persistencia AsyncStorage
- `src/app/_layout.tsx` - ThemeProvider + OfflineBanner
- `src/app/(tabs)/index.tsx` - Animaciones + Skeletons
- `src/app/(tabs)/inventory.tsx` - Animaciones + Skeletons
#### Dependencias Instaladas
- @react-native-async-storage/async-storage
- @react-native-community/netinfo
#### Resultado
App con animaciones fluidas, skeleton loaders, persistencia offline y detección de red.
Actualizar Resumen:
| Metrica | Valor |
|---------|-------|
| Tareas totales | 14 |
| Completadas | 14 |
| En progreso | 0 |
| Pendientes | 0 |
| Progreso | 100% |
3.2.2 FRONTEND_INVENTORY.yml
Cambios Requeridos:
- Actualizar metadata:
metadata:
version: "3.0.0"
actualizado: 2026-01-12
- Actualizar resumen:
resumen:
screens_implementados: 20
layouts_implementados: 10
stores_implementados: 7
services_implementados: 10
hooks_implementados: 2 # NUEVO
componentes_ui: 6 # NUEVO
componentes_skeletons: 4 # NUEVO
grupos_navegacion: 8
- Agregar sección hooks:
# ===========================================
# HOOKS PERSONALIZADOS
# ===========================================
hooks:
- nombre: useAnimations
archivo: "src/hooks/useAnimations.ts"
descripcion: "Colección de hooks para animaciones con react-native-reanimated"
estado: implementado
exports:
- useFadeIn
- useSlideIn
- useSlideFromRight
- usePressScale
- useListItemAnimation
- useShimmer
- usePulse
- useToggleAnimation
- Animated (re-export)
- nombre: useNetworkStatus
archivo: "src/hooks/useNetworkStatus.ts"
descripcion: "Hooks para detectar estado de conexión de red"
estado: implementado
exports:
- useNetworkStatus
- useIsOnline
- useIsOffline
- Agregar sección componentes UI:
# ===========================================
# COMPONENTES UI
# ===========================================
componentes_ui:
- nombre: Skeleton
archivo: "src/components/ui/Skeleton.tsx"
descripcion: "Componentes skeleton base con animación shimmer"
estado: implementado
exports:
- Skeleton
- SkeletonText
- SkeletonCircle
- SkeletonImage
- SkeletonCard
- SkeletonListItem
- SkeletonStat
- SkeletonList
- nombre: OfflineBanner
archivo: "src/components/ui/OfflineBanner.tsx"
descripcion: "Banner animado para indicar modo offline"
estado: implementado
exports:
- OfflineBanner
- WithOfflineBanner
- nombre: AnimatedList
archivo: "src/components/ui/AnimatedList.tsx"
descripcion: "FlatList con animaciones de entrada staggered"
estado: implementado
exports:
- AnimatedList
- useListItemEntering
- AnimatedListItem
- Agregar sección skeletons:
# ===========================================
# COMPONENTES SKELETON
# ===========================================
componentes_skeletons:
- nombre: InventoryItemSkeleton
archivo: "src/components/skeletons/InventoryItemSkeleton.tsx"
descripcion: "Skeletons para lista de inventario"
estado: implementado
exports:
- InventoryItemSkeleton
- InventoryListSkeleton
- InventoryStatsSkeleton
- nombre: StoreCardSkeleton
archivo: "src/components/skeletons/StoreCardSkeleton.tsx"
descripcion: "Skeletons para tarjetas de tienda"
estado: implementado
exports:
- StoreCardSkeleton
- StoreListSkeleton
- nombre: CreditCardSkeleton
archivo: "src/components/skeletons/CreditCardSkeleton.tsx"
descripcion: "Skeletons para sección de créditos"
estado: implementado
exports:
- CreditBalanceSkeleton
- TransactionSkeleton
- TransactionListSkeleton
- CreditPackageSkeleton
- CreditPackageListSkeleton
- nombre: NotificationSkeleton
archivo: "src/components/skeletons/NotificationSkeleton.tsx"
descripcion: "Skeletons para lista de notificaciones"
estado: implementado
exports:
- NotificationItemSkeleton
- NotificationListSkeleton
- NotificationHeaderSkeleton
- Agregar sección theme:
# ===========================================
# SISTEMA DE TEMAS
# ===========================================
theme:
- nombre: ThemeContext
archivo: "src/theme/ThemeContext.tsx"
descripcion: "Sistema de temas con soporte light/dark mode"
estado: implementado
exports:
- ThemeColors (interface)
- Theme (interface)
- ThemeProvider
- useTheme
- useColors
- Actualizar stores con nueva información:
stores:
# ... stores existentes con actualización:
- nombre: useStoresStore
archivo: "stores/stores.store.ts"
descripcion: "Tiendas del usuario"
estado: implementado
persistencia: "miinventario-stores" # NUEVO
acciones: [...]
# Repetir para inventory, credits, notifications
- Actualizar dependencias:
dependencias:
# ... existentes + nuevas:
animaciones:
- react-native-reanimated # ya existía pero ahora usado
offline:
- "@react-native-async-storage/async-storage"
- "@react-native-community/netinfo"
- Agregar entrada al changelog:
changelog:
- version: "3.0.0"
fecha: 2026-01-12
cambios:
- "Agregados 2 hooks personalizados (useAnimations, useNetworkStatus)"
- "Agregado sistema de temas (ThemeContext)"
- "Agregados 6 componentes UI (Skeleton, OfflineBanner, AnimatedList, etc)"
- "Agregados 4 componentes skeleton específicos"
- "Actualizada persistencia en 4 stores con AsyncStorage"
- "Agregadas animaciones a Home e Inventory screens"
- "Agregado banner offline en layout raíz"
3.2.3 PROJECT-STATUS.md
Cambios Requeridos:
- Actualizar sección Mobile:
### Mobile
| Aspecto | Valor |
|---------|-------|
| Screens | 20 |
| Hooks | 2 |
| Componentes UI | 6 |
| Skeletons | 4 |
| UX Animations | Implementado |
| Offline Mode | Implementado |
3.2.4 PROXIMA-ACCION.md
Cambios Requeridos:
- Marcar opción completada:
### Opcion B: Mejoras de UX Mobile - COMPLETADO
- [x] Animaciones y transiciones
- [x] Modo offline
- [x] Persistencia local
3.3 Checklist de Validación
Pre-Ejecución:
- Verificar que todos los archivos de origen existen
- Verificar formato YAML válido para inventarios
- Verificar formato Markdown válido para trazas
Post-Ejecución:
- TRAZA-TAREAS-MOBILE.md tiene 14 tareas
- FRONTEND_INVENTORY.yml versión 3.0.0
- PROJECT-STATUS.md actualizado
- PROXIMA-ACCION.md actualizado
- TypeScript build sigue pasando
3.4 Orden de Ejecución
- FRONTEND_INVENTORY.yml - Fuente canónica de estado
- TRAZA-TAREAS-MOBILE.md - Historial de cambios
- PROJECT-STATUS.md - Estado general
- PROXIMA-ACCION.md - Siguiente paso
3.5 Resumen del Plan
| Fase | Documento | Acción | Líneas |
|---|---|---|---|
| 7.1 | FRONTEND_INVENTORY.yml | Actualizar | +150 |
| 7.2 | TRAZA-TAREAS-MOBILE.md | Agregar tarea | +60 |
| 7.3 | PROJECT-STATUS.md | Actualizar métricas | +10 |
| 7.4 | PROXIMA-ACCION.md | Marcar completado | +5 |
Total estimado: ~225 líneas de documentación
Última Actualización: 2026-01-12 Responsable: Claude Opus 4.5