diff --git a/.env.example b/.env.example index 38f42b9..e30a435 100644 --- a/.env.example +++ b/.env.example @@ -36,7 +36,7 @@ SESSION_DOMAIN=null BROADCAST_CONNECTION=log FILESYSTEM_DISK=local -QUEUE_CONNECTION=database +QUEUE_CONNECTION=redis CACHE_STORE=redis CACHE_PREFIX= diff --git a/composer.json b/composer.json index 70aa88e..da20c7d 100644 --- a/composer.json +++ b/composer.json @@ -2,7 +2,7 @@ "$schema": "https://getcomposer.org/schema.json", "name": "koneko-st/agroform-website", "description": "Sitio Web de Agroform basado en Laravel Vuexy Admin México.", - "keywords": ["laravel", "vuexy", "admin", "mexico", "koneko", "website", "agroform"], + "keywords": ["laravel", "vuexy", "admin", "mexico", "koneko", "website", "agroform", "faq", "chatbot"], "type": "project", "license": "proprietary", "private": true, @@ -11,10 +11,13 @@ "koneko/laravel-vuexy-admin": "dev-main", "koneko/laravel-vuexy-website-admin": "dev-main", "koneko/laravel-vuexy-website-layout-porto": "dev-main", + "koneko/laravel-vuexy-website-blog": "dev-main", + "koneko/laravel-vuexy-chatbot": "dev-main", "laravel/framework": "^11.31", "laravel/tinker": "^2.9" }, "require-dev": { + "barryvdh/laravel-debugbar": "*", "fakerphp/faker": "^1.23", "laravel/pint": "^1.13", "nunomaduro/collision": "^8.1" @@ -40,6 +43,20 @@ "options": { "symlink": true } + }, + "koneko/laravel-vuexy-website-blog": { + "type": "path", + "url": "../laravel-modules/laravel-vuexy-website-blog", + "options": { + "symlink": true + } + }, + "koneko/laravel-vuexy-chatbot": { + "type": "path", + "url": "../laravel-modules/laravel-vuexy-chatbot", + "options": { + "symlink": true + } } }, "autoload": { diff --git a/config/vuexy_menu.php b/config/vuexy_menu.php index 187ba8c..b589ead 100644 --- a/config/vuexy_menu.php +++ b/config/vuexy_menu.php @@ -1,9 +1,9 @@ [ 'breadcrumbs' => false, 'icon' => 'menu-icon tf-icons ti ti-home', + 'description' => 'Accede rápidamente a las funciones principales y configuraciones del sistema.', 'submenu' => [ 'Inicio' => [ 'icon' => 'menu-icon tf-icons ti ti-home', @@ -13,46 +13,65 @@ return [ 'icon' => 'menu-icon tf-icons ti ti-world-www', 'url' => env('APP_URL'), ], - 'Ajustes' => [ - 'icon' => 'menu-icon tf-icons ti ti-settings-cog', - 'submenu' => [ - 'Aplicación' => [ - 'submenu' => [ - 'Ajustes generales' => [ - 'route' => 'admin.core.general-settings.index', - 'can' => 'admin.core.general-settings.allow', - ], - 'Ajustes de caché' => [ - 'route' => 'admin.core.cache-manager.index', - 'can' => 'admin.core.cache-manager.view', - ], - 'Servidor de correo SMTP' => [ - 'route' => 'admin.core.smtp-settings.index', - 'can' => 'admin.core.smtp-settings.allow', - ], - ], - ], - ] - ], - 'Sistema' => [ + 'Usuarios y permisos' => [ 'icon' => 'menu-icon tf-icons ti ti-user-cog', + 'description' => 'Gestiona usuarios, roles y permisos de acceso dentro del sistema.', 'submenu' => [ 'Usuarios' => [ + 'icon' => 'menu-icon tf-icons ti ti-users', 'route' => 'admin.core.users.index', 'can' => 'admin.core.users.view', ], 'Roles' => [ + 'icon' => 'menu-icon tf-icons ti ti-lock-access', 'route' => 'admin.core.roles.index', 'can' => 'admin.core.roles.view', ], 'Permisos' => [ + 'icon' => 'menu-icon tf-icons ti ti-key', 'route' => 'admin.core.permissions.index', 'can' => 'admin.core.permissions.view', ] ] ], - 'Configuración de cuenta' => [ - 'icon' => 'menu-icon tf-icons ti ti-user-cog', + 'Ajustes generales' => [ + 'icon' => 'menu-icon tf-icons ti ti-settings-cog', + 'description' => 'Configura los parámetros generales y optimiza el rendimiento del ERP.', + 'submenu' => [ + 'Ajustes de aplicación' => [ + 'icon' => 'menu-icon tf-icons ti ti-device-desktop-cog', + 'description' => 'Configuraciones globales del sistema.', + 'route' => 'admin.core.general-settings.index', + 'can' => 'admin.core.general-settings.view', + ], + 'Caché de sistema' => [ + 'icon' => 'menu-icon tf-icons ti ti-cpu', + 'description' => 'Administración y limpieza de caché para mejorar el rendimiento.', + 'route' => 'admin.core.cache-manager.index', + 'can' => 'admin.core.cache-manager.view', + ], + 'Ajustes de interfaz' => [ + 'icon' => 'menu-icon tf-icons ti ti-template', + 'description' => 'Configuración de la apariencia y comportamiento de la interfaz.', + 'route' => 'admin.core.interface-settings.index', + 'can' => 'admin.core.interface-settings.view', + ], + 'Servidor de correo SMTP' => [ + 'icon' => 'menu-icon tf-icons ti ti-mail-cog', + 'description' => 'Configuración de los servidores de correo para notificaciones.', + 'route' => 'admin.core.smtp-settings.index', + 'can' => 'admin.core.smtp-settings.view', + ], + 'Configuraciones globales' => [ + 'icon' => 'menu-icon tf-icons ti ti-settings-code', + 'description' => 'Configuración de parámetros globales del sistema.', + 'route' => 'admin.core.global-settings.index', + 'can' => 'admin.core.global-settings.view', + ] + ] + ], + 'Cuenta de usuario' => [ + 'icon' => 'menu-icon tf-icons ti ti-user', 'route' => 'admin.core.user-profile.index', ], 'Acerca de' => [ @@ -61,67 +80,92 @@ return [ ], ], ], - 'Herramientas avanzadas' => [ - 'icon' => 'menu-icon tf-icons ti ti-device-ipad-cog', - 'submenu' => [ - 'Asistente AI' => [ - 'icon' => 'menu-icon tf-icons ti ti-brain', - 'submenu' => [ - 'Panel de IA' => [ - 'route' => 'admin.ai.dashboard.index', - 'can' => 'admin.ai.dashboard.view', - ], - 'Generación de contenidos' => [ - 'route' => 'admin.ai.content.index', - 'can' => 'admin.ai.content.create', - ], - 'Análisis de datos' => [ - 'route' => 'admin.ai.analytics.index', - 'can' => 'admin.ai.analytics.view', - ], - ], - ], - 'Chatbot' => [ - 'icon' => 'menu-icon tf-icons ti ti-message-chatbot', - 'submenu' => [ - 'Configuración' => [ - 'route' => 'admin.chatbot.config.index', - 'can' => 'admin.chatbot.config.view', - ], - 'Flujos de conversación' => [ - 'route' => 'admin.chatbot.flows.index', - 'can' => 'admin.chatbot.flows.manage', - ], - 'Historial de interacciones' => [ - 'route' => 'admin.chatbot.history.index', - 'can' => 'admin.chatbot.history.view', - ], - ], - ], - ], - ], 'Sitio web' => [ 'icon' => 'menu-icon tf-icons ti ti-tools', + 'description' => 'Administra la configuración y contenido de tu sitio web empresarial.', 'submenu' => [ 'Ajustes generales' => [ 'icon' => 'menu-icon tf-icons ti ti-tools', - 'route' => 'admin.website.general-settings.index', - 'can' => 'admin.website.general-settings.allow', + 'route' => 'admin.website-admin.general-settings.index', + 'can' => 'admin.website-admin.general-settings.view', ], 'Avisos legales' => [ 'icon' => 'menu-icon tf-icons ti ti-writing-sign', - 'route' => 'admin.website.legal.index', - 'can' => 'admin.website.legal.view', + 'route' => 'admin.website-admin.legal-notices.index', + 'can' => 'admin.website-admin.legal-notices.view', ], 'Preguntas frecuentes' => [ 'icon' => 'menu-icon tf-icons ti ti-bubble-text', - 'route' => 'admin.website.faq.index', - 'can' => 'admin.website.faq.view', + 'route' => 'admin.website-admin.faq.index', + 'can' => 'admin.website-admin.faq.view', + ], + 'Redes sociales' => [ + 'icon' => 'menu-icon tf-icons ti ti-share', + 'route' => 'admin.website-admin.social-media.index', + 'can' => 'admin.website-admin.social-media.view', + ], + 'Chat' => [ + 'icon' => 'menu-icon tf-icons ti ti-message-cog', + 'route' => 'admin.website-admin.chat.index', + 'can' => 'admin.website-admin.chat.view', + ], + 'Galería de imágenes' => [ + 'icon' => 'menu-icon tf-icons ti ti-photo-cog', + 'route' => 'admin.website-admin.images.index', + 'can' => 'admin.website-admin.images.view', + ], + 'Google analytics' => [ + 'icon' => 'menu-icon tf-icons ti ti-chart-scatter-3d', + 'route' => 'admin.website-admin.google-analytics.index', + 'can' => 'admin.website-admin.google-analytics.view', + ], + 'Información de contacto' => [ + 'icon' => 'menu-icon tf-icons ti ti-device-mobile-message', + 'route' => 'admin.website-admin.contact-info.index', + 'can' => 'admin.website-admin.contact-info.view', + ], + 'Formulario de contacto' => [ + 'icon' => 'menu-icon tf-icons ti ti-mail-cog', + 'route' => 'admin.website-admin.contact-form.index', + 'can' => 'admin.website-admin.contact-form.view', + ], + 'Mapa del sitio' => [ + 'icon' => 'menu-icon tf-icons ti ti-hierarchy', + 'route' => 'admin.website-admin.sitemap.index', + 'can' => 'admin.website-admin.sitemap.view', ], ] ], + 'Porto Template' => [ + 'icon' => 'menu-icon tf-icons ti ti-template', + 'description' => 'Gestiona la plantilla Porto, sus widgets y elementos de diseño.', + 'submenu' => [ + 'Porto Template' => [ + 'icon' => 'menu-icon tf-icons ti ti-template', + 'route' => 'admin.website-porto-layout.template.index', + 'can' => 'admin.website-porto-layout.template.view', + ], + 'Banners' => [ + 'icon' => 'menu-icon tf-icons ti ti-slideshow', + 'route' => 'admin.website-porto-layout.banners.index', + 'can' => 'admin.website-porto-layout.banners.view', + ], + 'Porto Widgets' => [ + 'icon' => 'menu-icon tf-icons ti ti-fidget-spinner', + 'route' => 'admin.website-porto-layout.widgets.index', + 'can' => 'admin.website-porto-layout.widgets.view', + ], + 'CSS personalizado' => [ + 'icon' => 'menu-icon tf-icons ti ti-file-type-css', + 'route' => 'admin.website-porto-layout.custom-css.index', + 'can' => 'admin.website-porto-layout.custom-css.view', + ], + ] + ], + 'Blog' => [ 'icon' => 'menu-icon tf-icons ti ti-news', + 'description' => 'Publica, edita y organiza artículos, categorías y comentarios de tu blog.', 'submenu' => [ 'Categorias' => [ 'icon' => 'menu-icon tf-icons ti ti-category', @@ -145,59 +189,128 @@ return [ ], ] ], - 'Contratos' => [ - 'icon' => 'menu-icon tf-icons ti ti-writing-sign', + + 'Chatbot' => [ + 'icon' => 'menu-icon tf-icons ti ti-robot', + 'description' => 'Configura y monitorea el chatbot de atención al cliente y soporte automático.', 'submenu' => [ - 'Mis contratos' => [ - 'icon' => 'menu-icon tf-icons ti ti-file-description', - 'route' => 'admin.contracts.index', - 'can' => 'admin.contracts.view', + 'Dashboard Chatbot' => [ + 'icon' => 'menu-icon tf-icons ti ti-dashboard', + 'route' => 'client.chatbot.dashboard.index', + 'can' => 'client.chatbot.dashboard.view', ], - 'Firmar contrato' => [ - 'icon' => 'menu-icon tf-icons ti ti-signature', - 'route' => 'admin.contracts.sign', - 'can' => 'admin.contracts.sign', + + 'Conversaciones' => [ + 'icon' => 'menu-icon tf-icons ti ti-messages', + 'submenu' => [ + 'Mis Conversaciones' => [ + 'icon' => 'menu-icon tf-icons ti ti-message-chatbot', + 'route' => 'client.chatbot.my-conversations.index', + 'can' => 'client.chatbot.my-conversations.view', + ], + 'Conversaciones de Clientes' => [ + 'icon' => 'menu-icon tf-icons ti ti-users', + 'route' => 'client.chatbot.customers-conversations.index', + 'can' => 'client.chatbot.customers-conversations.view', + ], + 'Conversaciones de Empleados' => [ + 'icon' => 'menu-icon tf-icons ti ti-id-badge-2', + 'route' => 'client.chatbot.employees-conversations.index', + 'can' => 'client.chatbot.employees-conversations.view', + ], + 'Visitantes Anónimos' => [ + 'icon' => 'menu-icon tf-icons ti ti-user-question', + 'route' => 'client.chatbot.guests.index', + 'can' => 'client.chatbot.guests.view', + ], + ], ], - 'Contratos automatizados' => [ - 'icon' => 'menu-icon tf-icons ti ti-robot', - 'route' => 'admin.contracts.automated', - 'can' => 'admin.contracts.automated.view', + + 'Bases de Conocimiento' => [ + 'icon' => 'menu-icon tf-icons ti ti-books', + 'submenu' => [ + 'Preguntas Frecuentes' => [ + 'icon' => 'menu-icon tf-icons ti ti-bubble-text', + 'route' => 'client.chatbot.faq.index', + 'can' => 'client.chatbot.faq.view', + ], + 'Entrenamiento del Bot' => [ + 'icon' => 'menu-icon tf-icons ti ti-school', + 'route' => 'client.chatbot.training.index', + 'can' => 'client.chatbot.training.manage', + ], + 'Documentos y Recursos' => [ + 'icon' => 'menu-icon tf-icons ti ti-file-description', + 'route' => 'client.chatbot.resources.index', + 'can' => 'client.chatbot.resources.view', + ], + ], ], - 'Historial de contratos' => [ - 'icon' => 'menu-icon tf-icons ti ti-archive', - 'route' => 'admin.contracts.history', - 'can' => 'admin.contracts.history.view', - ], - ] - ], - 'Atención al cliente' => [ - 'icon' => 'menu-icon tf-icons ti ti-messages', - 'submenu' => [ - 'Tablero' => [ + + 'Analítica y Monitoreo' => [ 'icon' => 'menu-icon tf-icons ti ti-chart-infographic', - 'route' => 'admin.sales.dashboard.index', - 'can' => 'admin.ticketing.dashboard.view', + 'submenu' => [ + 'Estadísticas Generales' => [ + 'icon' => 'menu-icon tf-icons ti ti-chart-bar', + 'route' => 'client.chatbot.analytics.general.index', + 'can' => 'client.chatbot.analytics.general.view', + ], + 'Uso por Clientes' => [ + 'icon' => 'menu-icon tf-icons ti ti-users', + 'route' => 'client.chatbot.analytics.customers.index', + 'can' => 'client.chatbot.analytics.customers.view', + ], + 'Uso por Sucursal' => [ + 'icon' => 'menu-icon tf-icons ti ti-building-store', + 'route' => 'client.chatbot.analytics.branch.index', + 'can' => 'client.chatbot.analytics.branch.view', + ], + 'Reportes Avanzados' => [ + 'icon' => 'menu-icon tf-icons ti ti-report-analytics', + 'route' => 'client.chatbot.analytics.advanced.index', + 'can' => 'client.chatbot.analytics.advanced.view', + ], + ], ], - 'Mis tickets' => [ - 'icon' => 'menu-icon tf-icons ti ti-ticket', - 'route' => 'admin.ticketing.tickets.index', - 'can' => 'admin.ticketing.tickets.view', + + 'Configuración Avanzada' => [ + 'icon' => 'menu-icon tf-icons ti ti-settings-cog', + 'submenu' => [ + 'Selección Proveedor IA' => [ + 'icon' => 'menu-icon tf-icons ti ti-brain', + 'route' => 'client.chatbot.settings.providers.index', + 'can' => 'client.chatbot.providers-config.manage', + ], + 'Parámetros del Bot' => [ + 'icon' => 'menu-icon tf-icons ti ti-adjustments', + 'route' => 'client.chatbot.settings.parameters.index', + 'can' => 'client.chatbot.settings.parameters.manage', + ], + 'Presupuesto Mensual IA' => [ + 'icon' => 'menu-icon tf-icons ti ti-wallet', + 'route' => 'client.chatbot.settings.budget.index', + 'can' => 'client.chatbot.settings.budget.manage', + ], + ], ], - 'Crear ticket' => [ - 'icon' => 'menu-icon tf-icons ti ti-square-plus', - 'route' => 'admin.ticketing.tickets.create', - 'can' => 'admin.ticketing.tickets.create', + + 'Preferencias Personales' => [ + 'icon' => 'menu-icon tf-icons ti ti-user-cog', + 'submenu' => [ + 'Preferencias de Notificación' => [ + 'icon' => 'menu-icon tf-icons ti ti-bell', + 'route' => 'client.chatbot.notifications.index', + 'can' => 'client.chatbot.notifications.view', + ], + 'Privacidad y Datos Personales' => [ + 'icon' => 'menu-icon tf-icons ti ti-lock', + 'route' => 'client.chatbot.privacy.index', + 'can' => 'client.chatbot.privacy.view', + ], + ], ], - 'Categorías de tickets' => [ - 'icon' => 'menu-icon tf-icons ti ti-category', - 'route' => 'admin.ticketing.categories.index', - 'can' => 'admin.ticketing.categories.view', - ], - 'Estadísticas de atención' => [ - 'icon' => 'menu-icon tf-icons ti ti-chart-bar', - 'route' => 'admin.ticketing.analytics.index', - 'can' => 'admin.ticketing.analytics.view', - ], - ] + + ], ], + ]; diff --git a/database/data/rbac-config.json b/database/data/rbac-config.json index 541574d..efcae45 100644 --- a/database/data/rbac-config.json +++ b/database/data/rbac-config.json @@ -3,146 +3,404 @@ "SuperAdmin" : { "style": "dark", "permissions" : [ - "admin.core.general-settings.allow", + "admin.core.general-settings.view", + "admin.core.general-settings.update", "admin.core.cache-manager.view", - "admin.core.smtp-settings.allow", + "admin.core.cache-manager.update", + "admin.core.smtp-settings.view", + "admin.core.smtp-settings.update", + "admin.core.interface-settings.view", + "admin.core.interface-settings.update", "admin.core.users.view", + "admin.core.users.create", + "admin.core.users.update", + "admin.core.users.delete", "admin.core.roles.view", + "admin.core.roles.create", + "admin.core.roles.update", + "admin.core.roles.delete", "admin.core.permissions.view", - "admin.core.import-sat-catalogs.allow", - "admin.ai.dashboard.view", - "admin.ai.content.create", - "admin.ai.analytics.view", - "admin.chatbot.config.view", - "admin.chatbot.flows.manage", - "admin.chatbot.history.view", - "admin.website.general-settings.allow", - "admin.website.legal.view", - "admin.website.faq.view", + "admin.core.permissions.create", + "admin.core.permissions.update", + "admin.core.permissions.delete", + "admin.core.global-settings.view", + "admin.core.global-settings.update", + + "admin.website-admin.general-settings.view", + "admin.website-admin.general-settings.update", + "admin.website-admin.legal-notices.view", + "admin.website-admin.legal-notices.update", + "admin.website-admin.faq.view", + "admin.website-admin.faq.create", + "admin.website-admin.faq.update", + "admin.website-admin.faq.delete", + "admin.website-admin.social-media.view", + "admin.website-admin.social-media.update", + "admin.website-admin.chat.view", + "admin.website-admin.chat.update", + "admin.website-admin.images.view", + "admin.website-admin.images.create", + "admin.website-admin.images.update", + "admin.website-admin.images.delete", + "admin.website-admin.contact-form.view", + "admin.website-admin.contact-form.update", + "admin.website-admin.google-analytics.view", + "admin.website-admin.google-analytics.update", + "admin.website-admin.contact-info.view", + "admin.website-admin.contact-info.update", + "admin.website-admin.sitemap.view", + "admin.website-admin.sitemap.update", + "admin.blog.categories.view", + "admin.blog.categories.create", + "admin.blog.categories.update", + "admin.blog.categories.delete", "admin.blog.tags.view", + "admin.blog.tags.create", + "admin.blog.tags.update", + "admin.blog.tags.delete", "admin.blog.articles.view", + "admin.blog.articles.create", + "admin.blog.articles.update", + "admin.blog.articles.delete", "admin.blog.comments.view", - "admin.contacts.contacts.view", - "admin.contacts.employees.view", - "admin.contacts.employees.create", - "admin.contacts.customers.view", - "admin.contacts.suppliers.view", - "admin.contracts.view", - "admin.contracts.sign", - "admin.contracts.automated.view", - "admin.contracts.history.view", - "admin.ticketing.dashboard.view", - "admin.ticketing.tickets.view", - "admin.ticketing.tickets.create", - "admin.ticketing.categories.view", - "admin.ticketing.analytics.view" + "admin.blog.comments.create", + "admin.blog.comments.update", + "admin.blog.comments.delete", + + "admin.website-porto-layout.banners.view", + "admin.website-porto-layout.banners.create", + "admin.website-porto-layout.banners.update", + "admin.website-porto-layout.banners.delete", + "admin.website-porto-layout.template.view", + "admin.website-porto-layout.template.update", + "admin.website-porto-layout.widgets.view", + "admin.website-porto-layout.widgets.create", + "admin.website-porto-layout.widgets.update", + "admin.website-porto-layout.widgets.delete", + "admin.website-porto-layout.custom-css.view", + "admin.website-porto-layout.custom-css.update", + + "client.chatbot.dashboard.view", + "client.chatbot.my-conversations.view", + "client.chatbot.customers-conversations.view", + "client.chatbot.employees-conversations.view", + "client.chatbot.guests.view", + "client.chatbot.faq.view", + "client.chatbot.training.manage", + "client.chatbot.resources.view", + "client.chatbot.analytics.general.view", + "client.chatbot.analytics.customers.view", + "client.chatbot.analytics.branch.view", + "client.chatbot.analytics.advanced.view", + "client.chatbot.providers-config.manage", + "client.chatbot.settings.parameters.manage", + "client.chatbot.settings.budget.manage", + "client.chatbot.notifications.view", + "client.chatbot.privacy.view" + ] }, "Admin" : { "style": "primary", "permissions" : [ - "admin.core.general-settings.allow", + "admin.core.general-settings.view", + "admin.core.general-settings.update", "admin.core.cache-manager.view", - "admin.core.smtp-settings.allow", - "admin.website.general-settings.allow", - "admin.website.legal.view", + "admin.core.cache-manager.update", + "admin.core.smtp-settings.view", + "admin.core.smtp-settings.update", + "admin.core.interface-settings.view", + "admin.core.interface-settings.update", "admin.core.users.view", + "admin.core.users.create", + "admin.core.users.update", + "admin.core.users.delete", "admin.core.roles.view", - "admin.core.permissions.view", - "admin.core.import-sat-catalogs.allow", - "admin.contacts.contacts.view", - "admin.contacts.contacts.create", - "admin.contacts.employees.view", - "admin.contacts.employees.create", - "admin.contacts.customers.view", - "admin.contacts.customers.create", - "admin.contacts.suppliers.view", - "admin.contacts.suppliers.create" + "admin.core.roles.create", + "admin.core.roles.update", + "admin.core.roles.delete", + "admin.core.global-settings.view", + "admin.core.global-settings.update", + + "admin.website-admin.general-settings.view", + "admin.website-admin.general-settings.update", + "admin.website-admin.legal-notices.view", + "admin.website-admin.legal-notices.update", + "admin.website-admin.faq.view", + "admin.website-admin.faq.create", + "admin.website-admin.faq.update", + "admin.website-admin.faq.delete", + "admin.website-admin.social-media.view", + "admin.website-admin.social-media.update", + "admin.website-admin.chat.view", + "admin.website-admin.chat.update", + "admin.website-admin.images.view", + "admin.website-admin.images.create", + "admin.website-admin.images.update", + "admin.website-admin.images.delete", + "admin.website-admin.contact-form.view", + "admin.website-admin.contact-form.update", + "admin.website-admin.google-analytics.view", + "admin.website-admin.google-analytics.update", + "admin.website-admin.contact-info.view", + "admin.website-admin.contact-info.update", + "admin.website-admin.sitemap.view", + "admin.website-admin.sitemap.update", + + "admin.blog.categories.view", + "admin.blog.categories.create", + "admin.blog.categories.update", + "admin.blog.categories.delete", + "admin.blog.tags.view", + "admin.blog.tags.create", + "admin.blog.tags.update", + "admin.blog.tags.delete", + "admin.blog.articles.view", + "admin.blog.articles.create", + "admin.blog.articles.update", + "admin.blog.articles.delete", + "admin.blog.comments.view", + "admin.blog.comments.create", + "admin.blog.comments.update", + "admin.blog.comments.delete", + + "admin.website-porto-layout.banners.view", + "admin.website-porto-layout.banners.create", + "admin.website-porto-layout.banners.update", + "admin.website-porto-layout.banners.delete", + "admin.website-porto-layout.template.view", + "admin.website-porto-layout.template.update", + "admin.website-porto-layout.widgets.view", + "admin.website-porto-layout.widgets.create", + "admin.website-porto-layout.widgets.update", + "admin.website-porto-layout.widgets.delete", + "admin.website-porto-layout.custom-css.view", + "admin.website-porto-layout.custom-css.update", + + "client.chatbot.dashboard.view", + "client.chatbot.my-conversations.view", + "client.chatbot.customers-conversations.view", + "client.chatbot.employees-conversations.view", + "client.chatbot.guests.view", + "client.chatbot.faq.view", + "client.chatbot.training.manage", + "client.chatbot.resources.view", + "client.chatbot.analytics.general.view", + "client.chatbot.analytics.customers.view", + "client.chatbot.analytics.branch.view", + "client.chatbot.analytics.advanced.view", + "client.chatbot.providers-config.manage", + "client.chatbot.settings.parameters.manage", + "client.chatbot.settings.budget.manage", + "client.chatbot.notifications.view", + "client.chatbot.privacy.view" + ] }, "Administrador Web" : { "style": "primary", - "permissions" : [] + "permissions" : [ + "admin.website-admin.general-settings.view", + "admin.website-admin.general-settings.update", + "admin.website-admin.legal-notices.view", + "admin.website-admin.legal-notices.update", + "admin.website-admin.faq.view", + "admin.website-admin.faq.create", + "admin.website-admin.faq.update", + "admin.website-admin.faq.delete", + "admin.website-admin.social-media.view", + "admin.website-admin.social-media.update", + "admin.website-admin.chat.view", + "admin.website-admin.chat.update", + "admin.website-admin.images.view", + "admin.website-admin.images.create", + "admin.website-admin.images.update", + "admin.website-admin.images.delete", + "admin.website-admin.contact-form.view", + "admin.website-admin.contact-form.update", + "admin.website-admin.google-analytics.view", + "admin.website-admin.google-analytics.update", + "admin.website-admin.contact-info.view", + "admin.website-admin.contact-info.update", + "admin.website-admin.sitemap.view", + "admin.website-admin.sitemap.update", + + "admin.blog.categories.view", + "admin.blog.categories.create", + "admin.blog.categories.update", + "admin.blog.categories.delete", + "admin.blog.tags.view", + "admin.blog.tags.create", + "admin.blog.tags.update", + "admin.blog.tags.delete", + "admin.blog.articles.view", + "admin.blog.articles.create", + "admin.blog.articles.update", + "admin.blog.articles.delete", + "admin.blog.comments.view", + "admin.blog.comments.create", + "admin.blog.comments.update", + "admin.blog.comments.delete", + + "admin.website-porto-layout.banners.view", + "admin.website-porto-layout.banners.create", + "admin.website-porto-layout.banners.update", + "admin.website-porto-layout.banners.delete", + "admin.website-porto-layout.template.view", + "admin.website-porto-layout.template.update", + "admin.website-porto-layout.widgets.view", + "admin.website-porto-layout.widgets.create", + "admin.website-porto-layout.widgets.update", + "admin.website-porto-layout.widgets.delete", + "admin.website-porto-layout.custom-css.view", + "admin.website-porto-layout.custom-css.update" + ] }, "Editor" : { "style": "primary", - "permissions" : [] + "permissions" : [ + "admin.blog.categories.view", + "admin.blog.categories.create", + "admin.blog.categories.update", + "admin.blog.categories.delete", + "admin.blog.tags.view", + "admin.blog.tags.create", + "admin.blog.tags.update", + "admin.blog.tags.delete", + "admin.blog.articles.view", + "admin.blog.articles.create", + "admin.blog.articles.update", + "admin.blog.articles.delete", + "admin.blog.comments.view", + "admin.blog.comments.create", + "admin.blog.comments.update", + "admin.blog.comments.delete" + ] }, "Auditor" : { "style": "dark", "permissions" : [ + "admin.core.general-settings.view", "admin.core.cache-manager.view", + "admin.core.smtp-settings.view", "admin.core.users.view", "admin.core.roles.view", "admin.core.permissions.view", - "admin.ai.dashboard.view", - "admin.ai.analytics.view", - "admin.chatbot.config.view", - "admin.chatbot.history.view", - "admin.iot.devices.view", - "admin.iot.monitoring.view", - "admin.website.legal.view", - "admin.website.faq.view", + "admin.website-admin.general-settings.view", + "admin.website-admin.legal-notices.view", + "admin.website-admin.faq.view", + "admin.website-admin.social-media.view", + "admin.website-admin.chat.view", + "admin.website-admin.images.view", + "admin.website-admin.contact-form.view", "admin.blog.categories.view", "admin.blog.tags.view", "admin.blog.articles.view", "admin.blog.comments.view", - "admin.contacts.contacts.view", - "admin.contacts.employees.view", - "admin.contacts.customers.view", - "admin.contacts.suppliers.view", - "admin.contracts.view", - "admin.contracts.automated.view", - "admin.contracts.history.view", - "admin.ticketing.dashboard.view", - "admin.ticketing.tickets.view", - "admin.ticketing.categories.view", - "admin.ticketing.analytics.view" + "admin.website-porto-layout.banners.view", + "admin.website-porto-layout.template.view", + "admin.website-porto-layout.widgets.view" ] } }, "permissions": [ - "admin.core.general-settings.allow", + "admin.core.general-settings.view", + "admin.core.general-settings.update", "admin.core.cache-manager.view", - "admin.core.smtp-settings.allow", + "admin.core.cache-manager.update", + "admin.core.smtp-settings.view", + "admin.core.smtp-settings.update", + "admin.core.interface-settings.view", + "admin.core.interface-settings.update", "admin.core.users.view", + "admin.core.users.create", + "admin.core.users.update", + "admin.core.users.delete", "admin.core.roles.view", + "admin.core.roles.create", + "admin.core.roles.update", + "admin.core.roles.delete", "admin.core.permissions.view", - "admin.core.import-sat-catalogs.allow", - "admin.ai.dashboard.view", - "admin.ai.content.create", - "admin.ai.analytics.view", - "admin.chatbot.config.view", - "admin.chatbot.flows.manage", - "admin.chatbot.history.view", - "admin.iot.devices.view", - "admin.iot.sensors.manage", - "admin.iot.monitoring.view", - "admin.website.general-settings.allow", - "admin.website.legal.view", - "admin.website.faq.view", + "admin.core.permissions.create", + "admin.core.permissions.update", + "admin.core.permissions.delete", + "admin.core.global-settings.view", + "admin.core.global-settings.update", + + "admin.website-admin.general-settings.view", + "admin.website-admin.general-settings.update", + "admin.website-admin.legal-notices.view", + "admin.website-admin.legal-notices.update", + "admin.website-admin.faq.view", + "admin.website-admin.faq.create", + "admin.website-admin.faq.update", + "admin.website-admin.faq.delete", + "admin.website-admin.social-media.view", + "admin.website-admin.social-media.update", + "admin.website-admin.chat.view", + "admin.website-admin.chat.update", + "admin.website-admin.images.view", + "admin.website-admin.images.create", + "admin.website-admin.images.update", + "admin.website-admin.images.delete", + "admin.website-admin.contact-form.view", + "admin.website-admin.contact-form.update", + "admin.website-admin.google-analytics.view", + "admin.website-admin.google-analytics.update", + "admin.website-admin.contact-info.view", + "admin.website-admin.contact-info.update", + "admin.website-admin.sitemap.view", + "admin.website-admin.sitemap.update", + "admin.blog.categories.view", + "admin.blog.categories.create", + "admin.blog.categories.update", + "admin.blog.categories.delete", "admin.blog.tags.view", + "admin.blog.tags.create", + "admin.blog.tags.update", + "admin.blog.tags.delete", "admin.blog.articles.view", + "admin.blog.articles.create", + "admin.blog.articles.update", + "admin.blog.articles.delete", "admin.blog.comments.view", - "admin.contacts.contacts.view", - "admin.contacts.contacts.create", - "admin.contacts.employees.view", - "admin.contacts.employees.create", - "admin.contacts.customers.view", - "admin.contacts.customers.create", - "admin.contacts.suppliers.view", - "admin.contacts.suppliers.create", - "admin.contracts.view", - "admin.contracts.sign", - "admin.contracts.automated.view", - "admin.contracts.history.view", - "admin.ticketing.dashboard.view", - "admin.ticketing.tickets.view", - "admin.ticketing.tickets.create", - "admin.ticketing.categories.view", - "admin.ticketing.analytics.view" + "admin.blog.comments.create", + "admin.blog.comments.update", + "admin.blog.comments.delete", + + "admin.website-porto-layout.banners.view", + "admin.website-porto-layout.banners.create", + "admin.website-porto-layout.banners.update", + "admin.website-porto-layout.banners.delete", + "admin.website-porto-layout.template.view", + "admin.website-porto-layout.template.update", + "admin.website-porto-layout.widgets.view", + "admin.website-porto-layout.widgets.create", + "admin.website-porto-layout.widgets.update", + "admin.website-porto-layout.widgets.delete", + "admin.website-porto-layout.custom-css.view", + "admin.website-porto-layout.custom-css.update", + + "client.chatbot.dashboard.view", + "client.chatbot.my-conversations.view", + "client.chatbot.customers-conversations.view", + "client.chatbot.employees-conversations.view", + "client.chatbot.guests.view", + "client.chatbot.faq.view", + "client.chatbot.training.manage", + "client.chatbot.resources.view", + "client.chatbot.analytics.general.view", + "client.chatbot.analytics.customers.view", + "client.chatbot.analytics.branch.view", + "client.chatbot.analytics.advanced.view", + "client.chatbot.providers-config.manage", + "client.chatbot.settings.parameters.manage", + "client.chatbot.settings.budget.manage", + "client.chatbot.notifications.view", + "client.chatbot.privacy.view" + ] } diff --git a/storage/debugbar/.gitignore b/storage/debugbar/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/storage/debugbar/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/vite.config.js b/vite.config.js index 302b621..b2e7c92 100644 --- a/vite.config.js +++ b/vite.config.js @@ -2,6 +2,7 @@ import { defineConfig } from 'vite'; import laravel from 'laravel-vite-plugin'; import html from '@rollup/plugin-html'; import { glob } from 'glob'; +import path from 'path'; /** * Obtener archivos desde el componente local @@ -77,6 +78,11 @@ export default defineConfig({ html(), libsWindowAssignment(), ], + resolve: { + alias: { + '@vuexy-admin': path.resolve(__dirname, 'vendor/koneko/laravel-vuexy-admin/resources/assets/js'), + }, + }, build: { emptyOutDir: true, rollupOptions: {