소스 검색

warning beres

Yulian 2 달 전
부모
커밋
9e648bff34
33개의 변경된 파일215개의 추가작업 그리고 235개의 파일을 삭제
  1. 2 5
      lib/src/bloc/login/login_bloc.dart
  2. 2 2
      lib/src/layouts/auth/end_session.dart
  3. 2 2
      lib/src/layouts/auth/login.dart
  4. 1 1
      lib/src/layouts/auth/qr.dart
  5. 1 6
      lib/src/layouts/components/template.dart
  6. 0 3
      lib/src/layouts/functions/message.dart
  7. 0 3
      lib/src/layouts/landing/landing_page.dart
  8. 3 3
      lib/src/layouts/mobile/banner_detail.dart
  9. 2 2
      lib/src/layouts/mobile/history_detail.dart
  10. 2 2
      lib/src/layouts/mobile/history_detail_pending.dart
  11. 1 1
      lib/src/layouts/mobile/history_forum.dart
  12. 0 1
      lib/src/layouts/mobile/menu_history.dart
  13. 4 5
      lib/src/layouts/mobile/menu_home.dart
  14. 2 2
      lib/src/layouts/mobile/message_list.dart
  15. 2 2
      lib/src/layouts/mobile/password.dart
  16. 4 4
      lib/src/layouts/mobile/request_create.dart
  17. 7 7
      lib/src/layouts/mobile/request_select.dart
  18. 4 4
      lib/src/layouts/mobile/request_success.dart
  19. 3 3
      lib/src/layouts/web/banner_detail.dart
  20. 2 2
      lib/src/layouts/web/history_detail.dart
  21. 2 2
      lib/src/layouts/web/history_detail_pending.dart
  22. 2 2
      lib/src/layouts/web/menu_home.dart
  23. 3 3
      lib/src/layouts/web/message_broadcast.dart
  24. 144 145
      lib/src/layouts/web/message_list.dart
  25. 2 2
      lib/src/layouts/web/password.dart
  26. 3 3
      lib/src/layouts/web/request_create.dart
  27. 7 7
      lib/src/layouts/web/request_select.dart
  28. 4 4
      lib/src/layouts/web/request_success.dart
  29. 1 1
      lib/src/model/token/token.g.dart
  30. 3 3
      lib/src/utils/U.dart
  31. 0 1
      lib/src/utils/cache_manager.dart
  32. 0 1
      lib/src/utils/dio_logging_interceptors.dart
  33. 0 1
      lib/src/utils/provider.dart

+ 2 - 5
lib/src/bloc/login/login_bloc.dart

