diff --git a/lib/alertas_provider.dart b/lib/alertas_provider.dart deleted file mode 100644 index 599f387..0000000 --- a/lib/alertas_provider.dart +++ /dev/null @@ -1,66 +0,0 @@ -import 'package:flutter/material.dart'; -import 'notificaciones_service.dart'; - -class AlertasOperativasProvider with ChangeNotifier { - final NotificacionesService _notificacionesService = NotificacionesService(); - - // Estados de los interruptores configurables por el usuario - bool _notificarInicioRuta = true; - bool _notificarAproximacion = true; - bool _notificarRetrasosFallas = true; - - // Getters para leer el estado desde las pantallas - bool get notificarInicioRuta => _notificarInicioRuta; - bool get notificarAproximacion => _notificarAproximacion; - bool get notificarRetrasosFallas => _notificarRetrasosFallas; - - // Funciones para cambiar los interruptores (Switches) - void cambiarNotificarInicioRuta(bool valor) { - _notificarInicioRuta = valor; - notifyListeners(); // Notifica a la interfaz que se redibuje - } - - void cambiarNotificarAproximacion(bool valor) { - _notificarAproximacion = valor; - notifyListeners(); - } - - void cambiarNotificarRetrasosFallas(bool valor) { - _notificarRetrasosFallas = valor; - notifyListeners(); - } - - // ========================================================= - // SIMULACIÓN DE DISPAROS DE ALERTAS PUSH REALES - // ========================================================= - - void simularAlertaInicioRuta() { - if (_notificarInicioRuta) { - _notificacionesService.mostrarNotificacionPush( - id: 1, - titulo: 'Ruta Iniciada 🟢', - mensaje: 'El camión recolector ha comenzado su recorrido hacia tu sector.', - ); - } - } - - void simularAlertaAproximacion() { - if (_notificarAproximacion) { - _notificacionesService.mostrarNotificacionPush( - id: 2, - titulo: 'Camión Cercano ⏰', - mensaje: 'El recolector llegará a tu domicilio en aproximadamente 15 minutos.', - ); - } - } - - void simularAlertaRetrasoOConversion() { - if (_notificarRetrasosFallas) { - _notificacionesService.mostrarNotificacionPush( - id: 3, - titulo: 'Retraso en la Ruta ⚠️', - mensaje: 'Aviso: Retraso operativo por tráfico pesado o fallas mecánicas en la zona.', - ); - } - } -} \ No newline at end of file diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift index d2b4c55..731c75a 100644 --- a/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -6,7 +6,9 @@ import FlutterMacOS import Foundation import flutter_local_notifications +import shared_preferences_foundation func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { FlutterLocalNotificationsPlugin.register(with: registry.registrar(forPlugin: "FlutterLocalNotificationsPlugin")) + SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin")) } diff --git a/pubspec.lock b/pubspec.lock index ca181c3..f4ebaad 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -81,6 +81,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.2.0" + file: + dependency: transitive + description: + name: file + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 + url: "https://pub.dev" + source: hosted + version: "7.0.1" flutter: dependency: "direct main" description: flutter @@ -98,55 +106,36 @@ packages: dependency: "direct main" description: name: flutter_local_notifications - sha256: "0d9035862236fe38250fe1644d7ed3b8254e34a21b2c837c9f539fbb3bba5ef1" + sha256: "674173fd3c9eda9d4c8528da2ce0ea69f161577495a9cc835a2a4ecd7eadeb35" url: "https://pub.dev" source: hosted - version: "21.0.0" + version: "17.2.4" flutter_local_notifications_linux: dependency: transitive description: name: flutter_local_notifications_linux - sha256: e0f25e243c6c44c825bbbc6b2b2e76f7d9222362adcfe9fd780bf01923c840bd + sha256: c49bd06165cad9beeb79090b18cd1eb0296f4bf4b23b84426e37dd7c027fc3af url: "https://pub.dev" source: hosted - version: "8.0.0" + version: "4.0.1" flutter_local_notifications_platform_interface: dependency: transitive description: name: flutter_local_notifications_platform_interface - sha256: e7db3d5b49c2b7ecc68deba4aaaa67a348f92ee0fef34c8e4b4459dbef0d7307 + sha256: "85f8d07fe708c1bdcf45037f2c0109753b26ae077e9d9e899d55971711a4ea66" url: "https://pub.dev" source: hosted - version: "11.0.0" - flutter_local_notifications_windows: - dependency: transitive - description: - name: flutter_local_notifications_windows - sha256: "3a2654ba104fbb52c618ebed9def24ef270228470718c43b3a6afcd5c81bef0c" - url: "https://pub.dev" - source: hosted - version: "3.0.0" + version: "7.2.0" flutter_test: dependency: "direct dev" description: flutter source: sdk version: "0.0.0" - http: + flutter_web_plugins: dependency: transitive - description: - name: http - sha256: "87721a4a50b19c7f1d49001e51409bddc46303966ce89a65af4f4e6004896412" - url: "https://pub.dev" - source: hosted - version: "1.6.0" - http_parser: - dependency: transitive - description: - name: http_parser - sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" - url: "https://pub.dev" - source: hosted - version: "4.1.2" + description: flutter + source: sdk + version: "0.0.0" leak_tracker: dependency: transitive description: @@ -211,6 +200,30 @@ packages: url: "https://pub.dev" source: hosted version: "1.9.1" + path_provider_linux: + dependency: transitive + description: + name: path_provider_linux + sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279 + url: "https://pub.dev" + source: hosted + version: "2.2.1" + path_provider_platform_interface: + dependency: transitive + description: + name: path_provider_platform_interface + sha256: "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + path_provider_windows: + dependency: transitive + description: + name: path_provider_windows + sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7 + url: "https://pub.dev" + source: hosted + version: "2.3.0" petitparser: dependency: transitive description: @@ -219,6 +232,14 @@ packages: url: "https://pub.dev" source: hosted version: "7.0.2" + platform: + dependency: transitive + description: + name: platform + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" + url: "https://pub.dev" + source: hosted + version: "3.1.6" plugin_platform_interface: dependency: transitive description: @@ -227,6 +248,62 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.8" + shared_preferences: + dependency: "direct main" + description: + name: shared_preferences + sha256: c3025c5534b01739267eb7d76959bbc25a6d10f6988e1c2a3036940133dd10bf + url: "https://pub.dev" + source: hosted + version: "2.5.5" + shared_preferences_android: + dependency: transitive + description: + name: shared_preferences_android + sha256: e8d4762b1e2e8578fc4d0fd548cebf24afd24f49719c08974df92834565e2c53 + url: "https://pub.dev" + source: hosted + version: "2.4.23" + shared_preferences_foundation: + dependency: transitive + description: + name: shared_preferences_foundation + sha256: "4e7eaffc2b17ba398759f1151415869a34771ba11ebbccd1b0145472a619a64f" + url: "https://pub.dev" + source: hosted + version: "2.5.6" + shared_preferences_linux: + dependency: transitive + description: + name: shared_preferences_linux + sha256: "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + shared_preferences_platform_interface: + dependency: transitive + description: + name: shared_preferences_platform_interface + sha256: "649dc798a33931919ea356c4305c2d1f81619ea6e92244070b520187b5140ef9" + url: "https://pub.dev" + source: hosted + version: "2.4.2" + shared_preferences_web: + dependency: transitive + description: + name: shared_preferences_web + sha256: c49bd060261c9a3f0ff445892695d6212ff603ef3115edbb448509d407600019 + url: "https://pub.dev" + source: hosted + version: "2.4.3" + shared_preferences_windows: + dependency: transitive + description: + name: shared_preferences_windows + sha256: "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1" + url: "https://pub.dev" + source: hosted + version: "2.4.1" sky_engine: dependency: transitive description: flutter @@ -284,18 +361,10 @@ packages: dependency: transitive description: name: timezone - sha256: "784a5e34d2eb62e1326f24d6f600aaaee452eb8ca8ef2f384a59244e292d158b" + sha256: "2236ec079a174ce07434e89fcd3fcda430025eb7692244139a9cf54fdcf1fc7d" url: "https://pub.dev" source: hosted - version: "0.11.0" - typed_data: - dependency: transitive - description: - name: typed_data - sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 - url: "https://pub.dev" - source: hosted - version: "1.4.0" + version: "0.9.4" vector_math: dependency: transitive description: @@ -338,4 +407,4 @@ packages: version: "6.6.1" sdks: dart: ">=3.12.0 <4.0.0" - flutter: ">=3.38.1" + flutter: ">=3.35.0" diff --git a/pubspec.yaml b/pubspec.yaml index 8c9b06a..338b940 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -31,10 +31,12 @@ dependencies: flutter: sdk: flutter + shared_preferences: ^2.2.2 + # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. cupertino_icons: ^1.0.8 - flutter_local_notifications: ^21.0.0 + flutter_local_notifications: ^17.2.2 dev_dependencies: flutter_test: diff --git a/windows/flutter/generated_plugins.cmake b/windows/flutter/generated_plugins.cmake index 93f25e1..b93c4c3 100644 --- a/windows/flutter/generated_plugins.cmake +++ b/windows/flutter/generated_plugins.cmake @@ -6,7 +6,6 @@ list(APPEND FLUTTER_PLUGIN_LIST ) list(APPEND FLUTTER_FFI_PLUGIN_LIST - flutter_local_notifications_windows ) set(PLUGIN_BUNDLED_LIBRARIES)