template-saas/orchestration/inventarios/FRONTEND_INVENTORY.yml
Adrian Flores Cortes 7c029a40aa [ST-4.2] docs: Update frontend and master inventories
FRONTEND_INVENTORY.yml v5.0.0:
- Pages: 38 -> 65 (+27 new pages)
- Components: 28 -> 57 (+29 new components)
- Hooks: 22 -> 24 files
- Tests: 0 -> 13 test files (160 tests)
- Documented Sprint 1-3 additions

MASTER_INVENTORY.yml v6.2.0:
- Updated frontend metrics
- Reflects current codebase state

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 20:33:53 -06:00

512 lines
13 KiB
YAML

---
# FRONTEND INVENTORY - Template SaaS
# Version: 5.0.0
# Ultima actualizacion: 2026-02-03
# Nota: ST-4.2-UPDATE-INVENTORY - Actualizacion post Sprint 1-3
# Incluye: Nuevas paginas RBAC/Portfolio/MLM/Goals/Notifications, 57 componentes, 13 tests
metadata:
proyecto: "template-saas"
tipo: "FRONTEND"
version: "5.0.0"
updated: "2026-02-03"
framework: "React 19.0.0 + Vite 6.0.6"
styling: "Tailwind CSS 3.4.17"
state: "Zustand 5.0.2"
forms: "React Hook Form 7.54.2 + Zod"
testing: "Vitest 4.0.17 + React Testing Library 16.3.1"
estado: "completado"
nota_auditoria: "Inventario actualizado post Sprint 1-3 (ST-4.2-UPDATE-INVENTORY)"
portals:
- nombre: "auth"
descripcion: "Autenticacion"
ruta: "/auth"
estado: "completado"
pages:
- LoginPage.tsx
- RegisterPage.tsx
- ForgotPasswordPage.tsx
- OAuthCallbackPage.tsx
components:
- OAuthButtons.tsx
- nombre: "onboarding"
descripcion: "Wizard de onboarding 4 pasos"
ruta: "/onboarding"
estado: "completado"
pages:
- OnboardingPage.tsx
steps:
- CompanyStep.tsx
- CompleteStep.tsx
- InviteStep.tsx
- PlanStep.tsx
- nombre: "dashboard"
descripcion: "Portal usuario final (Dashboard)"
ruta: "/dashboard"
estado: "completado"
pages:
- DashboardPage.tsx
- AIPage.tsx
- AuditLogsPage.tsx
- BillingPage.tsx
- FeatureFlagsPage.tsx
- SettingsPage.tsx
- StoragePage.tsx
- UsersPage.tsx
- WebhooksPage.tsx
- nombre: "sales"
descripcion: "Sales Foundation - Leads, Oportunidades, Pipeline"
ruta: "/dashboard/sales"
estado: "completado"
pages:
- SalesPage.tsx
- LeadsPage.tsx
- LeadDetailPage.tsx
- OpportunitiesPage.tsx
- OpportunityDetailPage.tsx
- ActivitiesPage.tsx
nota: "SAAS-018 - 6 paginas implementadas"
- nombre: "commissions"
descripcion: "Commissions - Esquemas, Entradas, Periodos, Ganancias"
ruta: "/dashboard/commissions"
estado: "completado"
pages:
- CommissionsPage.tsx
- SchemesPage.tsx
- EntriesPage.tsx
- PeriodsPage.tsx
- MyEarningsPage.tsx
nota: "SAAS-020 - 5 paginas implementadas"
- nombre: "portfolio"
descripcion: "Catalogo de Productos - Categorias, Productos, Variantes"
ruta: "/dashboard/portfolio"
estado: "completado"
pages:
- PortfolioPage.tsx
- CategoriesPage.tsx
- CategoryDetailPage.tsx
- ProductsPage.tsx
- ProductDetailPage.tsx
- ProductFormPage.tsx
nota: "SAAS-019 - Sprint 2: CategoryDetailPage, ProductDetailPage, ProductFormPage agregadas"
- nombre: "mlm"
descripcion: "Multi-Level Marketing - Redes de distribuidores"
ruta: "/dashboard/mlm"
estado: "completado"
pages:
- MLMPage.tsx
- StructuresPage.tsx
- StructureDetailPage.tsx
- NodesPage.tsx
- NodeDetailPage.tsx
- RanksPage.tsx
- MyNetworkPage.tsx
- MyEarningsPage.tsx
nota: "SAAS-021 - Sprint 2: NodesPage agregada. 8 paginas totales"
- nombre: "goals"
descripcion: "Sistema de Metas y Objetivos"
ruta: "/dashboard/goals"
estado: "completado"
pages:
- GoalsPage.tsx
- DefinitionsPage.tsx
- GoalDetailPage.tsx
- DefinitionFormPage.tsx
- AssignmentsPage.tsx
- AssignmentDetailPage.tsx
- MyGoalsPage.tsx
- ReportsPage.tsx
nota: "SAAS-022 - Sprint 2: AssignmentsPage, DefinitionFormPage agregadas. 8 paginas totales"
- nombre: "rbac"
descripcion: "Role-Based Access Control"
ruta: "/dashboard/rbac"
estado: "completado"
pages:
- RolesPage.tsx
- RoleDetailPage.tsx
- PermissionsPage.tsx
nota: "Sprint 1: 3 nuevas paginas para gestion RBAC"
- nombre: "notifications"
descripcion: "Notificaciones y Templates"
ruta: "/dashboard/notifications"
estado: "completado"
pages:
- NotificationsPage.tsx
- TemplatesPage.tsx
nota: "Sprint 1: TemplatesPage agregada"
- nombre: "admin"
descripcion: "Portal admin de tenant"
ruta: "/admin"
estado: "completado"
pages:
- AnalyticsDashboardPage.tsx
- WhatsAppSettings.tsx
- nombre: "settings"
descripcion: "Configuraciones de usuario"
ruta: "/settings"
estado: "completado"
pages:
- SettingsPage.tsx
- GeneralSettings.tsx
- NotificationSettings.tsx
- SecuritySettings.tsx
- nombre: "superadmin"
descripcion: "Portal superadmin"
ruta: "/superadmin"
estado: "completado"
pages:
- TenantsPage.tsx
- TenantDetailPage.tsx
- MetricsPage.tsx
pages:
total: 65
desglose:
auth: 4
onboarding: 5
dashboard_core: 9
sales: 6
commissions: 5
portfolio: 6
mlm: 8
goals: 8
rbac: 3
notifications: 2
admin: 2
settings: 4
superadmin: 3
components:
total: 57
por_categoria:
ai:
- AIChat.tsx
- AISettings.tsx
- ChatMessage.tsx
analytics:
- MetricCard.tsx
- TrendChart.tsx
audit:
- ActivityTimeline.tsx
- AuditFilters.tsx
- AuditLogRow.tsx
- AuditStatsCard.tsx
auth:
- OAuthButtons.tsx
common:
- ExportButton.tsx
- ExportModal.tsx
feature-flags:
- FeatureFlagCard.tsx
- FeatureFlagForm.tsx
- TenantOverridesPanel.tsx
goals:
- GoalAssignmentCard.tsx
- GoalCard.tsx
- GoalFilters.tsx
- GoalForm.tsx
- GoalProgressBar.tsx
- GoalsKPIGrid.tsx
- ProgressLogForm.tsx
- ProgressLogList.tsx
mlm:
- CommissionsSummary.tsx
- DownlineList.tsx
- MLMStatsCard.tsx
- NetworkTree.tsx
- NodeCard.tsx
- NodeStatusBadge.tsx
- RankBadge.tsx
- StructureCard.tsx
notifications:
- ChannelConfig.tsx
- DevicesManager.tsx
- NotificationBell.tsx
- NotificationDrawer.tsx
- NotificationItem.tsx
- PushPermissionBanner.tsx
- TemplateCard.tsx
- TemplateForm.tsx
- TemplatePreview.tsx
portfolio:
- CategoryForm.tsx
- CategoryTree.tsx
- PriceTable.tsx
- ProductCard.tsx
- ProductFilters.tsx
- VariantList.tsx
rbac:
- PermissionsMatrix.tsx
- RoleCard.tsx
- RoleForm.tsx
storage:
- FileItem.tsx
- FileList.tsx
- FileUpload.tsx
- StorageUsageCard.tsx
webhooks:
- WebhookCard.tsx
- WebhookDeliveryList.tsx
- WebhookForm.tsx
whatsapp:
- WhatsAppTestMessage.tsx
conteo_por_modulo:
ai: 3
analytics: 2
audit: 4
auth: 1
common: 2
feature-flags: 3
goals: 8
mlm: 8
notifications: 9
portfolio: 6
rbac: 3
storage: 4
webhooks: 3
whatsapp: 1
nuevos_sprint_1:
rbac:
- RoleCard.tsx
- RoleForm.tsx
- PermissionsMatrix.tsx
notifications:
- TemplateCard.tsx
- TemplateForm.tsx
- TemplatePreview.tsx
- ChannelConfig.tsx
audit:
- AuditFilters.tsx (mejorado)
- AuditStatsCard.tsx (mejorado)
nuevos_sprint_2:
portfolio:
- CategoryTree.tsx
- CategoryForm.tsx
- ProductCard.tsx
- ProductFilters.tsx
- VariantList.tsx
- PriceTable.tsx
mlm:
- NetworkTree.tsx
- StructureCard.tsx
- NodeCard.tsx
- RankBadge.tsx
- NodeStatusBadge.tsx
- MLMStatsCard.tsx
- DownlineList.tsx
- CommissionsSummary.tsx
goals:
- GoalProgressBar.tsx
- GoalCard.tsx
- GoalAssignmentCard.tsx
- GoalFilters.tsx
- GoalForm.tsx
- ProgressLogList.tsx
- ProgressLogForm.tsx
- GoalsKPIGrid.tsx
hooks:
total_archivos: 24
archivos:
- index.ts
- query-keys.ts
- useAI.ts
- useAnalytics.ts
- useAudit.ts
- useAuth.ts
- useCommissions.ts
- useData.ts
- useExport.ts
- useFeatureFlags.ts
- useGoals.ts
- useMfa.ts
- useMlm.ts
- useNotifications.ts
- useOAuth.ts
- useOnboarding.ts
- usePortfolio.ts
- usePushNotifications.ts
- useRbac.ts
- useSales.ts
- useStorage.ts
- useSuperadmin.ts
- useWebhooks.ts
- useWhatsApp.ts
stores:
total: 3
archivos:
- auth.store.ts
- ui.store.ts
- index.ts
nota: "authStore y uiStore implementados. Otros stores (tenant, subscription, notification, feature-flag) referenciados pero no como archivos separados"
services:
total: 26
categorias:
core:
- api.ts (axios instance)
- auth.api.ts
- tenants.api.ts
- users.api.ts
billing:
- billing.api.ts
- plans.api.ts
features:
- notifications.api.ts
- storage.api.ts
- ai.api.ts
- webhooks.api.ts
- audit.api.ts
- feature-flags.api.ts
- onboarding.api.ts
- whatsapp.api.ts
sales:
- sales/leads.api.ts
- sales/opportunities.api.ts
- sales/activities.api.ts
- sales/pipeline.api.ts
- sales/dashboard.api.ts
commissions:
- commissions/schemes.api.ts
- commissions/assignments.api.ts
- commissions/entries.api.ts
- commissions/periods.api.ts
- commissions/dashboard.api.ts
portfolio:
- portfolio/categories.api.ts
- portfolio/products.api.ts
tests:
total_archivos: 13
archivos:
components:
- ExportButton.test.tsx
- NotificationBell.test.tsx
- goals/GoalProgressBar.test.tsx
- mlm/RankBadge.test.tsx
- rbac/RoleForm.test.tsx
hooks:
- useAuth.test.tsx
- useGoals.test.tsx
- useMlm.test.tsx
- usePortfolio.test.tsx
- useRbac.test.tsx
stores:
- auth.store.test.ts
- ui.store.test.ts
utils:
- helpers.test.ts
nota_sprint_3: "Sprint 3 agrego tests unitarios para hooks (useGoals, useMlm, usePortfolio, useRbac) y componentes (GoalProgressBar, RankBadge, RoleForm)"
mejoras_wcag_sprint_3:
- AuditFilters.tsx
- AuditStatsCard.tsx
- RoleForm.tsx
- GoalProgressBar.tsx
- RankBadge.tsx
- NotificationBell.tsx
- ExportButton.tsx
- ExportModal.tsx
- MetricCard.tsx
- TrendChart.tsx
- FileUpload.tsx
resumen:
nota_auditoria: "ACTUALIZACION 2026-02-03: Post Sprint 1-3"
total_pages: 65
total_components: 57
total_hooks_archivos: 24
total_stores: 3
total_api_services: 26
total_tests_archivos: 13
planificado:
pages_actuales: 65
pages_objetivo: 65
components_actuales: 57
components_objetivo: 60
stores_actuales: 3
stores_objetivo: 6
hooks_actuales: 24
hooks_objetivo: 24
nota: "Sprint 1-3 completados. UI para todos los modulos implementada"
gaps_identificados:
criticos: []
altos: []
medios:
- "Stores adicionales (tenant, subscription, notification, feature-flag) a separar en archivos individuales"
resueltos_2026_02_03:
- "Sprint 1: RBAC pages (3), Notifications TemplatesPage, componentes RBAC y Notifications"
- "Sprint 2: Portfolio pages (3 nuevas), MLM NodesPage, Goals pages (2 nuevas), 22 componentes nuevos"
- "Sprint 3: 13 archivos de tests, mejoras WCAG en 11 componentes"
dependencias_npm:
core:
- "react@19.0.0"
- "react-dom@19.0.0"
- "react-router-dom@6.x"
- "vite@6.0.6"
state:
- "zustand@5.0.2"
- "@tanstack/react-query"
forms:
- "react-hook-form@7.54.2"
- "zod"
- "@hookform/resolvers"
styling:
- "tailwindcss@3.4.17"
- "@headlessui/react"
- "@heroicons/react"
utils:
- "axios"
- "date-fns"
- "clsx"
notifications:
- "socket.io-client"
testing:
- "vitest@4.0.17"
- "@testing-library/react@16.3.1"
ultima_actualizacion: "2026-02-03"
actualizado_por: "Claude Opus 4.5 (ST-4.2-UPDATE-INVENTORY)"
historial_cambios:
- fecha: "2026-02-03"
tipo: "actualizacion_inventario"
descripcion: "ST-4.2-UPDATE-INVENTORY: Actualizacion post Sprint 1-3. 65 pages, 57 components, 13 test files, 24 hook files"
agente: "Claude Opus 4.5 (ST-4.2-UPDATE-INVENTORY)"
cambios_principales:
- "Sprint 1: RBAC pages (RolesPage, RoleDetailPage, PermissionsPage), TemplatesPage, componentes RBAC/Notifications"
- "Sprint 2: Portfolio pages (CategoryDetailPage, ProductDetailPage, ProductFormPage), NodesPage MLM, Goals pages (AssignmentsPage, DefinitionFormPage)"
- "Sprint 2: 22 componentes nuevos (Portfolio, MLM, Goals)"
- "Sprint 3: 13 archivos de tests, mejoras WCAG 11 componentes"
- fecha: "2026-01-25"
tipo: "implementacion"
descripcion: "SAAS-019 Portfolio: 21 React Query hooks y 2 API services (categories.api.ts, products.api.ts)"
agente: "Claude Opus 4.5 (SAAS-019 Portfolio)"
- fecha: "2026-01-25"
tipo: "implementacion"
descripcion: "4 Zustand stores implementados (tenant, subscription, notification, feature-flag)"
agente: "Claude Opus 4.5 (Correccion Gaps Cross-Project)"
- fecha: "2026-01-24"
tipo: "correccion_critica"
descripcion: "CORRECCION: Sales (6 paginas) y Commissions (5 paginas) SI implementados"
agente: "Claude Opus 4.5 (Validacion de Coherencia)"