@@ -33,16 +33,13 @@ class LoginBloc extends Bloc<LoginEvent, LoginState> {
   LoginBloc(LoginState initialState) : super(initialState);
 
   // @override
-  // LoginState get initialState => LoginInitial();
-
-  @override
   Stream<LoginState> mapEventToState(LoginEvent event) async* {
     LoginBody loginBody = event.loginBody;
-    if (loginBody.username == null || loginBody.username.isEmpty) {
+    if (loginBody.username.isEmpty) {
       yield LoginFailure('username');
       return;
     }
-    else if (loginBody.password == null || loginBody.password.isEmpty) {
+    else if (loginBody.password.isEmpty) {
       yield LoginFailure('password');
       return;
     }

+ 2 - 2
lib/src/layouts/auth/end_session.dart

@@ -20,7 +20,7 @@ class EndSessionPage extends StatefulWidget {
 class _EndSessionPageState extends State<EndSessionPage> {
   @override
   Widget build(BuildContext context) {
-    bool useAsset = false;
+    // bool useAsset = false;
     String imageUrl = '';
     final ApiAuthProvider apiAuthProvider = ApiAuthProvider();
 
@@ -28,7 +28,7 @@ class _EndSessionPageState extends State<EndSessionPage> {
       imageUrl = apiAuthProvider.baseUrl + U.decodeBase64Url(Uri.decodeComponent(U.getAccessCode()!))+'/assets/background/tn';
       http.head(Uri.parse(imageUrl));
     }catch(e){
-      useAsset = true;
+      // useAsset = true;
     }
 
     return Scaffold(

+ 2 - 2
lib/src/layouts/auth/login.dart

@@ -437,8 +437,8 @@ changeLangLogin(BuildContext context, List lang){
 //------------------------------------------------------------------------------
 
 class ForceChgPassPage extends StatefulWidget {
-  Map<String, String> data;
-  ForceChgPassPage({required this.data, Key? key}) : super(key: key);
+  final Map<String, String> data;
+  const ForceChgPassPage({required this.data, super.key});
 
   @override
   State<ForceChgPassPage> createState() => _ForceChgPassPageState();

+ 1 - 1
lib/src/layouts/auth/qr.dart

@@ -31,7 +31,7 @@ class _NewQrPageState extends State<NewQrPage> {
   final ApiAuthRepository apiAuthRepository = ApiAuthRepository();
   final ApiAuthProvider apiAuthProvider = ApiAuthProvider();
   String? accCode = "";
-  bool? _isAccCodeExist = false;
+  // bool? _isAccCodeExist = false;
 
   String companyName = '';
   String serialNumber = '';

+ 1 - 6
lib/src/layouts/components/template.dart

@@ -18,19 +18,14 @@ import 'package:lottie/lottie.dart';
 import 'package:page_transition/page_transition.dart';
 import 'package:photo_view/photo_view.dart';
 import 'package:photo_view/photo_view_gallery.dart';
-import 'package:provider/provider.dart';
-import 'package:telnow_mobile_new/src/api/api_auth_provider.dart';
 import 'package:telnow_mobile_new/src/api/jwt_token.dart';
 import 'package:telnow_mobile_new/src/injector/injector.dart';
 import 'package:telnow_mobile_new/src/layouts/auth/qr.dart';
 import 'package:telnow_mobile_new/src/storage/sharedpreferences/shared_preferences_manager.dart';
 import 'package:telnow_mobile_new/src/utils/U.dart';
 import 'package:telnow_mobile_new/src/utils/cache_manager.dart';
-import 'package:telnow_mobile_new/src/utils/dio_logging_interceptors.dart';
 import 'package:uuid/uuid.dart';
 
-import '../../utils/provider.dart';
-
 PreferredSizeWidget appBarTemplate({required BuildContext context, required String title, String icon = 'arrow-left', List<Widget>? action, exc = false}){
   return AppBar(
     elevation: 0,
@@ -122,7 +117,7 @@ Widget separator(){
 Widget categoryContainer({required BuildContext context, required String iconUrl}){
   double size = U.bodyWidth(context)/6;
 
-  String ext = iconUrl.split(".").last;
+  // String ext = iconUrl.split(".").last;
 
   return Container(
     padding: EdgeInsets.all(5),

+ 0 - 3
lib/src/layouts/functions/message.dart

@@ -1,8 +1,6 @@
 import 'package:easy_localization/easy_localization.dart';
 import 'package:flutter/cupertino.dart';
-import 'package:flutter/foundation.dart';
 import 'package:flutter/material.dart';
-import 'package:flutter/services.dart';
 import 'package:provider/provider.dart';
 import 'package:telnow_mobile_new/src/api/api_auth_provider.dart';
 import 'package:telnow_mobile_new/src/api/jwt_token.dart';
@@ -14,7 +12,6 @@ import 'package:telnow_mobile_new/src/utils/C.dart';
 import 'package:telnow_mobile_new/src/utils/U.dart';
 import 'package:telnow_mobile_new/src/utils/cache_manager.dart';
 import 'package:telnow_mobile_new/src/utils/provider.dart';
-import 'package:url_launcher/url_launcher.dart';
 
 class MessageFunction{
   final ApiAuthProvider apiAuthProvider = ApiAuthProvider();

+ 0 - 3
lib/src/layouts/landing/landing_page.dart

@@ -1,6 +1,3 @@
-import 'dart:convert';
-import 'dart:typed_data';
-
 import 'package:auto_route/annotations.dart';
 import 'package:auto_route/auto_route.dart';
 import 'package:easy_localization/easy_localization.dart';

+ 3 - 3
lib/src/layouts/mobile/banner_detail.dart

@@ -9,9 +9,9 @@ import 'package:url_launcher/url_launcher.dart';
 import 'package:youtube_player_iframe/youtube_player_iframe.dart';
 
 class MobBannerDetailPage extends StatefulWidget {
-  Map<String, dynamic> user;
-  Map<String, dynamic> data;
-  MobBannerDetailPage({required this.user, required this.data, super.key});
+  final Map<String, dynamic> user;
+  final Map<String, dynamic> data;
+  const MobBannerDetailPage({required this.user, required this.data, super.key});
 
   @override
   State<MobBannerDetailPage> createState() => _MobBannerDetailPageState();

+ 2 - 2
lib/src/layouts/mobile/history_detail.dart

@@ -12,8 +12,8 @@ import 'package:timelines_plus/timelines_plus.dart';
 import 'package:url_launcher/url_launcher.dart';
 
 class MobHistoryDetailPage extends StatefulWidget {
-  int index;
-  MobHistoryDetailPage({required this.index, super.key});
+  final int index;
+  const MobHistoryDetailPage({required this.index, super.key});
 
   @override
   State<MobHistoryDetailPage> createState() => _MobHistoryDetailPageState();

+ 2 - 2
lib/src/layouts/mobile/history_detail_pending.dart

@@ -9,8 +9,8 @@ import 'package:telnow_mobile_new/src/utils/U.dart';
 import 'package:timelines_plus/timelines_plus.dart';
 
 class MobHistoryDetailPendingPage extends StatefulWidget {
-  Map<String, dynamic> data;
-  MobHistoryDetailPendingPage({required this.data, super.key});
+  final Map<String, dynamic> data;
+  const MobHistoryDetailPendingPage({required this.data, super.key});
 
   @override
   State<MobHistoryDetailPendingPage> createState() => _MobHistoryDetailPendingPageState();

+ 1 - 1
lib/src/layouts/mobile/history_forum.dart

@@ -160,7 +160,7 @@ class _MobHistoryForumPageState extends State<MobHistoryForumPage> {
           if (result.type == DocumentChangeType.added && isAfterLoad) {
             if (
             (
-                (username == data!['from']['user'] && data!['senderType'] != 'SERVANT') &&
+                (username == data!['from']['user'] && data['senderType'] != 'SERVANT') &&
                     messageData.where((element) => element['uniqueId'] == data['uniqueId']).isNotEmpty
             ) ||
                 (username != data['from']['user'] && data['readStatus'] == 'DELETED')

+ 0 - 1
lib/src/layouts/mobile/menu_history.dart

@@ -1,4 +1,3 @@
-import 'package:auto_route/auto_route.dart';
 import 'package:easy_localization/easy_localization.dart';
 import 'package:easy_refresh/easy_refresh.dart';
 import 'package:flutter/material.dart';

+ 4 - 5
lib/src/layouts/mobile/menu_home.dart

@@ -12,7 +12,6 @@ import 'package:provider/provider.dart';
 import 'package:telnow_mobile_new/src/api/api_auth_provider.dart';
 import 'package:telnow_mobile_new/src/injector/injector.dart';
 import 'package:telnow_mobile_new/src/layouts/functions/home.dart';
-import 'package:permission_handler/permission_handler.dart';
 import 'package:telnow_mobile_new/src/layouts/mobile/banner_detail.dart';
 import 'package:telnow_mobile_new/src/layouts/mobile/message_list.dart';
 import 'package:telnow_mobile_new/src/layouts/mobile/request_create.dart';
@@ -652,8 +651,8 @@ class _MobHomePageState extends State<MobHomePage> with WidgetsBindingObserver {
 //------------------------------------------------------------------------------
 
 class MobMenuDisplayPage extends StatefulWidget {
-  String scope;
-  MobMenuDisplayPage({required this.scope, Key? key}) : super(key: key);
+  final String scope;
+  const MobMenuDisplayPage({required this.scope, Key? key}) : super(key: key);
 
   @override
   State<MobMenuDisplayPage> createState() => _MobMenuDisplayPageState();
@@ -758,8 +757,8 @@ class _MobMenuDisplayPageState extends State<MobMenuDisplayPage> {
 //------------------------------------------------------------------------------
 
 class MobMenuEditorPage extends StatefulWidget {
-  String scope;
-  MobMenuEditorPage({required this.scope, Key? key}) : super(key: key);
+  final String scope;
+  const MobMenuEditorPage({required this.scope, Key? key}) : super(key: key);
 
   @override
   State<MobMenuEditorPage> createState() => _MobMenuEditorPageState();

+ 2 - 2
lib/src/layouts/mobile/message_list.dart

@@ -12,8 +12,8 @@ import 'package:telnow_mobile_new/src/utils/provider.dart';
 import 'history_forum.dart';
 
 class MobMessageListPage extends StatefulWidget {
-  Map<String, dynamic>? user;
-  MobMessageListPage(this.user, {super.key});
+  final Map<String, dynamic>? user;
+  const MobMessageListPage(this.user, {super.key});
 
   @override
   State<MobMessageListPage> createState() => _MobMessageListPageState();

+ 2 - 2
lib/src/layouts/mobile/password.dart

@@ -11,8 +11,8 @@ import 'package:telnow_mobile_new/src/storage/sharedpreferences/shared_preferenc
 import 'package:telnow_mobile_new/src/utils/U.dart';
 
 class MobPasswordPage extends StatefulWidget {
-  Map<String, dynamic> user;
-  MobPasswordPage({required this.user, super.key});
+  final Map<String, dynamic> user;
+  const MobPasswordPage({required this.user, super.key});
 
   @override
   State<MobPasswordPage> createState() => _MobPasswordPageState();

+ 4 - 4
lib/src/layouts/mobile/request_create.dart

@@ -19,17 +19,17 @@ import 'package:telnow_mobile_new/src/utils/provider.dart';
 import 'package:toggle_switch/toggle_switch.dart';
 
 class MobReqCreatePage extends StatefulWidget {
-  Map<String, dynamic> user;
-  Map<String, dynamic> request;
+  final Map<String, dynamic> user;
+  final Map<String, dynamic> request;
   final bool fromSearch;
-  MobReqCreatePage({required this.user, required this.request, this.fromSearch = false, super.key});
+  const MobReqCreatePage({required this.user, required this.request, this.fromSearch = false, super.key});
 
   @override
   State<MobReqCreatePage> createState() => _MobReqCreatePageState();
 }
 
 getColorScheme(val){
-  var color;
+  Color color;
   switch (val){
     case 0: color = Color(0xFF4FB66C); break;
     case 50: color = Color(0xFFFFA800); break;

+ 7 - 7
lib/src/layouts/mobile/request_select.dart

@@ -10,13 +10,13 @@ import 'package:telnow_mobile_new/src/utils/U.dart';
 import 'package:telnow_mobile_new/src/utils/provider.dart';
 
 class MobReqSelectPage extends StatefulWidget {
-  String title;
-  String? groupCode;
-  String scope;
-  String? tenantCode;
-  String? placeholder;
-  Map<String, dynamic> user;
-  MobReqSelectPage({required this.title, this.groupCode, required this.scope, this.tenantCode, required this.user, this.placeholder, super.key});
+  final String title;
+  final String? groupCode;
+  final String scope;
+  final String? tenantCode;
+  final String? placeholder;
+  final Map<String, dynamic> user;
+  const MobReqSelectPage({required this.title, this.groupCode, required this.scope, this.tenantCode, required this.user, this.placeholder, super.key});
 
   @override
   State<MobReqSelectPage> createState() => _MobReqSelectPageState();

+ 4 - 4
lib/src/layouts/mobile/request_success.dart

@@ -12,10 +12,10 @@ import 'package:telnow_mobile_new/src/utils/U.dart';
 import 'package:url_launcher/url_launcher.dart';
 
 class MobReqSuccessPage extends StatefulWidget {
-  Map<String, dynamic> user;
+  final Map<String, dynamic> user;
   final String ticketNo;
   final bool fromSearch;
-  MobReqSuccessPage({required this.user, required this.ticketNo, this.fromSearch = false, super.key});
+  const MobReqSuccessPage({required this.user, required this.ticketNo, this.fromSearch = false, super.key});
 
   @override
   State<MobReqSuccessPage> createState() => _MobReqSuccessPageState();
@@ -259,9 +259,9 @@ class _MobReqSuccessPageState extends State<MobReqSuccessPage> {
 // --------------------------------------------------------------------------------------------------------------------------------------------------------
 
 class MobReqSuccessPendingPage extends StatefulWidget {
-  Map<String, dynamic> data;
+  final Map<String, dynamic> data;
   final bool fromSearch;
-  MobReqSuccessPendingPage({required this.data, this.fromSearch = false, super.key});
+  const MobReqSuccessPendingPage({required this.data, this.fromSearch = false, super.key});
 
   @override
   State<MobReqSuccessPendingPage> createState() => _MobReqSuccessPendingPageState();

+ 3 - 3
lib/src/layouts/web/banner_detail.dart

@@ -8,9 +8,9 @@ import 'package:url_launcher/url_launcher.dart';
 import 'package:youtube_player_iframe/youtube_player_iframe.dart';
 
 class WebBannerDetailPage extends StatefulWidget {
-  Map<String, dynamic> user;
-  Map<String, dynamic> data;
-  WebBannerDetailPage({required this.user, required this.data, super.key});
+  final Map<String, dynamic> user;
+  final Map<String, dynamic> data;
+  const WebBannerDetailPage({required this.user, required this.data, super.key});
 
   @override
   State<WebBannerDetailPage> createState() => _WebBannerDetailPageState();

+ 2 - 2
lib/src/layouts/web/history_detail.dart

@@ -11,8 +11,8 @@ import 'package:timelines_plus/timelines_plus.dart';
 import 'package:url_launcher/url_launcher.dart';
 
 class WebHistoryDetailPage extends StatefulWidget {
-  int index;
-  WebHistoryDetailPage({required this.index, super.key});
+  final int index;
+  const WebHistoryDetailPage({required this.index, super.key});
 
   @override
   State<WebHistoryDetailPage> createState() => _WebHistoryDetailPageState();

+ 2 - 2
lib/src/layouts/web/history_detail_pending.dart

@@ -9,8 +9,8 @@ import 'package:telnow_mobile_new/src/utils/U.dart';
 import 'package:timelines_plus/timelines_plus.dart';
 
 class WebHistoryDetailPendingPage extends StatefulWidget {
-  Map<String, dynamic> data;
-  WebHistoryDetailPendingPage({required this.data, super.key});
+  final Map<String, dynamic> data;
+  const WebHistoryDetailPendingPage({required this.data, super.key});
 
   @override
   State<WebHistoryDetailPendingPage> createState() => _WebHistoryDetailPendingPageState();

+ 2 - 2
lib/src/layouts/web/menu_home.dart

@@ -726,8 +726,8 @@ class _WebHomePageState extends State<WebHomePage> {
 // ---------------------------------------------------------------------------------------------------------------------------------------------
 
 class WebMenuEditorPage extends StatefulWidget {
-  String scope;
-  WebMenuEditorPage({required this.scope, super.key});
+  final String scope;
+  const WebMenuEditorPage({required this.scope, super.key});
 
   @override
   State<WebMenuEditorPage> createState() => _WebMenuEditorPageState();

+ 3 - 3
lib/src/layouts/web/message_broadcast.dart

@@ -9,9 +9,9 @@ import 'package:telnow_mobile_new/src/layouts/components/template.dart';
 import 'package:telnow_mobile_new/src/utils/U.dart';
 
 class WebMessageBroadcastPage extends StatefulWidget {
-  Map<String, dynamic> user;
-  List tenants;
-  WebMessageBroadcastPage(this.user, this.tenants, {super.key});
+  final Map<String, dynamic> user;
+  final List tenants;
+  const WebMessageBroadcastPage(this.user, this.tenants, {super.key});
 
   @override
   State<WebMessageBroadcastPage> createState() => _WebMessageBroadcastPageState();

+ 144 - 145
lib/src/layouts/web/message_list.dart

@@ -22,11 +22,10 @@ import 'dart:ui' as ui;
 import 'package:uuid/uuid.dart';
 
 import '../components/photo_chat.dart';
-import '../mobile/message_chat.dart';
 
 class WebMessageListPage extends StatefulWidget {
-  Map<String, dynamic>? user;
-  WebMessageListPage(this.user, {super.key});
+  final Map<String, dynamic>? user;
+  const WebMessageListPage(this.user, {super.key});
 
   @override
   State<WebMessageListPage> createState() => _WebMessageListPageState();
@@ -436,147 +435,147 @@ class _WebMessageListPageState extends State<WebMessageListPage> {
       );
     }
 
-    Widget chat(){
-      final messageModule = Provider.of<MessageModule>(context);
-      final dataList = messageModule.data();
-      final currentUser = messageModule.user();
-      final forumList = messageModule.forum();
-
-      return dataList.isEmpty ? Expanded(
-        child: Center(
-          child: Text('noMessageText'.tr()),
-        ),
-      ) : SingleChildScrollView(
-        padding: EdgeInsets.symmetric(vertical: 20, horizontal: 10),
-        child: Column(
-          mainAxisSize: MainAxisSize.max,
-          children: List.generate(dataList.length, (i) {
-            final item = dataList[i];
-            final isMe = item['userId'] == currentUser['userId'];
-            final avatar = item['senderAvatar'];
-            final chatIdMatch = idChat != null && idChat == item['chatId'];
-            final recipientColor = U.getColor(isMe ? item['recipient'] : item['recipientId']);
-            final recipientName = item['recipientName'];
-            final senderName = item['senderName'];
-            final lastText = item['lastText'] ?? '';
-            final isImage = item['isImage'] ?? false;
-            final fileType = item['fileType'] ?? '';
-            final lastDate = item['lastDateTimeSend'];
-            final lastReadStatus = item['lastReadStatus'];
-            final forumReadStatus = forumList[i]['readStatus'];
-
-            return GestureDetector(
-              onTap: () => selectMessage(item, isMe),
-              child: Container(
-                padding: EdgeInsets.all(10),
-                decoration: BoxDecoration(
-                  color: chatIdMatch ? Color(0xff26DA17).withAlpha(50) : Colors.white,
-                  borderRadius: BorderRadius.circular(12),
-                ),
-                child: Row(
-                  children: [
-                    avatar != null && avatar != ''
-                        ? CircleAvatar(
-                      backgroundImage: NetworkImage(avatar),
-                      radius: 24,
-                    )
-                        : Container(
-                      height: 48,
-                      width: 48,
-                      decoration: BoxDecoration(
-                        shape: BoxShape.circle,
-                        color: Color(recipientColor),
-                      ),
-                      child: Center(
-                        child: Text(
-                          isMe
-                              ? recipientName == "all_informants"
-                              ? "allInformants".tr()[0]
-                              : recipientName[0]
-                              : senderName[0],
-                          style: TextStyle(
-                            color: Colors.white,
-                            fontWeight: FontWeight.bold,
-                            fontSize: 18,
-                          ),
-                        ),
-                      ),
-                    ),
-                    SizedBox(width: 20),
-                    Expanded(
-                      child: Column(
-                        crossAxisAlignment: CrossAxisAlignment.start,
-                        children: [
-                          Text(
-                            isMe
-                                ? recipientName == "all_informants"
-                                ? "allInformants".tr()
-                                : recipientName
-                                : senderName,
-                            style: TextStyle(fontWeight: FontWeight.w600),
-                          ),
-                          SizedBox(height: 5),
-                          Row(
-                            children: [
-                              if (isMe)
-                                Padding(
-                                  padding: EdgeInsets.only(right: 5),
-                                  child: Icon(Icons.done_all, size: 18, color: Colors.blueGrey),
-                                ),
-                              if (isImage)
-                                Row(
-                                  children: [
-                                    Icon(
-                                      fileType == 'pdf' ? Icons.picture_as_pdf : Icons.image,
-                                      color: Colors.black45,
-                                      size: 16,
-                                    ),
-                                    SizedBox(width: 6),
-                                    if (lastText == '')
-                                      Text(fileType == 'pdf' ? 'pdfFile'.tr() : 'photo'.tr()),
-                                  ],
-                                ),
-                              Expanded(
-                                child: Text(
-                                  lastText,
-                                  style: TextStyle(fontSize: 13),
-                                  maxLines: 1,
-                                  overflow: TextOverflow.ellipsis,
-                                ),
-                              ),
-                            ],
-                          ),
-                        ],
-                      ),
-                    ),
-                    SizedBox(width: 20),
-                    Column(
-                      crossAxisAlignment: CrossAxisAlignment.end,
-                      children: [
-                        Text(
-                          convertDate(lastDate, context.locale.toString()),
-                          style: TextStyle(
-                            fontSize: 11,
-                            fontWeight: forumReadStatus == 'UNREAD' ? FontWeight.w600 : FontWeight.w300,
-                            color: lastReadStatus == 'UNREAD' && !isMe ? primaryColor : Colors.black45,
-                          ),
-                        ),
-                        SizedBox(height: 12),
-                        Icon(
-                          Icons.circle,
-                          size: 12,
-                          color: primaryColor.withAlpha(lastReadStatus == 'UNREAD' && !isMe ? 1 : 0),
-                        ),
-                      ],
-                    ),
-                  ],
-                ),
-              ),
-            );
-          }),
-        ),
-      );
-    }
+    // Widget chat(){
+    //   final messageModule = Provider.of<MessageModule>(context);
+    //   final dataList = messageModule.data();
+    //   final currentUser = messageModule.user();
+    //   final forumList = messageModule.forum();
+    //
+    //   return dataList.isEmpty ? Expanded(
+    //     child: Center(
+    //       child: Text('noMessageText'.tr()),
+    //     ),
+    //   ) : SingleChildScrollView(
+    //     padding: EdgeInsets.symmetric(vertical: 20, horizontal: 10),
+    //     child: Column(
+    //       mainAxisSize: MainAxisSize.max,
+    //       children: List.generate(dataList.length, (i) {
+    //         final item = dataList[i];
+    //         final isMe = item['userId'] == currentUser['userId'];
+    //         final avatar = item['senderAvatar'];
+    //         final chatIdMatch = idChat != null && idChat == item['chatId'];
+    //         final recipientColor = U.getColor(isMe ? item['recipient'] : item['recipientId']);
+    //         final recipientName = item['recipientName'];
+    //         final senderName = item['senderName'];
+    //         final lastText = item['lastText'] ?? '';
+    //         final isImage = item['isImage'] ?? false;
+    //         final fileType = item['fileType'] ?? '';
+    //         final lastDate = item['lastDateTimeSend'];
+    //         final lastReadStatus = item['lastReadStatus'];
+    //         final forumReadStatus = forumList[i]['readStatus'];
+    //
+    //         return GestureDetector(
+    //           onTap: () => selectMessage(item, isMe),
+    //           child: Container(
+    //             padding: EdgeInsets.all(10),
+    //             decoration: BoxDecoration(
+    //               color: chatIdMatch ? Color(0xff26DA17).withAlpha(50) : Colors.white,
+    //               borderRadius: BorderRadius.circular(12),
+    //             ),
+    //             child: Row(
+    //               children: [
+    //                 avatar != null && avatar != ''
+    //                     ? CircleAvatar(
+    //                   backgroundImage: NetworkImage(avatar),
+    //                   radius: 24,
+    //                 )
+    //                     : Container(
+    //                   height: 48,
+    //                   width: 48,
+    //                   decoration: BoxDecoration(
+    //                     shape: BoxShape.circle,
+    //                     color: Color(recipientColor),
+    //                   ),
+    //                   child: Center(
+    //                     child: Text(
+    //                       isMe
+    //                           ? recipientName == "all_informants"
+    //                           ? "allInformants".tr()[0]
+    //                           : recipientName[0]
+    //                           : senderName[0],
+    //                       style: TextStyle(
+    //                         color: Colors.white,
+    //                         fontWeight: FontWeight.bold,
+    //                         fontSize: 18,
+    //                       ),
+    //                     ),
+    //                   ),
+    //                 ),
+    //                 SizedBox(width: 20),
+    //                 Expanded(
+    //                   child: Column(
+    //                     crossAxisAlignment: CrossAxisAlignment.start,
+    //                     children: [
+    //                       Text(
+    //                         isMe
+    //                             ? recipientName == "all_informants"
+    //                             ? "allInformants".tr()
+    //                             : recipientName
+    //                             : senderName,
+    //                         style: TextStyle(fontWeight: FontWeight.w600),
+    //                       ),
+    //                       SizedBox(height: 5),
+    //                       Row(
+    //                         children: [
+    //                           if (isMe)
+    //                             Padding(
+    //                               padding: EdgeInsets.only(right: 5),
+    //                               child: Icon(Icons.done_all, size: 18, color: Colors.blueGrey),
+    //                             ),
+    //                           if (isImage)
+    //                             Row(
+    //                               children: [
+    //                                 Icon(
+    //                                   fileType == 'pdf' ? Icons.picture_as_pdf : Icons.image,
+    //                                   color: Colors.black45,
+    //                                   size: 16,
+    //                                 ),
+    //                                 SizedBox(width: 6),
+    //                                 if (lastText == '')
+    //                                   Text(fileType == 'pdf' ? 'pdfFile'.tr() : 'photo'.tr()),
+    //                               ],
+    //                             ),
+    //                           Expanded(
+    //                             child: Text(
+    //                               lastText,
+    //                               style: TextStyle(fontSize: 13),
+    //                               maxLines: 1,
+    //                               overflow: TextOverflow.ellipsis,
+    //                             ),
+    //                           ),
+    //                         ],
+    //                       ),
+    //                     ],
+    //                   ),
+    //                 ),
+    //                 SizedBox(width: 20),
+    //                 Column(
+    //                   crossAxisAlignment: CrossAxisAlignment.end,
+    //                   children: [
+    //                     Text(
+    //                       convertDate(lastDate, context.locale.toString()),
+    //                       style: TextStyle(
+    //                         fontSize: 11,
+    //                         fontWeight: forumReadStatus == 'UNREAD' ? FontWeight.w600 : FontWeight.w300,
+    //                         color: lastReadStatus == 'UNREAD' && !isMe ? primaryColor : Colors.black45,
+    //                       ),
+    //                     ),
+    //                     SizedBox(height: 12),
+    //                     Icon(
+    //                       Icons.circle,
+    //                       size: 12,
+    //                       color: primaryColor.withAlpha(lastReadStatus == 'UNREAD' && !isMe ? 1 : 0),
+    //                     ),
+    //                   ],
+    //                 ),
+    //               ],
+    //             ),
+    //           ),
+    //         );
+    //       }),
+    //     ),
+    //   );
+    // }
 
     Widget webChat(BuildContext context) {
       final messageModule = Provider.of<MessageModule>(context);
@@ -607,7 +606,7 @@ class _WebMessageListPageState extends State<WebMessageListPage> {
             final chatId = item['chatId'];
             final recipientId = item['recipientId'];
             final recipient = item['recipient'];
-            final id = item['id'];
+            // final id = item['id'];
 
             return GestureDetector(
               onTap: () {

+ 2 - 2
lib/src/layouts/web/password.dart

@@ -11,8 +11,8 @@ import 'package:telnow_mobile_new/src/storage/sharedpreferences/shared_preferenc
 import 'package:telnow_mobile_new/src/utils/U.dart';
 
 class WebPasswordPage extends StatefulWidget {
-  Map<String, dynamic> user;
-  WebPasswordPage({required this.user, super.key});
+  final Map<String, dynamic> user;
+  const WebPasswordPage({required this.user, super.key});
 
   @override
   State<WebPasswordPage> createState() => _WebPasswordPageState();

+ 3 - 3
lib/src/layouts/web/request_create.dart

@@ -14,10 +14,10 @@ import 'package:telnow_mobile_new/src/utils/provider.dart';
 import 'package:toggle_switch/toggle_switch.dart';
 
 class WebReqCreatePage extends StatefulWidget {
-  Map<String, dynamic> user;
-  Map<String, dynamic> request;
+  final Map<String, dynamic> user;
+  final Map<String, dynamic> request;
   final bool fromSearch;
-  WebReqCreatePage({required this.user, required this.request, this.fromSearch = false, super.key});
+  const WebReqCreatePage({required this.user, required this.request, this.fromSearch = false, super.key});
 
   @override
   State<WebReqCreatePage> createState() => _WebReqCreatePageState();

+ 7 - 7
lib/src/layouts/web/request_select.dart

@@ -10,13 +10,13 @@ import 'package:telnow_mobile_new/src/utils/U.dart';
 import 'package:telnow_mobile_new/src/utils/provider.dart';
 
 class WebReqSelectPage extends StatefulWidget {
-  String title;
-  String? groupCode;
-  String scope;
-  String? tenantCode;
-  String? placeholder;
-  Map<String, dynamic> user;
-  WebReqSelectPage({required this.title, this.groupCode, required this.scope, this.tenantCode, required this.user, this.placeholder, super.key});
+  final String title;
+  final String? groupCode;
+  final String scope;
+  final String? tenantCode;
+  final String? placeholder;
+  final Map<String, dynamic> user;
+  const WebReqSelectPage({required this.title, this.groupCode, required this.scope, this.tenantCode, required this.user, this.placeholder, super.key});
 
   @override
   State<WebReqSelectPage> createState() => _WebReqSelectPageState();

+ 4 - 4
lib/src/layouts/web/request_success.dart

@@ -11,10 +11,10 @@ import 'package:telnow_mobile_new/src/utils/U.dart';
 import 'package:url_launcher/url_launcher.dart';
 
 class WebReqSuccessPage extends StatefulWidget {
-  Map<String, dynamic> user;
+  final Map<String, dynamic> user;
   final String ticketNo;
   final bool fromSearch;
-  WebReqSuccessPage({required this.user, required this.ticketNo, this.fromSearch = false, super.key});
+  const WebReqSuccessPage({required this.user, required this.ticketNo, this.fromSearch = false, super.key});
 
   @override
   State<WebReqSuccessPage> createState() => _WebReqSuccessPageState();
@@ -276,9 +276,9 @@ class _WebReqSuccessPageState extends State<WebReqSuccessPage> {
 // -----------------------------------------------------------------------------------------------------------------------------
 
 class WebReqSuccessPendingPage extends StatefulWidget {
-  Map<String, dynamic> data;
+  final Map<String, dynamic> data;
   final bool fromSearch;
-  WebReqSuccessPendingPage({required this.data, this.fromSearch = false, super.key});
+  const WebReqSuccessPendingPage({required this.data, this.fromSearch = false, super.key});
 
   @override
   State<WebReqSuccessPendingPage> createState() => _WebReqSuccessPendingPageState();

+ 1 - 1
lib/src/model/token/token.g.dart

@@ -6,7 +6,7 @@ part of 'token.dart';
 // JsonSerializableGenerator
 // **************************************************************************
 
-Token _$TokenFromJson(Map<String?, dynamic?> json) {
+Token _$TokenFromJson(Map<String?, dynamic> json) {
   return Token(
     json['access_token'] as String,
     json['token_type'] as String,

+ 3 - 3
lib/src/utils/U.dart

@@ -18,7 +18,6 @@ import 'package:telnow_mobile_new/src/injector/injector.dart';
 import 'package:telnow_mobile_new/src/model/refreshtoken/refresh_token_body.dart';
 import 'package:telnow_mobile_new/src/layouts/components/template.dart';
 import 'package:telnow_mobile_new/src/storage/sharedpreferences/shared_preferences_manager.dart';
-import 'package:synchronized/synchronized.dart';
 
 import 'cache_manager.dart';
 import 'C.dart';
@@ -46,7 +45,7 @@ class U {
   static final Codec<String, String> stringToBase64Url = utf8.fuse(base64Url);
   static final JwtToken token = JwtToken();
 
-  static final _lockAuth = Lock();
+  // static final _lockAuth = Lock();
   static int _authLastMs = 0;
   static Token? _lastReqToken;
 
@@ -87,6 +86,7 @@ class U {
         Future.error(error);
       }
     }
+    return null;
   }
 
   static Future waitForRefreshAuth() async {
@@ -110,7 +110,7 @@ class U {
       var nw = DateTime.now().millisecondsSinceEpoch;
       if (_authLastMs == 0 || nw - _authLastMs >= 5000) {
         // print("refresh token request");
-        ApiAuthRepository apiAuthRepository = ApiAuthRepository();
+        // ApiAuthRepository apiAuthRepository = ApiAuthRepository();
         var token = await _tryRefreshAuth(refreshTokenBody);
         _authLastMs = DateTime.now().millisecondsSinceEpoch;
         _lastReqToken = token;

+ 0 - 1
lib/src/utils/cache_manager.dart

@@ -1,7 +1,6 @@
 import 'package:cache_manager/cache_manager.dart';
 import 'package:flutter_cache_manager/flutter_cache_manager.dart';
 import 'package:shared_preferences/shared_preferences.dart';
-import 'package:telnow_mobile_new/src/storage/sharedpreferences/shared_preferences_manager.dart';
 
 class CacheMan {
   static void writeData(String key, dynamic data) {

+ 0 - 1
lib/src/utils/dio_logging_interceptors.dart

@@ -2,7 +2,6 @@ import 'package:dio/dio.dart';
 import 'package:telnow_mobile_new/src/injector/injector.dart';
 import 'package:telnow_mobile_new/src/model/refreshtoken/refresh_token_body.dart';
 import 'package:telnow_mobile_new/src/model/token/token.dart';
-import 'package:telnow_mobile_new/src/layouts/components/template.dart';
 import 'package:telnow_mobile_new/src/storage/sharedpreferences/shared_preferences_manager.dart';
 import 'package:telnow_mobile_new/src/utils/u.dart';
 import 'package:event_bus/event_bus.dart';

+ 0 - 1
lib/src/utils/provider.dart

@@ -3,7 +3,6 @@ import 'dart:typed_data';
 
 import 'package:easy_localization/easy_localization.dart';
 import 'package:flutter/material.dart';
-import 'package:telnow_mobile_new/src/utils/U.dart';
 
 class UserModule with ChangeNotifier {
   static String _serialNumber = '';