From 4a6e9802b783aa1c0ba390c189008dd03632ee65 Mon Sep 17 00:00:00 2001 From: Kamo Spertsyan Date: Tue, 1 Oct 2024 18:16:27 +0300 Subject: [PATCH] The `setNotificationToken`, `handleNotification`, and `getNotificationCustomPayload` methods were marked as deprecated. --- android/build.gradle | 2 +- example/lib/constants.dart | 5 - example/lib/handling_notification.dart | 41 ---- example/lib/home.dart | 46 ---- example/lib/main.dart | 84 ------- example/pubspec.yaml | 3 - ios/qonversion_flutter.podspec | 2 +- lib/src/automations.dart | 3 + macos/qonversion_flutter.podspec | 2 +- pubspec.lock | 321 ++++++++++++++++--------- pubspec.yaml | 2 +- 11 files changed, 218 insertions(+), 293 deletions(-) delete mode 100644 example/lib/constants.dart delete mode 100644 example/lib/handling_notification.dart diff --git a/android/build.gradle b/android/build.gradle index 141aec66..ed16e747 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -51,6 +51,6 @@ android { dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" - implementation "io.qonversion.sandwich:sandwich:5.1.4" + implementation "io.qonversion.sandwich:sandwich:5.1.5" implementation 'com.google.code.gson:gson:2.9.0' } diff --git a/example/lib/constants.dart b/example/lib/constants.dart deleted file mode 100644 index 9c1759d6..00000000 --- a/example/lib/constants.dart +++ /dev/null @@ -1,5 +0,0 @@ -class Constants { - // Firebase - static const channelId = 'high_importance_channel'; - static const channelName = 'High Importance Notifications'; -} diff --git a/example/lib/handling_notification.dart b/example/lib/handling_notification.dart deleted file mode 100644 index 405c6a1d..00000000 --- a/example/lib/handling_notification.dart +++ /dev/null @@ -1,41 +0,0 @@ -import 'dart:convert'; - -import 'package:firebase_messaging/firebase_messaging.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter_local_notifications/flutter_local_notifications.dart'; -import 'package:qonversion_flutter/qonversion_flutter.dart'; - -import 'constants.dart'; - -Future showNotification(RemoteMessage message) async { - Map messageData = message.data; - if (!kIsWeb) { - String jsonMessageData = jsonEncode(messageData); - - FlutterLocalNotificationsPlugin().show( - 0, // notification id - messageData["title"], - messageData["body"], - NotificationDetails( - android: AndroidNotificationDetails( - Constants.channelId, - Constants.channelName, - icon: 'launch_background', - ), - ), - payload: jsonMessageData); - } -} - -/// This is called when user clicks on the notification -Future onNotificationClick(Map ? messageData) async { - print("onNotificationClick"); - if (messageData != null) { - final payload = await Automations.getSharedInstance().getNotificationCustomPayload(messageData); - print(payload); - final isNotificationHandled = await Automations.getSharedInstance().handleNotification(messageData); - if (!isNotificationHandled) { - // Handle notification yourself - } - } -} \ No newline at end of file diff --git a/example/lib/home.dart b/example/lib/home.dart index 6b1f45cb..9588e339 100644 --- a/example/lib/home.dart +++ b/example/lib/home.dart @@ -1,11 +1,9 @@ import 'dart:async'; import 'dart:io'; -import 'package:firebase_messaging/firebase_messaging.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:qonversion_flutter/qonversion_flutter.dart'; -import 'handling_notification.dart'; class HomeView extends StatefulWidget { @override @@ -27,24 +25,6 @@ class _HomeViewState extends State { super.initState(); _initPlatformState(); - FirebaseMessaging.onMessage.listen((RemoteMessage message) { - showNotification(message); - }); - - FirebaseMessaging.onMessageOpenedApp.listen((RemoteMessage? message) { - if (message != null) { - onNotificationClick(message.data); - } - }); - - FirebaseMessaging.instance - .getInitialMessage() - .then((RemoteMessage? message) { - if (message != null) { - onNotificationClick(message.data); - } - }); - _shownScreensStream = Automations.getSharedInstance().shownScreensStream.listen((event) { // do any logic you need @@ -177,7 +157,6 @@ class _HomeViewState extends State { .build(); Qonversion.initialize(config); Qonversion.getSharedInstance().collectAppleSearchAdsAttribution(); - _sendNotificationsToken(); _loadQonversionObjects(); } @@ -194,31 +173,6 @@ class _HomeViewState extends State { setState(() {}); } - Future _sendNotificationsToken() async { - String? deviceToken; - switch (defaultTargetPlatform) { - case TargetPlatform.android: - { - deviceToken = await FirebaseMessaging.instance.getToken(); - } - break; - - case TargetPlatform.iOS: - { - deviceToken = await FirebaseMessaging.instance.getAPNSToken(); - } - break; - default: - deviceToken = null; - break; - } - - if (deviceToken != null) { - Automations.getSharedInstance().setNotificationsToken(deviceToken); - print('Device token: $deviceToken'); - } - } - List _entitlementsFromMap(Map entitlements) { return entitlements.entries.map((e) { var title = e.value.productId + diff --git a/example/lib/main.dart b/example/lib/main.dart index 8eb4961b..de9f4889 100644 --- a/example/lib/main.dart +++ b/example/lib/main.dart @@ -1,96 +1,12 @@ -import 'dart:io'; - import 'package:flutter/material.dart'; -import 'package:qonversion_example/constants.dart'; -import 'handling_notification.dart'; import 'home.dart'; import 'params_view.dart'; import 'products_view.dart'; import 'dart:async'; -import 'package:firebase_core/firebase_core.dart'; -import 'package:firebase_messaging/firebase_messaging.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter_local_notifications/flutter_local_notifications.dart'; -import 'dart:convert'; - -/// Define a top-level named handler which background/terminated messages will -/// call. -Future _firebaseMessagingBackgroundHandler(RemoteMessage message) async { - print('Handling a background message ${message.messageId}'); - showNotification(message); -} - -/// Initialize the [FlutterLocalNotificationsPlugin] package. -late FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin; - -/// Create a [AndroidNotificationChannel] for heads up notifications -late AndroidNotificationChannel channel; - Future main() async { WidgetsFlutterBinding.ensureInitialized(); - await Firebase.initializeApp(); - - // Set the background messaging handler early on, as a named top-level function - FirebaseMessaging.onBackgroundMessage(_firebaseMessagingBackgroundHandler); - - if (!kIsWeb) { - channel = const AndroidNotificationChannel( - Constants.channelId, // id - Constants.channelName, // name - importance: Importance.high, - ); - - /// Configure FlutterLocalNotificationsPlugin - flutterLocalNotificationsPlugin = FlutterLocalNotificationsPlugin(); - var initializationSettingsAndroid = - AndroidInitializationSettings('launch_background'); - var initializationSettingsIOS = DarwinInitializationSettings( - requestAlertPermission: true, - requestBadgePermission: true, - requestSoundPermission: false); - var initializationSettings = InitializationSettings( - android: initializationSettingsAndroid, iOS: initializationSettingsIOS); - - await flutterLocalNotificationsPlugin.initialize(initializationSettings, - onDidReceiveNotificationResponse: (NotificationResponse details) async { - var notificationData = jsonDecode(details.payload ?? "{}"); - onNotificationClick(notificationData); - }); - - /// Create an Android Notification Channel. - await flutterLocalNotificationsPlugin - .resolvePlatformSpecificImplementation< - AndroidFlutterLocalNotificationsPlugin>() - ?.createNotificationChannel(channel); - - /// Update the iOS foreground notification presentation options to allow heads up notifications. - await FirebaseMessaging.instance - .setForegroundNotificationPresentationOptions( - alert: true, - badge: true, - sound: true, - ); - } - /// Grant entitlements for iOS - if (Platform.isIOS) { - NotificationSettings settings = - await FirebaseMessaging.instance.requestPermission( - announcement: true, - carPlay: true, - criticalAlert: true, - ); - - if (settings.authorizationStatus == AuthorizationStatus.authorized) { - print('User granted permission'); - } else if (settings.authorizationStatus == - AuthorizationStatus.provisional) { - print('User granted provisional permission'); - } else { - print('User declined or has not accepted permission'); - } - } runApp(SampleApp()); } diff --git a/example/pubspec.yaml b/example/pubspec.yaml index 5586b295..a2deae72 100644 --- a/example/pubspec.yaml +++ b/example/pubspec.yaml @@ -13,9 +13,6 @@ dependencies: flutter: sdk: flutter - firebase_messaging: ^11.0.0 - flutter_local_notifications: ^17.2.2 - dependency_overrides: firebase_core_platform_interface: 4.5.1 diff --git a/ios/qonversion_flutter.podspec b/ios/qonversion_flutter.podspec index f20fb4cb..6a6c5754 100644 --- a/ios/qonversion_flutter.podspec +++ b/ios/qonversion_flutter.podspec @@ -16,7 +16,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.dependency 'Flutter' s.platform = :ios, '9.0' - s.dependency "QonversionSandwich", "5.1.4" + s.dependency "QonversionSandwich", "5.1.5" # Flutter.framework does not contain a i386 slice. Only x86_64 simulators are supported. s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'VALID_ARCHS[sdk=iphonesimulator*]' => 'x86_64' } diff --git a/lib/src/automations.dart b/lib/src/automations.dart index 6850abac..1b02c2a8 100644 --- a/lib/src/automations.dart +++ b/lib/src/automations.dart @@ -51,12 +51,14 @@ abstract class Automations { /// Set push token to Qonversion to enable Qonversion push notifications /// [token] Firebase device token for Android. APNs device token for iOS + @Deprecated("Consider removing this method calls. Qonversion is not working with push notifications anymore") Future setNotificationsToken(String token); /// [notificationData] notification payload data /// See [Firebase RemoteMessage data](https://pub.dev/documentation/firebase_messaging_platform_interface/latest/firebase_messaging_platform_interface/RemoteMessage/data.html) /// See [APNs notification data](https://developer.apple.com/documentation/usernotifications/unnotificationcontent/1649869-userinfo) /// Returns true when a push notification was received from Qonversion. Otherwise returns false, so you need to handle the notification yourself + @Deprecated("Consider removing this method calls as they aren't needed anymore") Future handleNotification(Map notificationData); /// Get parsed custom payload, which you added to the notification in the dashboard @@ -64,6 +66,7 @@ abstract class Automations { /// See [Firebase RemoteMessage data](https://pub.dev/documentation/firebase_messaging_platform_interface/latest/firebase_messaging_platform_interface/RemoteMessage/data.html) /// See [APNs notification data](https://developer.apple.com/documentation/usernotifications/unnotificationcontent/1649869-userinfo) /// Returns a map with custom payload from the notification or null if it's not provided. + @Deprecated("Consider removing this method calls. Qonversion is not working with push notifications anymore") Future?> getNotificationCustomPayload(Map notificationData); /// Show the screen using its ID. diff --git a/macos/qonversion_flutter.podspec b/macos/qonversion_flutter.podspec index 84d02c0f..1343bc9a 100644 --- a/macos/qonversion_flutter.podspec +++ b/macos/qonversion_flutter.podspec @@ -16,7 +16,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.dependency 'FlutterMacOS' s.platform = :osx, '10.12' - s.dependency "QonversionSandwich", "5.1.4" + s.dependency "QonversionSandwich", "5.1.5" s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES' } s.swift_version = '5.0' diff --git a/pubspec.lock b/pubspec.lock index 048899d7..39e2fdcc 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -5,184 +5,202 @@ packages: dependency: transitive description: name: _fe_analyzer_shared - url: "https://pub.dartlang.org" + sha256: d93b0378aadce9c1388108067946276582c2ae89426c64c17920c74988508fed + url: "https://pub.dev" source: hosted version: "22.0.0" analyzer: dependency: transitive description: name: analyzer - url: "https://pub.dartlang.org" + sha256: "581a0281129283e75d4d67d6ac6e391c0515cdce37eb6eb4bc8a52e65d2b16b6" + url: "https://pub.dev" source: hosted version: "1.7.2" args: dependency: transitive description: name: args - url: "https://pub.dartlang.org" + sha256: "7cf60b9f0cc88203c5a190b4cd62a99feea42759a7fa695010eb5de1c0b2252a" + url: "https://pub.dev" source: hosted - version: "2.3.1" + version: "2.5.0" async: dependency: transitive description: name: async - url: "https://pub.dartlang.org" + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + url: "https://pub.dev" source: hosted - version: "2.8.2" + version: "2.11.0" boolean_selector: dependency: transitive description: name: boolean_selector - url: "https://pub.dartlang.org" + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.1" build: dependency: transitive description: name: build - url: "https://pub.dartlang.org" + sha256: "3fbda25365741f8251b39f3917fb3c8e286a96fd068a5a242e11c2012d495777" + url: "https://pub.dev" source: hosted - version: "2.0.3" + version: "2.3.1" build_config: dependency: transitive description: name: build_config - url: "https://pub.dartlang.org" + sha256: ad77deb6e9c143a3f550fbb4c5c1e0c6aadabe24274898d06b9526c61b9cf4fb + url: "https://pub.dev" source: hosted - version: "0.4.7" + version: "1.0.0" build_daemon: dependency: transitive description: name: build_daemon - url: "https://pub.dartlang.org" + sha256: "757153e5d9cd88253cb13f28c2fb55a537dc31fefd98137549895b5beb7c6169" + url: "https://pub.dev" source: hosted - version: "2.1.10" + version: "3.1.1" build_resolvers: dependency: transitive description: name: build_resolvers - url: "https://pub.dartlang.org" + sha256: a171129ff393d360a5ec9ba3a2277e0d7e713027709f08196e8192688b537074 + url: "https://pub.dev" source: hosted version: "2.0.4" build_runner: dependency: "direct dev" description: name: build_runner - url: "https://pub.dartlang.org" + sha256: "361d73f37cd48c47a81a61421eb1cc4cfd2324516fbb52f1bc4c9a01834ef2de" + url: "https://pub.dev" source: hosted - version: "1.12.2" + version: "2.1.11" build_runner_core: dependency: transitive description: name: build_runner_core - url: "https://pub.dartlang.org" + sha256: "0db1b64c84fa803603fa406f8721959036e898cc9575d6ce4a3067581b9276c0" + url: "https://pub.dev" source: hosted - version: "6.1.12" + version: "7.2.2" built_collection: dependency: transitive description: name: built_collection - url: "https://pub.dartlang.org" + sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" + url: "https://pub.dev" source: hosted version: "5.1.1" built_value: dependency: transitive description: name: built_value - url: "https://pub.dartlang.org" + sha256: c7913a9737ee4007efedaffc968c049fd0f3d0e49109e778edc10de9426005cb + url: "https://pub.dev" source: hosted - version: "8.8.0" + version: "8.9.2" characters: dependency: transitive description: name: characters - url: "https://pub.dartlang.org" + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + url: "https://pub.dev" source: hosted - version: "1.2.0" - charcode: - dependency: transitive - description: - name: charcode - url: "https://pub.dartlang.org" - source: hosted - version: "1.3.1" + version: "1.3.0" checked_yaml: dependency: transitive description: name: checked_yaml - url: "https://pub.dartlang.org" + sha256: dd007e4fb8270916820a0d66e24f619266b60773cddd082c6439341645af2659 + url: "https://pub.dev" source: hosted version: "2.0.1" cli_util: dependency: transitive description: name: cli_util - url: "https://pub.dartlang.org" + sha256: "66f86e916d285c1a93d3b79587d94bd71984a66aac4ff74e524cfa7877f1395c" + url: "https://pub.dev" source: hosted version: "0.3.5" clock: dependency: transitive description: name: clock - url: "https://pub.dartlang.org" + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.1.1" code_builder: dependency: transitive description: name: code_builder - url: "https://pub.dartlang.org" + sha256: f692079e25e7869c14132d39f223f8eec9830eb76131925143b2129c4bb01b37 + url: "https://pub.dev" source: hosted - version: "3.7.0" + version: "4.10.0" collection: dependency: "direct main" description: name: collection - url: "https://pub.dartlang.org" + sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + url: "https://pub.dev" source: hosted - version: "1.15.0" + version: "1.18.0" convert: dependency: transitive description: name: convert - url: "https://pub.dartlang.org" + sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" + url: "https://pub.dev" source: hosted - version: "3.1.0" + version: "3.1.1" crypto: dependency: transitive description: name: crypto - url: "https://pub.dartlang.org" + sha256: ec30d999af904f33454ba22ed9a86162b35e52b44ac4807d1d93c288041d7d27 + url: "https://pub.dev" source: hosted - version: "3.0.2" + version: "3.0.5" dart_style: dependency: transitive description: name: dart_style - url: "https://pub.dartlang.org" + sha256: "7f5b48e6a448c4b46250a6113857a00eaa82821ef5a3d7f42e68eb69d1283fa3" + url: "https://pub.dev" source: hosted version: "2.1.1" fake_async: dependency: transitive description: name: fake_async - url: "https://pub.dartlang.org" + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.3.1" file: dependency: transitive description: name: file - url: "https://pub.dartlang.org" + sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c" + url: "https://pub.dev" source: hosted - version: "6.1.4" + version: "7.0.0" fixnum: dependency: transitive description: name: fixnum - url: "https://pub.dartlang.org" + sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" + url: "https://pub.dev" source: hosted - version: "1.0.1" + version: "1.1.0" flutter: dependency: "direct main" description: flutter @@ -193,153 +211,206 @@ packages: description: flutter source: sdk version: "0.0.0" + frontend_server_client: + dependency: transitive + description: + name: frontend_server_client + sha256: "4f4a162323c86ffc1245765cfe138872b8f069deb42f7dbb36115fa27f31469b" + url: "https://pub.dev" + source: hosted + version: "2.1.3" glob: dependency: transitive description: name: glob - url: "https://pub.dartlang.org" + sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" + url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" graphs: dependency: transitive description: name: graphs - url: "https://pub.dartlang.org" + sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" + url: "https://pub.dev" source: hosted - version: "1.0.0" + version: "2.3.2" http_multi_server: dependency: transitive description: name: http_multi_server - url: "https://pub.dartlang.org" + sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" + url: "https://pub.dev" source: hosted version: "3.2.1" http_parser: dependency: transitive description: name: http_parser - url: "https://pub.dartlang.org" + sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" + url: "https://pub.dev" source: hosted version: "4.0.2" io: dependency: transitive description: name: io - url: "https://pub.dartlang.org" + sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" + url: "https://pub.dev" source: hosted version: "1.0.4" js: dependency: transitive description: name: js - url: "https://pub.dartlang.org" + sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 + url: "https://pub.dev" source: hosted - version: "0.6.5" + version: "0.6.7" json_annotation: dependency: "direct main" description: name: json_annotation - url: "https://pub.dartlang.org" + sha256: "0aa7409f6c82acfab96853b8b0c7503de49918cbe705a57cfdeb477756b4521b" + url: "https://pub.dev" source: hosted version: "4.1.0" json_serializable: dependency: "direct dev" description: name: json_serializable - url: "https://pub.dartlang.org" + sha256: "86d3edf6914d6562ed4c7d9288239fbf1a9ee3c498ed0089a535c0d3703bb323" + url: "https://pub.dev" source: hosted version: "4.1.4" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" + url: "https://pub.dev" + source: hosted + version: "10.0.5" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" + url: "https://pub.dev" + source: hosted + version: "3.0.5" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" logging: dependency: transitive description: name: logging - url: "https://pub.dartlang.org" + sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" + url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.2.0" matcher: dependency: transitive description: name: matcher - url: "https://pub.dartlang.org" + sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + url: "https://pub.dev" source: hosted - version: "0.12.11" + version: "0.12.16+1" material_color_utilities: dependency: transitive description: name: material_color_utilities - url: "https://pub.dartlang.org" + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" source: hosted - version: "0.1.3" + version: "0.11.1" meta: dependency: transitive description: name: meta - url: "https://pub.dartlang.org" + sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 + url: "https://pub.dev" source: hosted - version: "1.7.0" + version: "1.15.0" mime: dependency: transitive description: name: mime - url: "https://pub.dartlang.org" + sha256: "801fd0b26f14a4a58ccb09d5892c3fbdeff209594300a542492cf13fba9d247a" + url: "https://pub.dev" source: hosted - version: "1.0.3" + version: "1.0.6" package_config: dependency: transitive description: name: package_config - url: "https://pub.dartlang.org" + sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" + url: "https://pub.dev" source: hosted version: "2.1.0" path: dependency: transitive description: name: path - url: "https://pub.dartlang.org" + sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + url: "https://pub.dev" source: hosted - version: "1.8.0" + version: "1.9.0" pedantic: dependency: transitive description: name: pedantic - url: "https://pub.dartlang.org" + sha256: "67fc27ed9639506c856c840ccce7594d0bdcd91bc8d53d6e52359449a1d50602" + url: "https://pub.dev" source: hosted version: "1.11.1" pool: dependency: transitive description: name: pool - url: "https://pub.dartlang.org" + sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a" + url: "https://pub.dev" source: hosted version: "1.5.1" pub_semver: dependency: transitive description: name: pub_semver - url: "https://pub.dartlang.org" + sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" + url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.4" pubspec_parse: dependency: transitive description: name: pubspec_parse - url: "https://pub.dartlang.org" + sha256: "0e01f805457ef610ccaf8d18067596afc34107a27149778b06b2083edbc140c1" + url: "https://pub.dev" source: hosted version: "1.1.0" shelf: dependency: transitive description: name: shelf - url: "https://pub.dartlang.org" + sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 + url: "https://pub.dev" source: hosted - version: "1.3.2" + version: "1.4.1" shelf_web_socket: dependency: transitive description: name: shelf_web_socket - url: "https://pub.dartlang.org" + sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1" + url: "https://pub.dev" source: hosted - version: "1.0.2" + version: "1.0.4" sky_engine: dependency: transitive description: flutter @@ -349,100 +420,130 @@ packages: dependency: transitive description: name: source_gen - url: "https://pub.dartlang.org" + sha256: ffb7124eb6752de71e87a122cc50a8a191044add69fd990d76958bc38ee552fd + url: "https://pub.dev" source: hosted version: "1.0.3" source_span: dependency: transitive description: name: source_span - url: "https://pub.dartlang.org" + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + url: "https://pub.dev" source: hosted - version: "1.8.1" + version: "1.10.0" stack_trace: dependency: transitive description: name: stack_trace - url: "https://pub.dartlang.org" + sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + url: "https://pub.dev" source: hosted - version: "1.10.0" + version: "1.11.1" stream_channel: dependency: transitive description: name: stream_channel - url: "https://pub.dartlang.org" + sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.2" stream_transform: dependency: transitive description: name: stream_transform - url: "https://pub.dartlang.org" + sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" + url: "https://pub.dev" source: hosted version: "2.1.0" string_scanner: dependency: transitive description: name: string_scanner - url: "https://pub.dartlang.org" + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.2.0" term_glyph: dependency: transitive description: name: term_glyph - url: "https://pub.dartlang.org" + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.2.1" test_api: dependency: transitive description: name: test_api - url: "https://pub.dartlang.org" + sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" + url: "https://pub.dev" source: hosted - version: "0.4.8" + version: "0.7.2" timing: dependency: transitive description: name: timing - url: "https://pub.dartlang.org" + sha256: c386d07d7f5efc613479a7c4d9d64b03710b03cfaa7e8ad5f2bfb295a1f0dfad + url: "https://pub.dev" source: hosted version: "1.0.0" typed_data: dependency: transitive description: name: typed_data - url: "https://pub.dartlang.org" + sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c + url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.3.2" vector_math: dependency: transitive description: name: vector_math - url: "https://pub.dartlang.org" + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" + url: "https://pub.dev" + source: hosted + version: "14.2.5" watcher: dependency: transitive description: name: watcher - url: "https://pub.dartlang.org" + sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" + url: "https://pub.dev" source: hosted - version: "1.0.2" + version: "1.1.0" + web: + dependency: transitive + description: + name: web + sha256: "97da13628db363c635202ad97068d47c5b8aa555808e7a9411963c533b449b27" + url: "https://pub.dev" + source: hosted + version: "0.5.1" web_socket_channel: dependency: transitive description: name: web_socket_channel - url: "https://pub.dartlang.org" + sha256: "58c6666b342a38816b2e7e50ed0f1e261959630becd4c879c4f26bfa14aa5a42" + url: "https://pub.dev" source: hosted - version: "2.4.0" + version: "2.4.5" yaml: dependency: transitive description: name: yaml - url: "https://pub.dartlang.org" + sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" + url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.1.2" sdks: - dart: ">=2.16.0 <3.0.0" - flutter: ">=1.10.0" + dart: ">=3.4.0 <4.0.0" + flutter: ">=3.18.0-18.0.pre.54" diff --git a/pubspec.yaml b/pubspec.yaml index ca8a2d52..3820c9ff 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -17,7 +17,7 @@ dependencies: dev_dependencies: flutter_test: sdk: flutter - build_runner: ^1.11.1 + build_runner: ^2.0.6 json_serializable: ^4.1.0 flutter: