miinventario-v2/orchestration/_archive/analisis/ANALISIS-DEPENDENCIAS-UX-MOBILE-2026-01-12.md
Adrian Flores Cortes e101c7b94c
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
[ESTANDAR-ORCHESTRATION] refactor: Consolidate to standard structure
- 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>
2026-01-24 14:38:05 -06:00

205 lines
6.1 KiB
Markdown

# ANÁLISIS DE DEPENDENCIAS - UX MOBILE
---
id: DEP-UX-MOBILE-001
type: DependencyAnalysis
status: Approved
created_date: 2026-01-12
updated_date: 2026-01-12
phase: 5-dependencias
simco_version: "4.0.0"
---
## FASE 5: ANÁLISIS DE DEPENDENCIAS
### 5.1 Archivos Modificados y sus Dependientes
#### 5.1.1 `stores/stores.store.ts`
**Tipo de Cambio:** Adición de persistencia (backward compatible)
**Archivos Dependientes (6):**
| Archivo | Tipo de Uso | ¿Requiere Cambio? |
|---------|-------------|-------------------|
| `app/(tabs)/index.tsx` | useStoresStore | No - API sin cambios |
| `app/(tabs)/inventory.tsx` | useStoresStore | No - API sin cambios |
| `app/(tabs)/scan.tsx` | useStoresStore | No - API sin cambios |
| `app/stores/index.tsx` | useStoresStore | No - API sin cambios |
| `app/stores/new.tsx` | useStoresStore | No - API sin cambios |
| `app/stores/[id].tsx` | useStoresStore | No - API sin cambios |
**Análisis:** Los cambios solo agregan `persist` middleware que es transparente para los consumidores.
---
#### 5.1.2 `stores/inventory.store.ts`
**Tipo de Cambio:** Adición de persistencia (backward compatible)
**Archivos Dependientes (3):**
| Archivo | Tipo de Uso | ¿Requiere Cambio? |
|---------|-------------|-------------------|
| `app/(tabs)/index.tsx` | useInventoryStore | No - API sin cambios |
| `app/(tabs)/inventory.tsx` | useInventoryStore | No - API sin cambios |
| `app/inventory/[id].tsx` | useInventoryStore | No - API sin cambios |
**Análisis:** El límite de 100 items en cache no afecta la API pública.
---
#### 5.1.3 `stores/credits.store.ts`
**Tipo de Cambio:** Adición de persistencia (backward compatible)
**Archivos Dependientes (5):**
| Archivo | Tipo de Uso | ¿Requiere Cambio? |
|---------|-------------|-------------------|
| `app/(tabs)/index.tsx` | useCreditsStore | No - API sin cambios |
| `app/(tabs)/scan.tsx` | useCreditsStore | No - API sin cambios |
| `app/(tabs)/profile.tsx` | useCreditsStore | No - API sin cambios |
| `app/credits/buy.tsx` | useCreditsStore | No - API sin cambios |
| `app/credits/history.tsx` | useCreditsStore | No - API sin cambios |
**Análisis:** El límite de 50 transacciones en cache no afecta la API pública.
---
#### 5.1.4 `stores/notifications.store.ts`
**Tipo de Cambio:** Adición de persistencia (backward compatible)
**Archivos Dependientes (2):**
| Archivo | Tipo de Uso | ¿Requiere Cambio? |
|---------|-------------|-------------------|
| `app/(tabs)/index.tsx` | useNotificationsStore | No - API sin cambios |
| `app/notifications/index.tsx` | useNotificationsStore | No - API sin cambios |
**Análisis:** El límite de 50 notificaciones en cache no afecta la API pública.
---
### 5.2 Archivos Nuevos y sus Consumidores
#### 5.2.1 `theme/ThemeContext.tsx`
**Consumidores Actuales:**
| Archivo | Estado |
|---------|--------|
| `app/_layout.tsx` | Provider ✅ |
| `components/ui/Skeleton.tsx` | useTheme ✅ |
| `components/ui/AnimatedList.tsx` | useTheme ✅ |
| `components/skeletons/*.tsx` (4) | useTheme ✅ |
**Consumidores Potenciales Futuros:** Cualquier componente que necesite colores del tema.
---
#### 5.2.2 `hooks/useNetworkStatus.ts`
**Consumidores Actuales:**
| Archivo | Estado |
|---------|--------|
| `components/ui/OfflineBanner.tsx` | useIsOffline ✅ |
**Consumidores Potenciales Futuros:** Cualquier componente que necesite detectar estado de red.
---
#### 5.2.3 `hooks/useAnimations.ts`
**Consumidores Actuales:**
| Archivo | Estado |
|---------|--------|
| `app/(tabs)/index.tsx` | usePressScale ✅ |
| `app/(tabs)/inventory.tsx` | usePressScale ✅ |
**Consumidores Potenciales Futuros:** Todas las pantallas que quieran animaciones consistentes.
---
### 5.3 Grafo de Dependencias Actualizado
```
AsyncStorage (npm)
└── zustand/middleware/persist
├── stores/stores.store.ts ──────┬─→ 6 screens
├── stores/inventory.store.ts ───┼─→ 3 screens
├── stores/credits.store.ts ─────┼─→ 5 screens
└── stores/notifications.store.ts┴─→ 2 screens
NetInfo (npm)
└── hooks/useNetworkStatus.ts
└── components/ui/OfflineBanner.tsx
└── app/_layout.tsx (global)
react-native-reanimated (npm)
├── hooks/useAnimations.ts ──────────┬─→ index.tsx, inventory.tsx
├── components/ui/Skeleton.tsx ──────┤
├── components/ui/OfflineBanner.tsx ─┤
└── components/ui/AnimatedList.tsx ──┘
ThemeContext.tsx
├── (provider) app/_layout.tsx
└── (consumers)
├── components/ui/Skeleton.tsx
├── components/ui/AnimatedList.tsx
└── components/skeletons/*.tsx (4)
```
---
### 5.4 Verificación de Compatibilidad
| Categoría | Verificación | Resultado |
|-----------|--------------|-----------|
| API de stores | Sin cambios breaking | ✅ Compatible |
| Interfaces TypeScript | Sin cambios en tipos públicos | ✅ Compatible |
| Props de componentes | Opcionales agregados, no removidos | ✅ Compatible |
| Imports existentes | Ninguno roto | ✅ Compatible |
---
### 5.5 Resumen de Impacto
| Área | Archivos Afectados | Cambios Requeridos |
|------|-------------------|--------------------|
| Stores (persistencia) | 4 stores, 16 consumers | 0 cambios necesarios |
| Theme | 1 provider, 7 consumers | Ya implementados |
| Network | 1 hook, 1 banner, 1 layout | Ya implementados |
| Animations | 1 hook, 2 screens | Ya implementados |
## ✅ ANÁLISIS COMPLETADO
**Conclusión:** Los cambios son **backward compatible**. No se requieren modificaciones adicionales en archivos dependientes.
---
### 5.6 Documentos Adicionales Requeridos
| Documento | Necesario | Razón |
|-----------|-----------|-------|
| Database schemas | No | Sin cambios en DB |
| Backend APIs | No | Sin cambios en API |
| Nuevas épicas | No | Mejora incremental |
| ADR | No | No hay decisión arquitectónica nueva |
---
**Última Actualización:** 2026-01-12
**Analizado por:** Claude Opus 4.5