feat : first step request tagging

This commit is contained in:
2025-08-04 15:31:34 +03:30
parent 7a3061d9a4
commit 2c10800ce7
27 changed files with 1044 additions and 168 deletions

View File

@@ -8,6 +8,7 @@ export 'package:dio/dio.dart';
export 'package:flutter_localizations/flutter_localizations.dart';
export 'package:flutter_map/flutter_map.dart';
export 'package:flutter_map_animations/flutter_map_animations.dart';
export 'package:flutter_map_marker_cluster/flutter_map_marker_cluster.dart';
export 'package:flutter_rating_bar/flutter_rating_bar.dart';
export 'package:flutter_screenutil/flutter_screenutil.dart';
export 'package:flutter_secure_storage/flutter_secure_storage.dart';
@@ -21,6 +22,7 @@ export 'package:get/get.dart' hide FormData, MultipartFile, Response;
export 'package:get_it/get_it.dart';
//local storage
export 'package:hive_ce_flutter/hive_flutter.dart';
export 'package:image_cropper/image_cropper.dart';
///image picker
export 'package:image_picker/image_picker.dart';
//encryption
@@ -36,7 +38,6 @@ export 'package:pretty_dio_logger/pretty_dio_logger.dart';
export 'package:rasadyar_core/presentation/common/common.dart';
export 'package:rasadyar_core/presentation/utils/utils.dart';
export 'package:rasadyar_core/presentation/widget/widget.dart';
export 'package:flutter_map_marker_cluster/flutter_map_marker_cluster.dart';
//models
export 'data/model/model.dart';
@@ -57,5 +58,4 @@ export 'utils/map_utils.dart';
export 'utils/network/network.dart';
export 'utils/route_utils.dart';
export 'utils/separator_input_formatter.dart';
export 'utils/utils.dart';

View File

@@ -10,7 +10,7 @@ class AppInterceptor extends Interceptor {
final RefreshTokenCallback? refreshTokenCallback;
final SaveTokenCallback saveTokenCallback;
final ClearTokenCallback clearTokenCallback;
late final Dio dio;
late Dio dio;
dynamic authArguments;
static Completer<String?>? _refreshCompleter;
static bool _isRefreshing = false;
@@ -44,7 +44,7 @@ class AppInterceptor extends Interceptor {
@override
Future<void> onError(DioException err, ErrorInterceptorHandler handler) async {
if (err.response?.statusCode == 401) {
if (err.response?.statusCode == 401 && err.response?.data['detail'] != "No active account found with the given credentials") {
final retryResult = await _handleUnauthorizedError(err);
if (retryResult != null) {
handler.resolve(retryResult);
@@ -104,6 +104,7 @@ class AppInterceptor extends Interceptor {
return dio.fetch(newOptions);
}
//TODO
void _handleRefreshFailure() {
ApiHandler.cancelAllRequests("Token refresh failed");

View File

@@ -12,6 +12,7 @@ class DioRemote implements IHttpClient {
Future<void> init() async {
dio = Dio(BaseOptions(baseUrl: baseUrl ?? ''));
if (interceptors != null) {
interceptors!.dio = dio;
dio.interceptors.add(interceptors!);
}

View File

@@ -725,6 +725,30 @@ packages:
url: "https://pub.dev"
source: hosted
version: "4.5.4"
image_cropper:
dependency: "direct main"
description:
name: image_cropper
sha256: "4e9c96c029eb5a23798da1b6af39787f964da6ffc78fd8447c140542a9f7c6fc"
url: "https://pub.dev"
source: hosted
version: "9.1.0"
image_cropper_for_web:
dependency: transitive
description:
name: image_cropper_for_web
sha256: fd81ebe36f636576094377aab32673c4e5d1609b32dec16fad98d2b71f1250a9
url: "https://pub.dev"
source: hosted
version: "6.1.0"
image_cropper_platform_interface:
dependency: transitive
description:
name: image_cropper_platform_interface
sha256: "6ca6b81769abff9a4dcc3bbd3d75f5dfa9de6b870ae9613c8cd237333a4283af"
url: "https://pub.dev"
source: hosted
version: "7.1.0"
image_picker:
dependency: "direct main"
description:

View File

@@ -18,7 +18,7 @@ dependencies:
##image_picker
image_picker: ^1.1.2
image_cropper: ^9.1.0
#UI
cupertino_icons: ^1.0.8