cleanup
This commit is contained in:
parent
6e635400cd
commit
d3e9f49c09
61 changed files with 34 additions and 227 deletions
Binary file not shown.
|
|
@ -1,19 +1,13 @@
|
|||
import 'dart:convert';
|
||||
import 'dart:io';
|
||||
import 'dart:typed_data';
|
||||
|
||||
import 'package:dio/dio.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
import 'package:file_picker/file_picker.dart';
|
||||
import 'package:mnemo_cards/admin/admin_api.dart';
|
||||
import 'package:mnemo_cards/domain/router/app_router.dart';
|
||||
import 'package:mnemo_cards/features/packs/images_holder.dart';
|
||||
import 'package:mnemo_cards/widgets/game_card_widget.dart';
|
||||
import 'package:mnemo_cards/widgets/header.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
|
||||
import '../di/locator.dart';
|
||||
import '../main.dart';
|
||||
import '../widgets/image_fade.dart';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,19 +1,14 @@
|
|||
import 'dart:convert';
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:dio/dio.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_colorpicker/flutter_colorpicker.dart';
|
||||
import 'package:mnemo_cards/admin/admin_api.dart';
|
||||
import 'package:mnemo_cards/di/injector.dart';
|
||||
import 'package:mnemo_cards/managers/repository/api.dart';
|
||||
import 'package:mnemo_cards/managers/repository/dio_provider.dart';
|
||||
import 'package:mnemo_cards/utils/iterable_helper.dart';
|
||||
import 'package:mnemo_cards/utils/string_helper.dart';
|
||||
import 'package:mnemo_cards/widgets/header.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
import 'package:file_picker/file_picker.dart';
|
||||
|
||||
import '../utils/string_helper.dart';
|
||||
|
||||
import '../main.dart';
|
||||
import '../widgets/image_fade.dart';
|
||||
|
|
|
|||
|
|
@ -1,24 +1,13 @@
|
|||
import 'dart:async';
|
||||
import 'dart:convert';
|
||||
import 'dart:io';
|
||||
import 'dart:typed_data';
|
||||
|
||||
import 'package:dio/dio.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
import 'package:file_picker/file_picker.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:mnemo_cards/admin/admin_api.dart';
|
||||
import 'package:mnemo_cards/domain/router/app_router.dart';
|
||||
import 'package:mnemo_cards/features/packs/images_holder.dart';
|
||||
import 'package:mnemo_cards/utils/iterable_helper.dart';
|
||||
import 'package:mnemo_cards/widgets/game_card_widget.dart';
|
||||
import 'package:mnemo_cards/widgets/header.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
|
||||
import '../di/locator.dart';
|
||||
import '../main.dart';
|
||||
import '../widgets/image_fade.dart';
|
||||
|
||||
class EditUser {
|
||||
UserDto userDto;
|
||||
|
|
|
|||
|
|
@ -1,10 +1,6 @@
|
|||
import 'dart:convert';
|
||||
import 'dart:math';
|
||||
|
||||
import 'package:dio/dio.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:mnemo_cards/admin/add_card.dart';
|
||||
import 'package:mnemo_cards/admin/add_user.dart';
|
||||
import 'package:mnemo_cards/admin/admin_api.dart';
|
||||
import 'package:mnemo_cards/di/injector.dart';
|
||||
|
|
|
|||
|
|
@ -1,15 +1,12 @@
|
|||
import 'dart:developer';
|
||||
|
||||
import 'package:get_it/get_it.dart';
|
||||
import 'package:mnemo_cards/admin/admin_api.dart';
|
||||
import 'package:mnemo_cards/di/locator.dart';
|
||||
import 'package:mnemo_cards/features/packs/pack_cache_manager.dart';
|
||||
import 'package:mnemo_cards/features/packs/packs_api.dart';
|
||||
import 'package:mnemo_cards/flags.dart';
|
||||
import 'package:mnemo_cards/managers/favorite_cards.dart';
|
||||
import 'package:mnemo_cards/managers/repository/dio_provider.dart';
|
||||
import 'package:mnemo_cards/managers/repository/http_repository.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
|
||||
import '../features/packs/images_holder.dart';
|
||||
import '../features/packs/pack_updater.dart';
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
import 'package:firebase_analytics/firebase_analytics.dart';
|
||||
import 'package:firebase_crashlytics/firebase_crashlytics.dart';
|
||||
import 'package:mnemo_cards/managers/user_manager.dart';
|
||||
import 'package:mnemo_cards/utils/iterable_helper.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
|
||||
class Analytics {
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ import 'dart:async';
|
|||
|
||||
import 'package:rxdart/rxdart.dart';
|
||||
|
||||
import 'flip_card.dart';
|
||||
|
||||
///This controller used to call Fliping
|
||||
class FlipCardController {
|
||||
|
|
|
|||
|
|
@ -2,9 +2,7 @@ import 'dart:collection';
|
|||
import 'dart:math' as math;
|
||||
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:yandex_mobileads/mobile_ads.dart';
|
||||
|
||||
import '../../yandex_ads/yandex_ads.dart';
|
||||
import 'allowed_swipe_direction.dart';
|
||||
import 'card_animation.dart';
|
||||
import 'card_swiper_controller.dart';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
import 'dart:developer';
|
||||
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:mnemo_cards/di/locator.dart';
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ import 'dart:async';
|
|||
import 'dart:convert';
|
||||
import 'dart:developer';
|
||||
import 'dart:io';
|
||||
import 'dart:typed_data';
|
||||
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
|
|
|
|||
|
|
@ -5,9 +5,7 @@ import 'package:mnemo_cards/di/locator.dart';
|
|||
import 'package:mnemo_cards/features/packs/pack_cache_manager.dart';
|
||||
import 'package:mnemo_cards/features/packs/packs_api.dart';
|
||||
import 'package:mnemo_cards/features/packs/preview_pack_holder.dart';
|
||||
import 'package:mnemo_cards/main.dart';
|
||||
import 'package:mnemo_cards/managers/repository/repository.dart';
|
||||
import 'package:mnemo_cards/utils/iterable_helper.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
import 'package:rxdart/rxdart.dart';
|
||||
|
||||
|
|
|
|||
|
|
@ -5,7 +5,6 @@ import 'dart:developer';
|
|||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
|
||||
import 'package:rxdart/rxdart.dart';
|
||||
import 'package:shared_preferences/shared_preferences.dart';
|
||||
|
||||
import '../../main.dart';
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ import 'dart:io';
|
|||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:in_app_purchase/in_app_purchase.dart';
|
||||
import 'package:mnemo_cards/utils/iterable_helper.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
import 'package:webview_flutter/webview_flutter.dart';
|
||||
import '../../di/injector.dart';
|
||||
|
|
|
|||
|
|
@ -1,5 +1,3 @@
|
|||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:story/story.dart';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:mnemo_cards/features/stories/stories_page.dart';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,15 +1,8 @@
|
|||
import 'dart:math';
|
||||
|
||||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:mnemo_cards/flags.dart';
|
||||
import 'package:rxdart/rxdart.dart';
|
||||
|
||||
import '../../theme/themes.dart';
|
||||
|
||||
class ProgressWidget extends StatefulWidget {
|
||||
final Color color;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
import 'dart:math';
|
||||
|
||||
import 'package:freezed_annotation/freezed_annotation.dart';
|
||||
import 'package:copy_with_extension/copy_with_extension.dart';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
import 'dart:math';
|
||||
|
||||
import 'package:freezed_annotation/freezed_annotation.dart';
|
||||
import 'package:copy_with_extension/copy_with_extension.dart';
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import 'dart:async';
|
||||
import 'dart:developer';
|
||||
import 'package:collection/collection.dart';
|
||||
import 'package:collection/collection.dart' show ListEquality;
|
||||
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:mnemo_cards/features/tests/test_state_holder.dart';
|
||||
|
|
|
|||
|
|
@ -1,8 +1,5 @@
|
|||
import 'dart:developer';
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:mnemo_cards/main.dart';
|
||||
|
|
@ -64,7 +61,7 @@ class _TestPageState extends State<TestPage> {
|
|||
false) {
|
||||
AudioPlayer.playAudio((question as dynamic).audio);
|
||||
}
|
||||
} catch (e, s) {}
|
||||
} catch (e) {}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,16 +1,11 @@
|
|||
import 'dart:async';
|
||||
import 'dart:math';
|
||||
|
||||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:mnemo_cards/features/tests/progress_widget.dart';
|
||||
import 'package:rxdart/rxdart.dart';
|
||||
|
||||
import '../../di/locator.dart';
|
||||
import '../../theme/themes.dart';
|
||||
|
||||
class TestProgressWidget extends StatefulWidget {
|
||||
@override
|
||||
|
|
|
|||
|
|
@ -1,9 +1,7 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:flutter_tts/flutter_tts.dart';
|
||||
import 'package:mnemo_cards/managers/audio_player.dart';
|
||||
|
||||
import '../../../main.dart';
|
||||
import '../../../widgets/game_card_widget.dart';
|
||||
import 'test_image.dart';
|
||||
|
||||
|
|
|
|||
|
|
@ -193,7 +193,8 @@ class InputButtonsTestWidget extends StatelessWidget {
|
|||
? isCorrect
|
||||
? Colors.green.withOpacity(0.5)
|
||||
: Colors.red.withOpacity(0.5)
|
||||
: Theme.of(context).scaffoldBackgroundColor,
|
||||
: Theme.of(context)
|
||||
.scaffoldBackgroundColor,
|
||||
),
|
||||
),
|
||||
),
|
||||
|
|
|
|||
|
|
@ -2,15 +2,12 @@ import 'dart:math';
|
|||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:flutter_tts/flutter_tts.dart';
|
||||
import 'package:mnemo_cards/features/tests/test_manager.dart';
|
||||
import 'package:mnemo_cards/features/tests/test_widgets/common_test_question_widget.dart';
|
||||
import 'package:mnemo_cards/features/tests/test_widgets/test_image.dart';
|
||||
import 'package:mnemo_cards/main.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
|
||||
import '../../../di/locator.dart';
|
||||
import '../../../widgets/game_card_widget.dart';
|
||||
import '../question_states/simple_test_state.dart';
|
||||
import 'test_button.dart';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,4 @@
|
|||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:mnemo_cards/theme/themes.dart';
|
||||
|
||||
import 'test_image.dart';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,13 +1,10 @@
|
|||
import 'dart:convert';
|
||||
import 'dart:developer';
|
||||
import 'dart:math' as m;
|
||||
import 'dart:typed_data';
|
||||
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:mnemo_cards/features/packs/images_holder.dart';
|
||||
import 'package:mnemo_cards/theme/themes.dart';
|
||||
|
||||
import '../../../di/locator.dart';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import 'package:mnemo_cards/main.dart';
|
||||
|
||||
const ADMIN_BUILD = true;
|
||||
const ADMIN_BUILD = false;
|
||||
|
||||
bool get SHOW_ADMIN =>
|
||||
ADMIN_BUILD && (globalSharedPreferences.getBool('show_admin') ?? false);
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ import 'dart:async';
|
|||
import 'dart:developer';
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:auto_route/annotations.dart';
|
||||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:device_info_plus/device_info_plus.dart';
|
||||
import 'package:firebase_core/firebase_core.dart';
|
||||
|
|
@ -15,7 +14,6 @@ import 'package:flutter_secure_storage/flutter_secure_storage.dart';
|
|||
import 'package:jailbreak_root_detection/jailbreak_root_detection.dart';
|
||||
import 'package:mnemo_cards/di/locator.dart';
|
||||
import 'package:mnemo_cards/domain/router/app_router.dart';
|
||||
import 'package:mnemo_cards/managers/repository/certificates.dart';
|
||||
import 'package:mnemo_cards/managers/repository/firebase_config_repository.dart';
|
||||
import 'package:mnemo_cards/features/packs/pack_manager.dart';
|
||||
import 'package:mnemo_cards/theme/themes.dart';
|
||||
|
|
|
|||
|
|
@ -1,9 +1,6 @@
|
|||
import 'package:dio/dio.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:mnemo_cards/flags.dart';
|
||||
|
||||
import '../../main.dart';
|
||||
import 'firebase_config_repository.dart';
|
||||
|
||||
mixin Api {
|
||||
String get path =>
|
||||
|
|
|
|||
|
|
@ -1,18 +1,12 @@
|
|||
import 'dart:convert';
|
||||
import 'dart:developer';
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:dio/dio.dart';
|
||||
import 'package:dio/io.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:mnemo_cards/domain/router/app_router.gr.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
import 'package:package_info_plus/package_info_plus.dart';
|
||||
import 'package:http_certificate_pinning/http_certificate_pinning.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:collection/collection.dart';
|
||||
|
||||
import '../../di/locator.dart';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
import 'dart:convert';
|
||||
|
||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||
|
||||
|
|
|
|||
|
|
@ -58,6 +58,7 @@ class HttpRepository extends Repository with Api {
|
|||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void setAuthToken(String? authToken) {
|
||||
_dio.interceptors.add(
|
||||
InterceptorsWrapper(onRequest: (options, handler) {
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
import 'package:mnemo_cards/managers/user_manager.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
|
||||
import '../../features/purchase/in_app_purchase.dart';
|
||||
|
||||
abstract class Repository {
|
||||
Future<UserDto> get user;
|
||||
|
|
@ -15,11 +14,14 @@ abstract class Repository {
|
|||
Future<(UserDto, String)> createOrGetUser(
|
||||
String externalId,
|
||||
ExternalIdType idType,
|
||||
String name,
|
||||
String? name,
|
||||
);
|
||||
|
||||
Future<UserDto?> getUser();
|
||||
|
||||
|
||||
void setAuthToken(String? authToken);
|
||||
|
||||
Future<void> updateUserData(UserDataDto data);
|
||||
|
||||
Future<void> updateUserSettings(UserSettingsDto settings);
|
||||
|
|
|
|||
|
|
@ -1,10 +1,8 @@
|
|||
import 'dart:async';
|
||||
import 'dart:convert';
|
||||
import 'dart:developer';
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:dio/dio.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:google_sign_in/google_sign_in.dart';
|
||||
import 'package:mnemo_cards/di/locator.dart';
|
||||
import 'package:mnemo_cards/main.dart';
|
||||
|
|
@ -12,10 +10,8 @@ import 'package:mnemo_cards/managers/repository/http_repository.dart';
|
|||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
import 'package:rxdart/rxdart.dart';
|
||||
import 'package:shared_preferences/shared_preferences.dart';
|
||||
import 'package:device_info_plus/device_info_plus.dart';
|
||||
|
||||
import '../domain/router/app_router.dart';
|
||||
import '../domain/router/app_router.gr.dart';
|
||||
import '../features/analytics/analytics.dart';
|
||||
import 'user_state_holder.dart';
|
||||
|
||||
|
|
@ -27,7 +23,9 @@ class UserManager {
|
|||
'email',
|
||||
// 'https://www.googleapis.com/auth/contacts.readonly',
|
||||
],
|
||||
// clientId: '01767851968-dvbvmte4m90dkqitp013s4nd5c0df1n8.apps.googleusercontent.com',
|
||||
clientId: kIsWeb
|
||||
? '701767851968-bud97rud1d9qtqju96addn31nhm0oofu.apps.googleusercontent.com'
|
||||
: null,
|
||||
// "701767851968-bud97rud1d9qtqju96addn31nhm0oofu.apps.googleusercontent.com",
|
||||
);
|
||||
|
||||
|
|
@ -41,11 +39,15 @@ class UserManager {
|
|||
int? get userId => userStateHolder.user?.id;
|
||||
|
||||
Future<void> login() async {
|
||||
if (await _googleSignIn.isSignedIn()) {
|
||||
await _googleSignIn.signOut();
|
||||
try {
|
||||
if (await _googleSignIn.isSignedIn()) {
|
||||
await _googleSignIn.signOut();
|
||||
}
|
||||
final account = await _googleSignIn.signIn();
|
||||
await Future.delayed(Duration(milliseconds: 300));
|
||||
} catch (e, s) {
|
||||
log('Error in login', error: e, stackTrace: s);
|
||||
}
|
||||
final account = await _googleSignIn.signIn();
|
||||
await Future.delayed(Duration(milliseconds: 300));
|
||||
}
|
||||
|
||||
Future<void> logout() async {
|
||||
|
|
|
|||
|
|
@ -1,14 +1,11 @@
|
|||
import 'package:auto_route/annotations.dart';
|
||||
import 'package:flutter/gestures.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:mnemo_cards/di/locator.dart';
|
||||
import 'package:mnemo_cards/flags.dart';
|
||||
import 'package:mnemo_cards/widgets/header.dart';
|
||||
import 'package:url_launcher/url_launcher.dart';
|
||||
|
||||
import '../main.dart';
|
||||
import '../theme/themes.dart';
|
||||
import '../widgets/shared_pref_button.dart';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:mnemo_cards/di/locator.dart';
|
||||
|
||||
import '../widgets/packs_menu_widget.dart';
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
import 'dart:io';
|
||||
|
||||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:mnemo_cards/domain/router/app_router.dart';
|
||||
|
|
@ -9,7 +8,6 @@ import 'package:mnemo_cards/domain/router/app_router.gr.dart';
|
|||
import 'package:mnemo_cards/flags.dart';
|
||||
import 'package:mnemo_cards/main.dart';
|
||||
import 'package:mnemo_cards/widgets/header.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
import 'package:shared_preferences/shared_preferences.dart';
|
||||
import 'package:url_launcher/url_launcher.dart';
|
||||
|
||||
|
|
@ -22,10 +20,6 @@ import '../widgets/big_back_button.dart';
|
|||
import '../widgets/enter_promo_code_widget.dart';
|
||||
import '../widgets/shared_pref_button.dart';
|
||||
import '../widgets/simple_tile.dart';
|
||||
import '../widgets/slider.dart';
|
||||
import '../widgets/switch_button.dart';
|
||||
import '../widgets/switch_tile.dart';
|
||||
import '../widgets/text_button.dart';
|
||||
import '../widgets/user_statistics.dart';
|
||||
|
||||
@RoutePage()
|
||||
|
|
|
|||
|
|
@ -1,30 +1,22 @@
|
|||
import 'dart:io';
|
||||
|
||||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:mnemo_cards/domain/router/app_router.dart';
|
||||
import 'package:mnemo_cards/flags.dart';
|
||||
import 'package:mnemo_cards/widgets/header.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
import 'package:shared_preferences/shared_preferences.dart';
|
||||
import 'package:url_launcher/url_launcher.dart';
|
||||
|
||||
import '../admin/all_cards.dart';
|
||||
import '../admin/all_users.dart';
|
||||
import '../di/locator.dart';
|
||||
import '../features/analytics/analytics.dart';
|
||||
import '../theme/themes.dart';
|
||||
import '../widgets/big_back_button.dart';
|
||||
import '../widgets/enter_promo_code_widget.dart';
|
||||
import '../widgets/shared_pref_button.dart';
|
||||
import '../widgets/simple_tile.dart';
|
||||
import '../widgets/slider.dart';
|
||||
import '../widgets/switch_button.dart';
|
||||
import '../widgets/switch_tile.dart';
|
||||
import '../widgets/text_button.dart';
|
||||
import '../widgets/user_statistics.dart';
|
||||
|
||||
@RoutePage()
|
||||
class SettingsPage extends StatelessWidget {
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ final theme2 = ThemeData(
|
|||
secondaryContainer: Colors.grey,
|
||||
primary: MaterialColor(0xFF000000, color),
|
||||
surface: MaterialColor(0xFFFFFFFF, colorWhite),
|
||||
surfaceVariant: MaterialColor(0xFFFFFFFF, colorWhite),
|
||||
surfaceContainerHighest: MaterialColor(0xFFFFFFFF, colorWhite),
|
||||
onSurface: Colors.black,
|
||||
),
|
||||
|
||||
|
|
|
|||
|
|
@ -1,61 +0,0 @@
|
|||
import 'dart:math';
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
extension IterableHelper<T> on Iterable<T> {
|
||||
T? firstWhereOrNull(bool Function(T) test) => where(test).firstOrNull;
|
||||
}
|
||||
|
||||
extension NullableIterableHelper<T> on Iterable<T?> {
|
||||
Iterable<T> whereNotNull() => where((element) => element != null).cast();
|
||||
}
|
||||
|
||||
extension ListHelper<T> on List<T> {
|
||||
// List<T> shuffle([int? seed]) {
|
||||
// Random r = Random(seed);
|
||||
// var items = [...this];
|
||||
// for (var i = length - 1; i > 0; i--) {
|
||||
// var n = r.nextInt(i + 1);
|
||||
//
|
||||
// var temp = items[i];
|
||||
// items[i] = items[n];
|
||||
// items[n] = temp;
|
||||
// }
|
||||
//
|
||||
// return items;
|
||||
// }
|
||||
|
||||
void move(int from, int to) {
|
||||
RangeError.checkValidIndex(from, this, "from", length);
|
||||
RangeError.checkValidIndex(to, this, "to", length);
|
||||
var element = this[from];
|
||||
if (from < to) {
|
||||
this.setRange(from, to, this, from + 1);
|
||||
} else {
|
||||
this.setRange(to + 1, from + 1, this, to);
|
||||
}
|
||||
this[to] = element;
|
||||
}
|
||||
|
||||
void sortInOrder<P>(List<P> order, P valueGetter(T v)) => sort((p, n) {
|
||||
final pVal = valueGetter(p);
|
||||
final nVal = valueGetter(n);
|
||||
final pIndex = order.indexOf(pVal);
|
||||
final nIndex = order.indexOf(nVal);
|
||||
if (pIndex == -1) {
|
||||
return nIndex == -1
|
||||
? () {
|
||||
if (pVal is num) {
|
||||
return pVal.compareTo(nVal as num);
|
||||
} else if (pVal is String) {
|
||||
return pVal.compareTo(nVal as String);
|
||||
}
|
||||
return pVal.toString().compareTo(nVal.toString());
|
||||
}.call()
|
||||
: 1;
|
||||
} else if (nIndex == -1) {
|
||||
return -1;
|
||||
}
|
||||
return pIndex.compareTo(nIndex);
|
||||
});
|
||||
}
|
||||
|
|
@ -1,4 +1,5 @@
|
|||
import 'package:flutter/material.dart';
|
||||
|
||||
import 'dart:ui';
|
||||
|
||||
extension StringHelper on String {
|
||||
String get capitalize =>
|
||||
|
|
@ -19,6 +20,6 @@ extension StringHelper on String {
|
|||
return '0x$this'.asColor;
|
||||
}
|
||||
}
|
||||
return Colors.white;
|
||||
return Color(0xffffffff);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:mnemo_cards/main.dart';
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:mnemo_cards/utils/string_helper.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
|
||||
import '../../features/card_swiper/src/card_swiper_controller.dart';
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
import 'dart:math';
|
||||
|
||||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:mnemo_cards/features/packs/images_holder.dart';
|
||||
import 'package:mnemo_cards/utils/color_helper.dart';
|
||||
|
|
@ -11,7 +10,6 @@ import '../../features/card_flipper/flip_card_controllers.dart';
|
|||
import '../../features/card_swiper/src/allowed_swipe_direction.dart';
|
||||
import '../../features/card_swiper/src/card_swiper.dart';
|
||||
import '../../features/card_swiper/src/card_swiper_controller.dart';
|
||||
import '../../features/card_swiper/src/enums.dart';
|
||||
import '../../main.dart';
|
||||
import '../game_card_widget.dart';
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,6 @@ import 'package:mnemo_cards/managers/audio_player.dart';
|
|||
import 'package:mnemo_cards/theme/themes.dart';
|
||||
import 'package:mnemo_cards/utils/color_helper.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
import 'package:rxdart/rxdart.dart';
|
||||
import '../../di/locator.dart';
|
||||
import '../../features/card_flipper/flip_card_controllers.dart';
|
||||
import '../../features/card_swiper/flutter_card_swiper.dart';
|
||||
|
|
|
|||
|
|
@ -1,16 +1,12 @@
|
|||
import 'dart:math';
|
||||
|
||||
import 'package:collection/collection.dart';
|
||||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:mnemo_cards/main.dart';
|
||||
import 'package:mnemo_cards/utils/iterable_helper.dart';
|
||||
import 'package:mnemo_cards/widgets/fade_in_widget.dart';
|
||||
import 'package:mnemo_cards/widgets/feedback_builder.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
import 'package:reorderables/reorderables.dart';
|
||||
import 'package:yandex_mobileads/mobile_ads.dart';
|
||||
import '../../domain/router/app_router.gr.dart';
|
||||
import '../../features/analytics/analytics.dart';
|
||||
|
|
@ -289,7 +285,7 @@ class _Button extends StatelessWidget {
|
|||
final String asset;
|
||||
final VoidCallback onTap;
|
||||
|
||||
_Button(this.asset, this.onTap, {super.key});
|
||||
_Button(this.asset, this.onTap);
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
|
|
@ -368,7 +364,6 @@ class _TestButton extends StatelessWidget {
|
|||
this.time,
|
||||
this.timeSubtitle,
|
||||
this.stats,
|
||||
super.key,
|
||||
});
|
||||
|
||||
@override
|
||||
|
|
|
|||
|
|
@ -1,14 +1,10 @@
|
|||
import 'dart:convert';
|
||||
import 'dart:developer';
|
||||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:mnemo_cards/utils/string_helper.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
import '../../di/injector.dart';
|
||||
import '../../features/analytics/analytics.dart';
|
||||
import '../../features/packs/pack_holder.dart';
|
||||
import '../../main.dart';
|
||||
import '../items/builder.dart';
|
||||
|
||||
|
|
@ -16,7 +12,6 @@ import '../../di/locator.dart';
|
|||
import '../../domain/router/app_router.dart';
|
||||
import '../../theme/themes.dart';
|
||||
import 'card_pack_header.dart';
|
||||
import 'loading_pack.dart';
|
||||
|
||||
class BuyPack extends StatelessWidget {
|
||||
final CardPackBuyDto dto;
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:mnemo_cards/utils/color_helper.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
import 'package:mnemo_cards/utils/string_helper.dart';
|
||||
import '../header.dart';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
import 'dart:async';
|
||||
|
||||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
|
@ -6,11 +5,9 @@ import 'package:flutter/widgets.dart';
|
|||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:mnemo_cards/features/packs/images_holder.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
import 'package:collection/collection.dart';
|
||||
import 'package:reorderables/reorderables.dart';
|
||||
import 'package:rxdart/rxdart.dart';
|
||||
|
||||
import '../../di/locator.dart';
|
||||
import '../../utils/string_helper.dart';
|
||||
import '../../domain/router/app_router.gr.dart';
|
||||
import '../../main.dart';
|
||||
|
|
|
|||
|
|
@ -2,9 +2,7 @@ import 'dart:async';
|
|||
import 'dart:math';
|
||||
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:mnemo_cards/features/packs/images_holder.dart';
|
||||
import 'package:mnemo_cards/main.dart';
|
||||
import 'package:mnemo_cards/utils/iterable_helper.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
import 'package:rxdart/rxdart.dart';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:mnemo_cards/di/locator.dart';
|
||||
|
|
|
|||
|
|
@ -1,16 +1,12 @@
|
|||
import 'dart:math';
|
||||
import 'dart:ui';
|
||||
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:mnemo_cards/di/locator.dart';
|
||||
import 'package:mnemo_cards/features/yandex_ads/yandex_ads.dart';
|
||||
import 'package:flutter/painting.dart';
|
||||
import 'package:mnemo_cards/managers/audio_player.dart';
|
||||
import 'package:mnemo_cards/utils/color_helper.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
import 'package:shared_preferences/shared_preferences.dart';
|
||||
import 'package:yandex_mobileads/mobile_ads.dart';
|
||||
|
||||
import '../features/card_flipper/flip_card.dart';
|
||||
|
|
|
|||
|
|
@ -1,9 +1,7 @@
|
|||
import 'dart:math';
|
||||
|
||||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
|
||||
class Header extends StatelessWidget {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
import 'package:auto_size_text/auto_size_text.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:mnemo_cards/utils/string_helper.dart';
|
||||
|
||||
|
|
|
|||
|
|
@ -2,26 +2,18 @@ import 'dart:convert';
|
|||
import 'dart:developer';
|
||||
|
||||
import 'package:auto_route/auto_route.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:mnemo_cards/features/packs/pack_manager.dart';
|
||||
import 'package:mnemo_cards/managers/user_state_holder.dart';
|
||||
import 'package:mnemo_cards/utils/string_helper.dart';
|
||||
import 'package:mnemo_cards/widgets/header.dart';
|
||||
import 'package:mnemo_cards/widgets/shared_pref_button.dart';
|
||||
import 'package:mnemo_cards_common/mnemo_cards_common.dart';
|
||||
import 'package:shimmer/shimmer.dart';
|
||||
|
||||
import '../admin/add_package.dart';
|
||||
import '../di/locator.dart';
|
||||
import '../domain/router/app_router.dart';
|
||||
import '../domain/router/app_router.gr.dart';
|
||||
import '../flags.dart';
|
||||
import '../managers/repository/repository.dart';
|
||||
import '../theme/themes.dart';
|
||||
import 'package:collection/collection.dart';
|
||||
|
||||
class PacksMenuWidget extends StatefulWidget {
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:mnemo_cards/theme/themes.dart';
|
||||
import 'package:mnemo_cards/widgets/switch_button.dart';
|
||||
|
||||
class SimpleTile extends StatelessWidget {
|
||||
final Widget? trail;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:mnemo_cards/theme/themes.dart';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:mnemo_cards/theme/themes.dart';
|
||||
import 'package:mnemo_cards/widgets/switch_button.dart';
|
||||
|
||||
class SwitchTile extends StatelessWidget {
|
||||
|
|
|
|||
|
|
@ -218,7 +218,7 @@ packages:
|
|||
source: hosted
|
||||
version: "4.10.0"
|
||||
collection:
|
||||
dependency: transitive
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: collection
|
||||
sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a
|
||||
|
|
@ -234,7 +234,7 @@ packages:
|
|||
source: hosted
|
||||
version: "3.1.1"
|
||||
copy_with_extension:
|
||||
dependency: transitive
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: copy_with_extension
|
||||
sha256: fbcf890b0c34aedf0894f91a11a579994b61b4e04080204656b582708b5b1125
|
||||
|
|
@ -569,7 +569,7 @@ packages:
|
|||
source: hosted
|
||||
version: "2.5.2"
|
||||
freezed_annotation:
|
||||
dependency: transitive
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: freezed_annotation
|
||||
sha256: c3fd9336eb55a38cc1bbd79ab17573113a8deccd0ecbbf926cca3c62803b5c2d
|
||||
|
|
|
|||
|
|
@ -62,6 +62,9 @@ dependencies:
|
|||
# requests_inspector: ^4.0.3
|
||||
|
||||
|
||||
collection: any
|
||||
freezed_annotation: any
|
||||
copy_with_extension: any
|
||||
dev_dependencies:
|
||||
flutter_test:
|
||||
sdk: flutter
|
||||
|
|
|
|||
Loading…
Reference in a new issue