This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import 'dart:ui' as ui; | |
| import 'package:cloud_firestore/cloud_firestore.dart'; | |
| import 'package:damn_the_potholes/spottherough/models/rough_group.dart'; | |
| import 'package:damn_the_potholes/spottherough/models/user_role.dart'; | |
| import 'package:damn_the_potholes/spottherough/pages/hazard_group_details_page.dart'; | |
| import 'package:damn_the_potholes/spottherough/widgets/app_scaffold.dart'; | |
| import 'package:flutter/foundation.dart'; | |
| import 'package:flutter/material.dart'; | |
| import 'package:geolocator/geolocator.dart'; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // lib/services/auth/auth_service.dart | |
| import 'package:cloud_firestore/cloud_firestore.dart'; | |
| import 'package:firebase_auth/firebase_auth.dart'; | |
| import 'package:firebase_storage/firebase_storage.dart'; | |
| import 'package:flutter/foundation.dart'; | |
| import 'package:therollplay/models/oneSignalUser.dart'; | |
| import 'package:therollplay/models/user_profile.dart'; | |
| import 'package:therollplay/services/notifications/onesignal_notification_service.dart'; | |
| import 'package:therollplay/constants.dart'; | |
| import 'package:therollplay/services/logging/talker.dart'; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // lib/components/auth_gate.dart | |
| import 'package:flutter/material.dart'; | |
| import 'package:firebase_auth/firebase_auth.dart'; | |
| import 'package:provider/provider.dart'; | |
| import 'package:therollplay/pages/login_screen.dart'; | |
| import 'package:therollplay/pages/story_list_page.dart'; | |
| import 'package:therollplay/services/auth/auth_service.dart'; | |
| import 'package:therollplay/services/logging/talker.dart'; // global log | |
| class AuthGate extends StatelessWidget { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // lib/pages/login_screen.dart | |
| import 'package:flutter/material.dart'; | |
| import 'package:flutter_login/flutter_login.dart'; | |
| import 'package:provider/provider.dart'; | |
| import 'package:therollplay/constants.dart'; | |
| import 'package:therollplay/services/auth/auth_service.dart'; | |
| import 'package:therollplay/services/logging/talker.dart'; | |
| import 'package:package_info_plus/package_info_plus.dart'; | |
| import 'package:therollplay/util/app_utils.dart'; | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // lib/services/logging/talker.dart | |
| // | |
| // Shared logger — use this import everywhere: | |
| // import 'package:therollplay/services/logging/talker.dart'; | |
| // | |
| // Then call: | |
| // log.info('Loading...'); | |
| // log.warning('No stories'); | |
| // log.error('Failed', e, st); | |
| // log.verbose('Story: ${story.title}'); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import 'package:flutter/foundation.dart'; | |
| import 'package:talker_flutter/talker_flutter.dart'; | |
| import 'package:therollplay/services/logging/custom_talker_observer.dart'; | |
| import 'package:therollplay/services/logging/firebase_storage_logger.dart'; | |
| // Set this to true to enable Firebase logging in debug mode | |
| const bool _forceFirebaseLoggingInDebug = false; | |
| /// Global Talker instance — defined ONCE, imported everywhere | |
| final talker = TalkerFlutter.init( |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import 'package:firebase_storage/firebase_storage.dart'; | |
| import 'package:intl/intl.dart'; | |
| import 'package:talker/talker.dart'; | |
| const bool _forceFirebaseLoggingOff = true; | |
| class FirebaseStorageLogger extends TalkerObserver { | |
| final FirebaseStorage _storage = FirebaseStorage.instance; | |
| final DateFormat _dateFormat = DateFormat('yyyy-MM-dd'); | |
| final DateFormat _timeFormat = DateFormat('HH:mm:ss'); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import 'package:therollplay/constants.dart'; | |
| import 'package:firebase_storage/firebase_storage.dart'; | |
| import 'package:talker_flutter/talker_flutter.dart'; | |
| import 'dart:io'; | |
| import 'package:intl/intl.dart'; | |
| import 'package:path_provider/path_provider.dart'; | |
| // final talker = TalkerFlutter.init(); | |
| class FirebaseStorageLoggerMobile extends TalkerObserver { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import 'package:therollplay/services/logging/firebase_storage_logger.dart'; | |
| import 'package:talker_flutter/talker_flutter.dart'; | |
| import 'package:therollplay/services/logging/talker.dart'; | |
| // Talker talker = Talker(); | |
| class CustomTalkerObserver extends TalkerObserver { | |
| @override | |
| void onLog(TalkerData log) { | |
| super.onLog(log); | |
| // Send log data to your monitoring service |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import 'package:talker_flutter/talker_flutter.dart'; | |
| /// Global application logger using Talker | |
| class AppLogger { | |
| static final Talker _talker = TalkerFlutter.init(); | |
| /// Flag to enable/disable logging | |
| /// Set to false in production to disable all logs | |
| static bool isLoggingEnabled = true; | |
NewerOlder